xcf - AI-Powered Xcode Automation について
xcfは、AIクライアントでXcodeプロジェクトを自動化するSwift製MCPサーバーです。プロジェクトのビルドと実行、ファイルやディレクトリの操作、Swiftコードの分析に対応します。
主な機能
- 01Xcodeプロジェクトの検出と選択
- 02プロジェクトのビルドと実行
- 03ファイルの読み込みとディレクトリ一覧
- 04コードスニペットの抽出
- 05Swiftコードの分析
活用シーン
- 01Xcodeプロジェクトのビルドと実行
- 02プロジェクトのファイルやディレクトリの確認
- 03Swiftコードの潜在的な問題の調査
MCP 対応
xcfはMCPクライアントから起動するローカルのstdio MCPサーバーです。Xcodeプロジェクト操作、ファイルアクセス、スニペット取得、Swift分析のツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 XCF Xcode MCP Server
🤖 自律型 macOS エージェント Agent! の開発元が提供しています。
AI ワークフローを大幅に強化する Swift の方法!
🖌️ 1.0.6 の新機能
- Xcode プロジェクトの自動化、ファイルの読み取り、ディレクトリの移動、Swift の解析、コードスニペットに特化した、より軽量な MCP サーバーです。
- MCP サーバーから diff、コード編集、Xcode ドキュメントのツールと、MultiLineDiff(D1F)依存関係を削除しました。
- ダウンロード可能な DMG と ZIP パッケージを用意しました。DMG にはドラッグ&ドロップでインストールできる Applications のショートカットが含まれています。
- Apple silicon と Intel に対応したユニバーサル macOS アプリで、対象は macOS 13.5 以降です。
- パッケージ版の互換性修正:
xcf-swiftを 1.0.0 に固定し、更新された SDK に合わせて MCP の呼び出し箇所を調整しました。
アップグレード: XCF から削除された操作には、クライアント標準の編集ツールを使用してください。アプリを置き換え、MCP クライアントを再起動してツール一覧を再読み込みしてください。
Cursor、Claude Code、VSCode 向けに設計された、とてもシンプルな Swift ベースの MCP サーバー xcf で、Xcode アプリの開発をスピードアップしましょう。TypeScript も JavaScript も不要です!
🧰 XCF のインストールと設定
ダウンロード
| パッケージ | インストール方法 |
|---|---|
| XCF 1.0.6 — macOS DMG | 推奨: イメージを開き、xcf.app を Applications のショートカットにドラッグします。 |
| XCF 1.0.6 — macOS ZIP | アーカイブを展開し、xcf.app を /Applications に移動します。 |
パッケージ版アプリの最小デプロイメントターゲットは macOS 13.5 で、arm64 と x86_64 の両方の実行ファイルで確認済みです。macOS 13.5 での実行テストは行っていません。
インストール手順
- 上記いずれかのダウンロードを使用して XCF をインストールします。
- アプリケーションを起動し、インターネットからのダウンロードを承認します。
- 次のアラートが表示されます(これは想定どおりです)。
- 「Press to Quit this XCF Xcode MCP Server」ボタンをクリックします。
💡 トラブルシューティング: XCF にアラートが表示されない場合は、次のコマンドを実行してください。
codesign --force --deep --sign - /Applications/xcf.app
Xcode を使ってソースから xcf をビルドすることもできます。
ソースアーカイブについて: 添付されている 1.0.6 アプリパッケージには、
1.0.6タグの作成後に加えられた互換性修正が含まれています。GitHub がそのタグ向けに自動生成するソースアーカイブには、これらの修正は含まれていません。
🔧 クイックセットアップ
最小要件:
- パッケージ版アプリには macOS 13.5 以降が必要です。
- Xcode プロジェクトの自動化には Xcode が必要です。
- 標準入力/出力経由で XCF を起動するよう設定された MCP クライアント。
MCP 設定ファイルに xcf を追加します。
{
"mcpServers": {
"xcf": {
"type": "stdio",
"command": "/Applications/xcf.app/Contents/MacOS/xcf",
"args": ["server"]
}
}
}
設定場所
- Cursor:
~/.cursor/mcp.json - Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json
⚠️ 重要: セットアップ後、またはツールを更新した後は、AI アシスタントを再起動してください。
⚙️ 高度な設定
Cursor 以外のクライアントを利用する場合、またはプロジェクト単位で厳密に制御する場合:
{
"mcpServers": {
"xcf": {
"type": "stdio",
"command": "/Applications/xcf.app/Contents/MacOS/xcf",
"args": ["server"],
"env": {
"XCODE_PROJECT_FOLDER": "/path/to/project/",
"XCODE_PROJECT": "/path/to/project/project.xcodeproj"
}
}
}
}
これらの環境変数を使うと、次のことができます:
- 作業対象の Xcode プロジェクトを事前に選択する
- セキュリティのため、カスタムのワークスペース境界を定義する
✨ 主な機能
- 依存関係ゼロ: 簡単にインストールでき、ほかの MCP サーバーに依存しません
- プロジェクトの自動検出: Xcode プロジェクトを自動選択するため、すぐにコーディングを始められます
- リアルタイムのエラー処理:
xcf buildまたはxcf runを実行すると、Xcode のエラーと警告が AI IDE に直接送信されます - AI による修正: コーディング中に Claude にバグや誤りを修正してもらえます
- 直感的なコマンド: 生産性を最大限に高める、シンプルで開発者に使いやすいコマンド構成
- 包括的なファイル操作: ファイルやディレクトリを簡単に読み取れます
- Xcode との統合: Xcode プロジェクトを直接ビルド、実行、管理できます
- 高度なコード分析: Xcode でビルドせずに、Swift コードの詳細な分析結果を取得できます
🛠️ Swift 開発者に最適
このツールは、Swift 開発者が Swift 開発者のために設計しました。build、run、show などのコマンドに、新しいファイルおよびディレクトリ操作を加えることで、直感的で自然なワークフローを実現します。
📋 コマンド一覧
| xcf コマンド | 操作の説明 |
|---|---|
show | 開いている Xcode プロジェクトを一覧表示 |
open # | 番号でプロジェクトを選択 |
run | 現在のプロジェクトを実行 |
build | 現在のプロジェクトをビルド |
current | 選択中のプロジェクトを表示 |
env | 環境変数を表示 |
pwd | 現在のフォルダーを表示(エイリアス:dir、path) |
help | 利用可能なコマンドをすべて表示 |
ファイル操作
| コマンド | 説明 |
|---|---|
read_file <file> | ファイルの内容を読み取る |
read_dir [path] [extension] | ディレクトリの内容を一覧表示 |
cd_dir <path> | ディレクトリを変更 |
分析ツール
| コマンド | 説明 |
|---|---|
snippet <file> [start] [end] | コードスニペットを抽出 |
analyzer <file> [start] [end] | Swift コードを分析 |
lz <file> | analyzer の短縮形 |
📄 スニペットの使用
人間がコマンドを使う場合
xcf は、シンプルで使いやすいスニペットコマンドに対応しています:
ファイル全体を取得するには、ファイル名を指定するだけです:
xcf snippet filename.swift
多くの場合、フルパスは不要です。xcf がファイルをインテリジェントに検索し、内容全体を表示します。
特定の行範囲を指定する場合:
xcf snippet filename.swift 10 20
ファイル操作では、どちらの形式も使用できます:
xcf snippet /path/to/file.swift // Direct path
xcf snippet filePath=/path/to/file.swift // Named parameter
xcf analyze /path/to/file.swift // Direct path
xcf analyze filePath=/path/to/file.swift // Named parameter
xcf lz /path/to/file.swift // Direct path (shorthand)
xcf lz filePath=/path/to/file.swift // Named parameter (shorthand)
特定の行範囲を指定する場合:
xcf snippet /path/to/file.swift 10 20 // Direct path with line range
xcf snippet filePath=/path/to/file.swift startLine=10 endLine=20 // Named parameters
AI アシスタントの場合
MCP ツール経由で xcf を使う場合は、次の構文を使用します:
mcp_xcf_snippet filePath="filename.swift" entireFile=true
特定の行範囲を指定する場合:
mcp_xcf_snippet filePath="filename.swift" startLine=10 endLine=20
スマートパス解決
ファイルが指定された正確なパスで見つからない場合、xcf は次の場所からインテリジェントに検索します:
- まず、指定された正確なパスを試します
- 現在の作業ディレクトリを使って相対パスを解決します
- 現在のプロジェクトディレクトリとその1階層上を検索します
- WORKSPACE_FOLDER_PATHS で定義されたワークスペースフォルダーを検索します
- 深さを制限して、ワークスペースフォルダーを再帰的に検索します
- 最後の手段として、類似したファイル名をあいまい検索します
このスマートパス解決は、次のような xcf のすべてのファイル操作で一貫して使用されます:
- ファイルの読み取りとコードスニペット
- コード分析
- ディレクトリ操作
そのため、通常は、どの操作でもパスを指定せずにファイル名だけを使えます:
xcf snippet Constants.swift // For humans
xcf analyze Constants.swift // For humans
AI アシスタントの場合:
mcp_xcf_snippet filePath="Constants.swift" entireFile=true
mcp_xcf_analyzer filePath="Constants.swift" entireFile=true
🔍 Swift コード分析
人間がコマンドを使う場合
Swift ファイル全体を分析し、潜在的な問題を見つけます:
xcf analyze filename.swift
または、短縮形を使います:
xcf lz filename.swift
特定の行範囲を指定する場合:
xcf analyze filename.swift --startLine 10 --endLine 50
AI アシスタント向け
MCP ツール経由で xcf を使用する場合は、次の構文を使用します。
mcp_xcf_analyzer filePath="filename.swift" entireFile=true
または、省略形を使用します。
mcp_xcf_xcf action="lz filename.swift"
特定の行範囲を指定する場合:
mcp_xcf_analyzer filePath="filename.swift" startLine=10 endLine=50
分析では、次のような問題を特定します。
- コードスタイルや書式の問題
- 複雑度の高い関数
- 未使用の変数やシンボル
- マジックナンバー
- 長いメソッド
- その他
🧩 MCP ツール(21 個)
コアツール
| ツール | 説明 |
|---|---|
xcf | xcf のアクション(show、open、build、run、current、env、pwd、analyze、lz)を実行します |
list | このサーバーで利用可能なすべてのツールを一覧表示します |
xcf_help | xcf のアクションのみを対象としたクイックヘルプ |
help | よくある例を含む通常のヘルプ |
use_xcf | XCF モードを有効にします |
tools | AI 関数呼び出しを含む、すべてのツールの詳細なリファレンスを表示します |
show_help | 利用可能なコマンドのヘルプ情報を表示します |
プロジェクト管理ツール
| ツール | 説明 |
|---|---|
build_project | 現在の Xcode プロジェクトをビルドします |
run_project | 現在の Xcode プロジェクトを実行します |
list_projects | 開いているすべての Xcode プロジェクトを一覧表示します |
select_project | 番号を指定して Xcode プロジェクトを選択します |
show_current_project | 現在選択されているプロジェクトの情報を表示します |
show_env | すべての環境変数を表示します |
show_folder | 現在の作業フォルダーを表示します |
grant_permission | Xcode の自動化権限を付与します |
ファイルシステムツール
| ツール | 説明 |
|---|---|
read_file | ファイルの内容を読み取ります |
read_dir | ディレクトリの内容を一覧表示します |
cd_dir | 現在のディレクトリを変更します |
コード分析ツール
| ツール | 説明 |
|---|---|
snippet | ファイルからコードスニペットを抽出します |
analyzer | Swift コードを分析し、潜在的な問題を特定します |
analyze_swift_code | カスタマイズ可能なチェックグループ(syntax、style、safety、performance、bestPractices)を使用して Swift コードを分析します |
AI 関数呼び出し向け
ファイル全体を取得するには:
mcp_xcf_snippet(filePath="/full/path/to/file.swift", entireFile=true)
特定の行範囲を指定する場合:
mcp_xcf_snippet(filePath="/full/path/to/file.swift", startLine=10, endLine=20)
ファイル全体を分析するには:
mcp_xcf_analyzer(filePath="/full/path/to/file.swift", entireFile=true)
特定の行範囲を指定する場合:
mcp_xcf_analyzer(filePath="/full/path/to/file.swift", startLine=10, endLine=50)
ファイルとディレクトリの操作
ファイルを読み取る:
mcp_xcf_read_file filePath="main.swift"
ディレクトリの内容を一覧表示する:
mcp_xcf_read_dir directoryPath="."
Swift ファイルのみを一覧表示する:
mcp_xcf_read_dir directoryPath="src" fileExtension="swift"
ディレクトリを変更する:
mcp_xcf_cd_dir directoryPath="src"
🔒 セキュリティ機能
- 指定したワークスペース内のプロジェクトを安全に操作します
- ワークスペースの境界外へのアクセスを自動的に防止します
- 必要に応じて、安全な代替手段に誘導します
- 環境変数を使用して安全な境界を定義します
🔄 ワークフローの例
基本的なワークフロー(人間向け)
xcf show- 利用可能なプロジェクトを確認しますxcf open 1- プロジェクトを選択しますxcf build- プロジェクトをビルドしますxcf run- プロジェクトを実行します
コード分析のワークフロー(人間向け)
xcf current- 現在のプロジェクトを確認しますxcf snippet filename.swift- コードを調べますxcf lz filename.swift- コードを分析しますxcf build- 問題を修正した後にビルドします
ファイル操作のワークフロー(人間向け)
read_dir .- 現在のディレクトリ内のファイルを一覧表示しますread_file main.swift- ファイルの内容を表示します- Agent のネイティブツールを使用してファイルを編集します
xcf build- 変更後にビルドします
基本的なワークフロー(AI アシスタント向け)
mcp_xcf_xcf action="show"- 利用可能なプロジェクトを確認しますmcp_xcf_xcf action="open 1"- プロジェクトを選択しますmcp_xcf_xcf action="build"- プロジェクトをビルドしますmcp_xcf_xcf action="run"- プロジェクトを実行します
コード分析のワークフロー(AI アシスタント向け)
mcp_xcf_xcf action="current"- 現在のプロジェクトを確認しますmcp_xcf_snippet filePath="filename.swift" entireFile=true- コードを調べますmcp_xcf_analyzer filePath="filename.swift" entireFile=true- コードを分析しますmcp_xcf_xcf action="build"- 問題を修正した後にビルドします
ファイル操作のワークフロー(AI アシスタント向け)
mcp_xcf_read_dir directoryPath="."- 現在のディレクトリ内のファイルを一覧表示しますmcp_xcf_read_file filePath="main.swift"- ファイルの内容を表示します- Agent のネイティブ
edit_fileツールを使用してファイルを編集します mcp_xcf_xcf action="build"- 変更後にビルドします
📺 デモ
XCF の動作をご覧ください:YouTube デモ
❓ トラブルシューティング
コマンドが失敗する場合は、以下を確認してください。
- xcf が正しくインストールされていること
- xcf MCP サーバーを更新すること
- サーバーが起動し、/Applications フォルダーにあること
- "server" などの
envを使用した環境変数 - AI アシスタントを再起動すること
🤝 オープンソースコミュニティ
Swift エンジニアの皆様の貢献を歓迎します!xcf をさらに良くするためにご協力ください。
💯 100% Swift。100% オープンソース。
XCodeFreeze Automation と CodeFreeze.ai が作成 — Swift 開発の未来をすぐそばにお届けします!
AgentiLoop: agentiloop.ai
Copyright © 2026 AgentiLoop.ai(Logos InkPen LLC の会社)。All rights reserved.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。