mcpField
X
xcode

xcode

github.com/bjesuiter開発040 回インストール1 週間前に更新
リポジトリ

xcode について

xcode は mcporter 経由で XcodeBuildMCP を使い、Xcode や Swift の開発を支援するスキルです。ビルド、テスト、シミュレーター操作に対応し、対象を特定してから最新のツールスキーマを確認する手順を示します。

主な機能

  1. 01プロジェクト、スキーム、シミュレーターを検出
  2. 02プロジェクトと実行先のデフォルトを設定
  3. 03ビルド、テスト、シミュレーター操作
  4. 04最新スキーマでツール引数を確認

活用シーン

  1. 01Xcode プロジェクトや Swift パッケージのビルドとテスト
  2. 02シミュレーターやデバイスでアプリを実行
  3. 03UI 階層を確認して実行時の問題を再現

MCP 対応

このスキルは mcporter 経由で xcodebuildmcp という MCP サーバーを呼び出します。XcodeBuildMCP はプロジェクト検出、ビルド、テスト、シミュレーター操作のツールをクライアントに公開します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bjesuiter/skills --skill xcode

インストール後、Claude Code で/xcodeを入力して読み込まれたか確認します。

同梱ファイルReadme.md

詳細

XcodeBuildMCP

Xcode や Swift の作業には、mcporter 経由で XcodeBuildMCP を使用します。

bunx mcporter call --stdio "xcodebuildmcp" <tool_name> [args...]

mcporter と xcodebuildmcp はグローバルにインストールされているものとします。ここでは、bunx はインストール済みのバイナリを実行します。信頼できない代替品を取得してはいけません。

環境を確認する

ビルドする前に、対象を特定します。

bunx mcporter call --stdio "xcodebuildmcp" doctor
bunx mcporter call --stdio "xcodebuildmcp" discover_projs workspaceRoot="$(pwd)"
bunx mcporter call --stdio "xcodebuildmcp" list_schemes
bunx mcporter call --stdio "xcodebuildmcp" list_sims

実機で作業する場合は、識別子を推測せず、接続されているデバイスを確認します。Xcode プロジェクト、ワークスペース、Swift パッケージ、シミュレーターの対象、実機、macOS アプリを区別し、対象の種類に合ったツールを選択します。

セッションのデフォルトを設定する

ほとんどのビルドやテストの呼び出しに先立ち、プロジェクトまたはワークスペース、スキーム、デスティネーションのデフォルトを設定します。

bunx mcporter call --stdio "xcodebuildmcp" session-set-defaults \
  projectPath="/path/to/App.xcodeproj" \
  scheme="App" \
  simulatorName="<discovered simulator>"

ワークスペースには workspacePath を使用します。特定のシミュレーターまたはデバイスには、確認済みの識別子を使用します。動作が想定と異なる場合は、デフォルトを確認します。

bunx mcporter call --stdio "xcodebuildmcp" session-show-defaults

無関係なリポジトリや対象に、古いデフォルトを使い回さないでください。

要求されたワークフローを実行する

対象を設定した後、次の手順に従います。

  1. 対象に合ったシミュレーター、デバイス、macOS、または Swift パッケージ用のツールを選択します。
  2. ビルドと実行を組み合わせたツールが適用される場合を除き、インストールや起動を試す前にビルドします。
  3. まず対象を絞ったテストを実行し、必要に応じて範囲を広げます。
  4. ビルド出力を保持し、対処可能なコンパイラーやテストの失敗を明示します。
  5. 実行時の証拠が必要な場合は、再現操作の前後でログ取得ツールを使用し、取得後に停止します。

スキャフォールディングでは、保存先、プロジェクト名、プラットフォーム、バンドル識別子を確認します。既存のプロジェクトを暗黙のうちに上書きしてはいけません。

シミュレーターの UI 操作

アプリをビルドして起動し、操作のたびに、まず現在のアクセシビリティ階層を確認します。

bunx mcporter call --stdio "xcodebuildmcp" describe_ui

アクセシビリティ識別子またはラベルを優先します。座標を使う場合は、最新の階層から取得したものに限ります。スクリーンショットから推測したり、UI の変更後に再利用したりしてはいけません。視覚的な証拠が重要な場合は、スクリーンショットを撮ります。画面遷移、ダイアログ、回転などでレイアウトが変わった後は、describe_ui を再実行します。

現在のツールスキーマを使用する

ツール名や引数は、XcodeBuildMCP のバージョンによって変わる場合があります。コピーした一覧に頼らないでください。使い慣れていない操作を行う前に、インストール済みの mcporter のヘルプと XcodeBuildMCP のスキーマを確認します。

bunx mcporter --help
bunx mcporter list --stdio "xcodebuildmcp" --schema

ジェスチャー、シミュレーター設定、録画、ログ、デバイス操作、Swift パッケージ、スキャフォールディング、ユーティリティには、現在のスキーマを使用します。

失敗を診断する

  • プロジェクトまたはワークスペースが見つからない場合:確認して、セッションのデフォルトを設定します。
  • シミュレーターまたはデバイスが不明な場合:利用可能なデスティネーションを再確認します。
  • 環境または統合の問題がある場合:doctor を実行し、具体的なエラーを確認します。
  • インクリメンタルビルドに問題がある場合:現在のスキーマでサポートされている場合に限り、サーバー標準の xcodebuild 優先設定を試します。
  • ビルドまたはテストに失敗した場合:MCP の失敗として扱うのではなく、出力されたコンパイラーやテストの証拠を基に診断します。

コメント