mcpField
X
Xcode: MCP Bridge Wrapper for Cursor

Xcode: MCP Bridge Wrapper for Cursor

ローカル
github.com開発ツール205 週間前に更新

Xcode: MCP Bridge Wrapper for Cursor について

Xcode MCP Bridge Wrapper は、Apple の xcrun mcpbridge を経由して外部 MCP クライアントを Xcode に接続する Python パッケージです。structuredContent が欠けている Xcode のツール応答を補完し、Cursor などの厳格なクライアントでも利用できるようにします。broker モードでは、複数のクライアントが一つの永続的な Xcode 接続を共有できます。

主な機能

  1. 01outputSchema を宣言しつつ structuredContent を欠く応答の修復
  2. 02直接モードと共有 broker モードの対応
  3. 03複数クライアント間での Xcode 接続の共有
  4. 04インストール済みの Xcode が返すツール一覧の提供

活用シーン

  1. 01Cursor、Codex、Zed、Claude Code から Xcode ツールを呼び出す
  2. 02複数の MCP クライアントで一つの Xcode 接続を共有する
  3. 03Xcode 27.0 でツール検出と承認状態を確認する

MCP 対応

本プロジェクトは、Xcode 付属の MCP ブリッジを外部 MCP クライアントに公開し、その応答形式を補正するラッパー MCP サーバーです。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"soundblaster-xcode-mcpbridge-wrapper": {
"command": "uvx",
"args": [
"mcpbridge-wrapper"
]
}
}
}
起動コマンドuvx mcpbridge-wrapper

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimcpbridge-wrapper0.5.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Xcode MCP Bridge Wrapper

Version

Python 3.9+ License: MIT

mcpbridge-wrapper は、Apple の xcrun mcpbridge を通じて外部 MCP クライアントを Xcode に接続します。outputSchema を宣言しているものの structuredContent がない Xcode ツールのレスポンスを修復します。この修復は、ダイレクトモードと ブローカーモードの両方で機能します。ブローカーモードでは、複数のクライアントで 1 つの永続的な Xcode 接続を共有できるため、接続プロンプトの繰り返しを減らせます。

互換性

コンポーネント0.5.0 でのサポート
XcodemacOS 上の 26.3 以降および 27.0。Xcode 27.0 のハンドシェイクとツール検出を検証済み
MCP クライアントinitialize ライフサイクルを使用するクライアント。お使いのクライアントバージョンで使用されるプロトコルをご確認ください
MCP 2026-07-280.5.0 ではサポートされていません。セッションレス実装は別ブランチで引き続き実験段階です
Python3.9-3.12。uvx が独自の環境を管理します

このラッパーには Xcode ツールは同梱されていません。インストール済みの Xcode から返されるカタログを公開するため、ツール名や利用可能なツールは Xcode のアップデートや権限によって変わる場合があります。ビルド 27A266a で確認された Xcode 27.0 のカタログは以下に記載されています。

クイックスタート

  1. uv と Xcode 26.3 以降をインストールします。Xcode 27.0 もサポートされています。
  2. Xcode > Settings > Intelligence > Model Context Protocol で、 Allow external agents to use Xcode tools を有効にします。使用するプロジェクトを Xcode で開きます。 Apple のセットアップガイドを参照してください。
  3. 以下のクライアント設定のいずれかを追加します。今後メジャーリリースが公開された場合も従来の MCP 契約を維持できるよう、0.5.0 に固定してください。
  4. クライアントを起動し、表示された場合は Xcode アクセスプロンプトを承認します。承認後、 クライアントで MCP サーバーを再読み込みするか再接続して、tools/list を再取得してから、 実際の Xcode ツール呼び出しで動作を確認します。MCP のインジケーターが緑色になっただけでは、 ハンドシェイクが確認できただけです。

複数のクライアントを使用する場合は、ブローカーモードをおすすめします。すべての例で、ユーザーごとに 1 つのデーモンを使用します。最初のクライアントがデーモンを起動し、以降のクライアントはそれを再利用します。

Cursor

~/.cursor/mcp.json に追加します。

{
  "mcpServers": {
    "xcode-tools": {
      "command": "uvx",
      "args": ["--from", "mcpbridge-wrapper==0.5.0", "mcpbridge-wrapper", "--broker"]
    }
  }
}
Codex

~/.codex/config.toml に追加して、Codex を再起動します。

[mcp_servers.xcode-tools]
command = "uvx"
args = ["--from", "mcpbridge-wrapper==0.5.0", "mcpbridge-wrapper", "--broker"]
Zed

~/.config/zed/settings.json のトップレベルの context_servers キーの下に追加し、Settings > AI > MCP Servers でサーバーを無効にしてから再度有効にします。

{
  "context_servers": {
    "xcode-tools": {
      "command": "uvx",
      "args": ["--from", "mcpbridge-wrapper==0.5.0", "mcpbridge-wrapper", "--broker"],
      "env": {}
    }
  }
}

