MCPSERV.CLUB
ambar

simctl MCP Server

MCP Server

Control iOS Simulators via Model Context Protocol

Active(75)
12stars
1views
Updated 28 days ago

About

A lightweight MCP server that uses simctl to manage iOS simulator devices, apps, permissions, and system features. It enables automated testing workflows by exposing a unified interface for device and app manipulation.

Capabilities

Resources
Access data sources
Tools
Execute functions
Prompts
Pre-built templates
Sampling
AI model interactions

Simctl MCP in Action

Overview

The simctl‑mcp server bridges the gap between AI assistants and iOS simulator environments, providing a Model Context Protocol (MCP) interface that exposes the full range of iOS Simulator control commands. Instead of writing shell scripts or manually invoking , developers can query the simulator state, manage devices, and manipulate apps through natural language prompts or structured MCP calls. This capability is particularly valuable for AI‑driven workflows such as automated testing, continuous integration pipelines, or conversational debugging sessions where the assistant can directly orchestrate simulator actions without leaving its context.

At its core, the server implements a comprehensive set of tools that mirror the native command suite. It can create, delete, boot, and shutdown simulator devices; list available device types and runtimes; install, uninstall, launch, and terminate apps; and retrieve detailed app information. Beyond basic device and app management, the server also handles system‑level interactions: opening URLs, adding media files, setting environment variables or appearance modes, and sending simulated push notifications. Security features are included as well—root and regular certificates can be added, and the keychain reset to ensure a clean state for each session. Clipboard operations and screenshot capture round out the media handling capabilities, enabling full end‑to‑end interaction with simulator content.

The MCP server is designed for seamless integration into AI workflows. In STDIO mode, the server communicates over standard input/output, making it ideal for embedding within an AI assistant’s execution pipeline. HTTP server mode exposes the same functionality over a local network, allowing multiple assistants or services to issue requests concurrently. Prompts such as “What is the bundle ID of the Settings app?” or “Generate an Appium connection string for the Settings app” illustrate how natural language can be translated into precise simulator actions, enabling developers to ask high‑level questions while the server handles the low‑level command execution.

Real‑world use cases include automated UI testing where an AI assistant can spin up a fresh simulator, install the test build, run scenarios, and report results without manual intervention. In continuous integration environments, the server can be invoked as a step to prepare test devices, inject certificates, or reset state between runs. For exploratory debugging, developers can ask the assistant to open a URL, take a screenshot, or modify app permissions on the fly, streamlining what would otherwise be tedious command‑line work.

Unique Advantages

  • Unified Interface: One MCP server exposes all simulator operations, eliminating the need for multiple tooling layers.
  • AI‑Friendly Prompts: The server’s prompt examples demonstrate how natural language queries map to simulator actions, fostering a conversational development experience.
  • Dual Communication Modes: STDIO for tight integration with assistants and HTTP for distributed, concurrent access.
  • Security & Clean State: Built‑in certificate management and keychain reset ensure reproducible test environments.

By encapsulating iOS simulator control within the MCP framework, simctl‑mcp empowers AI assistants to act as full‑featured test harnesses and development helpers, dramatically reducing friction in mobile app workflows.