simctl-mcp について
simctl-mcp は iOS Simulator を制御する MCP サーバーで、npx で起動し、STDIO または HTTP モードで実行できます。シミュレーター上でデバイス、アプリ、システムの操作を行う開発者を対象としています。
主な機能
- 01デバイスの作成、起動、シャットダウン、削除
- 02アプリのインストール、起動、終了、情報取得
- 03アプリ権限の付与、取り消し、リセット
- 04URL を開く、外観の切り替え、環境変数の設定
- 05スクリーンショットとクリップボードの読み書き
活用シーン
- 01Cursor や VS Code から自然言語でシミュレーターを管理
- 02アプリのインストールと権限設定の自動化
- 03アプリの Bundle ID の確認や Appium 接続文字列の生成
MCP 対応
本プロジェクトは MCP サーバーであり、デバイス管理、アプリ管理、スクリーンショットなどの iOS Simulator 制御ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
29掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| name | string | はい | デバイス名 |
| runtime | string | はい | ランタイムバージョン |
| deviceType | string | はい | デバイスタイプ |
詳細
simctl-mcp
iOS Simulator を制御する Model Context Protocol サーバーの実装です。
設定
.cursor/mcp.json または .vscode/mcp.json:
{
"mcpServers": {
"simctl-mcp": {
"command": "npx",
"args": ["-y", "simctl-mcp"]
}
}
}
プロンプト
プロンプトの例:
- シミュレーターではどのような操作ができますか?
- shortcuts:// を開く
- 「設定」アプリのバンドル ID は何ですか?
- クリップボードの内容を Hello に設定する
- シミュレーターの SDK バージョンは何ですか?
- 「設定」アプリの Appium 接続文字列を生成する
使用方法
サーバーは次の 2 つのモードで起動できます。
- STDIO モード(デフォルト)
- HTTP サーバーモード
STDIO モード
STDIO モードでは、サーバーは標準入出力ストリームを介して通信します。
npx simctl-mcp
HTTP サーバーモード
HTTP サーバーモードでは、サーバーは指定したポートで HTTP 接続を待ち受けます。
# Start with default port (8081)
npx simctl-mcp --http
# Start with custom port using --port flag
npx simctl-mcp --http --port 3000
# Start with custom port using environment variable
PORT=3000 npx simctl-mcp --http
ツール
デバイス管理:
- 新しいシミュレーターデバイスを作成
- 既存のデバイスを削除
- デバイスを起動
- デバイスをシャットダウン
- 利用可能なすべてのデバイスを一覧表示
- 利用可能なデバイスタイプを一覧表示
- 利用可能なランタイムを一覧表示
アプリ管理:
- アプリをインストール
- アプリをアンインストール
- アプリを起動
- 実行中のアプリを終了
- アプリのコンテナパスを取得
- アプリ情報を取得
- インストール済みアプリを一覧表示
アプリの権限:
- アプリに権限を付与
- アプリの権限を取り消し
- すべてのアプリ権限をリセット
システム機能:
- シミュレーターで URL を開く
- メディアファイルを追加
- 環境変数を取得/設定
- 外観(ライト/ダークモード)を取得/設定
- シミュレートしたプッシュ通知を送信
証明書とセキュリティ:
- ルート証明書を追加
- 通常の証明書を追加
- キーチェーンをリセット
メディアとコンテンツ:
- スクリーンショットを撮影
- ペーストボードの内容(クリップボード)を取得/設定
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。