設定 UI とサーバーの状態インジケーターについては、Zed の MCP 設定ガイドを参照してください。

Claude Code
claude mcp add --transport stdio xcode -- uvx --from 'mcpbridge-wrapper==0.5.0' mcpbridge-wrapper --broker

共有デーモンが不要な単一のクライアントでは、コマンドから --broker を削除してダイレクトモードを使用します。手動インストールと Web UI のオプションについては、インストールガイド、 ブローカーモードガイド、Web UI ガイドで説明しています。

Xcode 27.0 の承認と検証

Xcode 27.0 では、ブローカーホストプロセスとプロジェクトフォルダーへのアクセス許可を求められる場合があります。プロンプトにはエディター名ではなく、Python の実行ファイルと PID が表示されます。以前の Python インストールにすでに許可を与えていても、新しい uvx ホスト ID には改めて承認が必要になる場合があります。パスとプロジェクトが想定どおりの場合にのみ、アクセスを承認してください。

ツールからエージェントが承認されていないと報告された場合は、既存の .xcodeproj または .xcworkspace の絶対パスを指定して XcodeOpenWorkspace を使用し、アクセスをリクエストしてください。Xcode でプロンプトを承認したら、読み取り専用ツールを再試行してください。tools/list が成功したことや、クライアントのステータスドットが緑色であることを、Xcode ツールの呼び出しが許可されている証拠と見なさないでください。次のコマンドで Xcode の状態を確認してください。

xcrun mcp-server status
uvx --from 'mcpbridge-wrapper==0.5.0' mcpbridge-wrapper --broker-status

2 つ目のコマンドには、Proxy version: 0.5.0 と Daemon version: 0.5.0 が表示されるはずです。古いデーモンがまだ実行中の場合は、一度停止してからクライアントを再接続してください。

uvx --from 'mcpbridge-wrapper==0.5.0' mcpbridge-wrapper --broker-stop

シングルトンを停止すると、一時的にそれを使用しているすべてのクライアントが切断されます。次の --broker 接続時に新しいデーモンが起動します。長期間安定して使用できるホスト ID については、専用ブローカーホストを参照してください。

Xcode 27.0 のツール

ローカルのスモークテストでは、Xcode 27.0 ビルド 27A266a で tools/list によって54 個のツールが公開されました。これは確認されたカタログであり、ハードコードされたラッパー API ではありません。Xcode 27 では、ワークスペースの作成とオープン、シミュレーター操作、実行とデバッガーの制御、ビルド設定、ローカライズ、クラッシュおよび実環境の分析ツールが追加されています。Apple の Xcode 27 リリースノートを参照してください。

  • ワークスペースとターゲット: XcodeListWorkspaces、XcodeOpenWorkspace、 XcodeCloseWorkspace、XcodeNewProject、XcodeNewTarget、 XcodeListTargets、XcodeListTemplates、XcodeListSchemes、 XcodeSwitchScheme、XcodeListRunDestinations、 XcodeSwitchRunDestination、XcodeListTestPlans、XcodeSwitchTestPlan。
  • ファイルと診断: XcodeRead、XcodeWrite、XcodeUpdate、 XcodeLS、XcodeGlob、XcodeGrep、XcodeMakeDir、XcodeMV、XcodeRM、 XcodeRefreshCodeIssuesInFile。
  • ビルド、テスト、実行、デバッグ: BuildProject、GetBuildLog、 GetTestList、RunAllTests、RunSomeTests、RunProject、StopProject、 GetConsoleOutput、InvokeDebuggerCommand、GetFileCompilerFlags、 UpdateFileCompilerFlags、GetTargetBuildSettings、 UpdateTargetBuildSetting。
  • デバイス操作: DeviceInteractionStartSession、 DeviceInteractionStartWorkspaceSession、DeviceInteractionInstallAndRun、 DeviceInteractionSynthesize、DeviceInteractionEndSession。
  • ローカライズ: LocalizationPlanner、StringCatalogContext、 StringCatalogRead、StringCatalogEdit。
  • クラッシュと実環境の分析: GetTopCrashIssues、GetCrashIssueLogs、 GetTopFieldPerformanceIssues、GetFieldPerformanceIssueLogs。
  • プレビューとリファレンス: RenderPreview、DocumentationSearch、 RunCodeSnippet。
  • プロジェクトのメタデータ: AddEntitlement、AddInfoPlist。

このカタログには、以前の XcodeListWindows という名前は含まれていません。Xcode の承認後にワークスペースを調べるには、XcodeListWorkspaces を使用してください。ビルド、ファイル編集、デバイス操作などのツール呼び出しは、プロジェクトやデバイスの状態を変更する場合があります。新しいセットアップを検証する際は、読み取り専用の呼び出しから始めてください。

開発

ソースからのインストールと品質ゲートについては、コントリビューションを参照してください。パッケージは PyPI および MCP Registryでも入手できます。

MIT ライセンスに基づいてライセンスされています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。