Skip to main content
Glama
Lakr233
by Lakr233

iPhone MCP Server

A Model Context Protocol (MCP) server for automating iPhone tasks with Appium. Supports app control, UI interactions, and screenshot capture via streamable HTTP.

Screenshot on Cherry Studio

We recommend Cherry Studio as an MCP client for iPhone automation.

Features

  • Retrieve device info and list installed apps

  • Capture screenshots (JPEG, around 500KB)

  • List UI elements and perform touch operations

  • Launch or switch apps using bundle IDs

  • Optimized XML output to minimize token usage

Related MCP server: iOS Device Control MCP Server

Installation

Prerequisites

  • Python 3.8 or later

  • Node.js and npm

  • iPhone with UDID

  • Xcode

Steps

  1. Clone the repo: git clone https://github.com/Lakr233/iphone-mcp.git && cd iphone-mcp

  2. Set up virtual environment: python -m venv .venv && source .venv/bin/activate

  3. Install dependencies: pip install -r requirements.txt

  4. Install Appium: npm install -g appium && appium driver install xcuitest

  5. Set up WebDriver Agent: Follow the WebDriver Agent Guide

  6. Configure: Edit start.sh with your DEVICE_UDID

Usage

Run ./start.sh to start Appium and the MCP server. Access it at http://127.0.0.1:8765/mcp with default settings.

Tools

  • iphone_device_info: Get device details

  • iphone_device_apps: List installed apps

  • iphone_interface_snapshot: Capture screenshot and XML

  • iphone_interface_elements: List UI elements

  • iphone_operate_click: Perform tap

  • iphone_operate_swipe: Perform swipe

  • iphone_operate_text_input: Input text

  • iphone_operate_app_launch: Launch app

  • iphone_operate_get_current_bundle_id: Get current bundle ID

Configuration

Set environment variables in start.sh (defaults in src/utils.py):

  • DEVICE_UDID (required)

  • APPIUM_HOST/PORT

  • SERVER_HOST/PORT/PATH

  • LOG_LEVEL

Development

  • Run tests: pytest

  • Code style: Python 3.8+ with type hints

Contributing

Fork the repo, create a branch, and submit a pull request. Report bugs or suggest features via issues.

License

MIT

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    A
    maintenance
    Enables AI assistants to automate mobile app testing and development for iOS and Android through natural language interactions. Supports intelligent element identification, session management, automated test generation, and comprehensive device interactions including clicks, swipes, screenshots, and app management.
    Last updated
    12,078
    443
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to control mobile and desktop devices with natural language, including running automation tasks, taking screenshots, and managing devices.
    Last updated
    6
    5
    MIT

View all related MCP servers

Related MCP Connectors

  • Push notifications for AI agents - send instant iPhone notifications from any MCP client.

  • Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…

  • Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Lakr233/iphone-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server