simctl-mcp
About
# simctl-mcp A Model Context Protocol server implementation for iOS Simulator control. [](https://archestra.ai/mcp-catalog/ambar__simctl-mcp) [![Install MCP…
Details
- Author
- ambar
- GitHub stars
- 20
- Downloads
- 139
- Categories
- Other
Jump to
- Device management: create, delete, boot, shutdown, and list devices, types, and runtimes
- App management: install, uninstall, launch, terminate, and inspect apps
- App permissions: grant, revoke, and reset permissions for installed apps
- System features: open URLs, add media, manage environment variables and appearance
- Certificate & security: add root/regular certificates, reset keychain
- Media & content: take screenshots, get/set pasteboard content, send simulated push notifications
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
simctl-mcpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Run npx -y simctl-mcp (STDIO mode) or npx simctl-mcp --http (HTTP mode, default port 8081). Add the JSON configuration to .cursor/mcp.json or .vscode/mcp.json to register the server with compatible clients.
create_device
Create a new simulator device
delete_device
Delete the specified simulator device
boot_device
Boot simulator device
shutdown_device
Shutdown simulator device
get_env
Get device environment variable
open_url
Open URL in device
add_media
Add media files to device
install_app
Install app on device
uninstall_app
Uninstall app from device
get_app_container
Get installed app container path
launch_app
Launch app on device
terminate_app
Terminate running app on device
list_devices
List available simulator devices
list_device_types
List available device types
list_runtimes
List available runtimes
get_app_info
Get installed app information
get_appearance
Get device appearance settings
set_appearance
Set device appearance
push_notification
Send simulated push notification to device
grant_permission
Grant permission to app
revoke_permission
Revoke app permission
reset_permission
Reset all app permissions
add_root_certificate
Add root certificate to device keychain
add_certificate
Add certificate to device keychain
reset_keychain
Reset device keychain
get_screenshot
Get device screenshot
list_apps
List installed apps on device
set_pasteboard
Copy content to the device pasteboard
get_pasteboard
Get the contents of the device pasteboard
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"simctl-mcp": {
"simctl-mcp": {
"command": "npx",
"args": [
"-y",
"simctl-mcp"
]
}
}
}
}
McpServers
{
"simctl-mcp": {
"command": "npx",
"args": [
"-y",
"simctl-mcp"
]
}
}
simctl-mcp
A Model Context Protocol server implementation for iOS Simulator control.
Config
.cursor/mcp.json or .vscode/mcp.json:
{
"mcpServers": {
"simctl-mcp": {
"command": "npx",
"args": ["-y", "simctl-mcp"]
}
}
}
Prompts
Some examples of prompts:
- What operations does the simulator support?
- Open shortcuts://
- What is the bundle ID of the "Settings" app?
- Set clipboard content to: Hello
- What is the simulator SDK version?
- Generate an Appium connection string for the "Settings" app
Usage
The server can be started in two modes:
1. STDIO Mode (default)
2. HTTP Server Mode
STDIO Mode
In STDIO mode, the server communicates through standard input/output streams.
npx simctl-mcp
HTTP Server Mode
In HTTP server mode, the server listens for HTTP connections on a specified port.
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



