Coding Tools について
Coding Tools MCP は、MCP クライアントからコードの読み書き、コマンド実行、git 操作を行えるローカル MCP サーバーです。チャットアプリや独自のエージェントにリポジトリを扱わせたい開発者に向いており、ワークスペース境界と権限モードでリスクを抑えます。
主な機能
- 01ファイルの読み取り・検索と複数ファイルへのパッチ適用
- 02コマンド実行と対話型セッションの管理
- 03git の status、diff、log、show、blame の取得
- 04ワークスペースのパス制限と権限モード
- 05OAuth 2.1 認証を用いたリモート HTTP アクセス
- 06Docker サンドボックスイメージ
活用シーン
- 01Claude Desktop からローカルリポジトリを読み取り、修正させる
- 02使い捨てのコンテナで信頼できない PR を確認する
- 03独自のエージェントにファイルとコマンドのツールを提供する
MCP 対応
本プロジェクトは MCP サーバーであり、任意の MCP クライアントに注釈付きの 19 個のツールを公開します。デフォルトの safe および trusted モードでは 18 個が公開されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Coding Tools MCP
英語 | 簡体字中国語
あらゆる AI チャットやエージェントに、コードベースを安全に扱う手段を提供します。
Coding Tools MCP は、Model Context Protocol 経由で提供されるモデル中立のコーディングランタイムです。ファイルの読み取りと検索、複数ファイルへの構造化パッチ、コマンド実行、インタラクティブセッション、Git を備えています。どの MCP クライアントからも利用できる単一のサーバーです。Claude Desktop、Claude Code、Codex、Cursor、Cline、VS Code、Windsurf、Gemini CLI、または独自に構築したエージェントが、実績のある18種類のツールを含むデフォルトカタログを、単一のワークスペースに制限し、権限モードで制御された状態で利用できます。
選ばれる理由
- チャットアプリをコーディングエージェントに変えます。 Claude Desktop、または任意の MCP チャットクライアントが、すでに利用しているサブスクリプションで実際のリポジトリにアクセスできます。追加の製品は不要です。
- 安全性は後付けではなく、製品の中核です。 サーバーごとにワークスペースのルートは1つです。絶対パス、
..によるディレクトリ遡り、シンボリックリンクを介した脱出は拒否されます。権限モードによって、ネットワークアクセス、シェル展開、インラインスクリプト、破壊的なコマンドが制御されます。Linux では、Landlock によりカーネルレベルでファイルシステムを隔離できます。 - モデルにもベンダーにも依存しません。 正確な注釈が付いたモード対応カタログを備え、プロファイルの切り替えも、注釈のごまかしもありません。モデルやクライアントを自由に変更しても、ランタイムの契約は変わりません。
- コンテキストウィンドウを考慮して設計されています。 結果は要約、ページ分割され、設計上の上限が設定されています。決定論的な社内実運用ワークロードでは、タスク完了率を維持したまま、シリアライズされたツール結果のバイト数をリリースごとに37%削減しました。
クイックスタート
すでに利用しているツールチェーンで実行できます(サーバーは PyPI で提供される Python ≥ 3.11 製です。npm パッケージは uv または pipx 経由で起動する薄いランチャーです)。
uvx coding-tools-mcp --stdio --workspace /path/to/repo # Python toolchain
npx coding-tools-mcp --stdio --workspace /path/to/repo # Node toolchain
Claude Desktop、Claude Code、Codex、Cursor、VS Code、Windsurf、Gemini CLI、または Cline に設定します。JSON はどれでも同じです(Node を使う場合は uvx を npx に置き換えてください)。
{
"mcpServers": {
"coding-tools": {
"command": "uvx",
"args": ["coding-tools-mcp", "--stdio", "--workspace", "/path/to/repo"]
}
}
}
次に、クライアントにこう尋ねます。「テストスイートを実行して、最初の失敗を修正してください。」
HTTP を使いたい場合は、--stdio を削除すると、サーバーは http://127.0.0.1:8765/mcp で Streamable HTTP を提供します。どちらのトランスポートでも、2つのプロトコル世代に対応しています。MCP 2026-07-28 を完全にサポートし、広告する機能は tools のみです。また、ハンドシェイク世代の 2025-11-25 では 2025-06-18 との互換性があります。どちらもセッションはありません。1行のインストーラー、クライアントごとの手順、トラブルシューティングについては、docs/quickstart.md と docs/mcp-client-config.md をご覧ください。
試してみたい7つのこと
1. Claude Desktopをコーディングエージェントにする。 上記の設定だけで利用できます。すでに利用料金を支払っているチャットウィンドウで、実際のリポジトリの読み取り、変更、テスト、コミットのレビューができるようになります。
2. どこからでも自分のマシンでコーディングする。
CODING_TOOLS_MCP_AUTH_MODE=bearer ./integrations/tunnels/tunnel.sh cloudflared /path/to/repo
ループバックへのバインドと、認証付きHTTPSトンネル(cloudflared、ngrok、またはMicrosoft Dev Tunnel)を使用します。スマートフォンのclaude.aiからhttps://<tunnel-host>/mcpに接続すれば、どこからでも自宅のワークステーションを操作できます。ChatGPTとGrokも、同じようにコネクターの設定から接続できます。ベアラートークンとOAuth 2.1 + PKCE(RFC 7591の動的登録を含む)は組み込み済みです。→ docs/remote-mcp.md
3. 信頼できないコードを、使い捨てのサンドボックス内でエージェントに任せる。
docker build -t coding-tools-mcp-sandbox:local .
docker run --rm --init -it -p 8765:8765 -v "$PWD:/workspace" coding-tools-mcp-sandbox:local
ツールチェーンとキャッシュが事前設定されたコンテナー化サーバーです。怪しげなPRに対して安全に実行し、終了後に破棄できます。→ docs/docker.md
4. MCPの呼び出し1回でクラウドサンドボックスを起動する。 同梱のCloudflare Workerコントロールプレーンは、start_coding_tools_sandboxをMCPツールとして公開します。1回の呼び出しでGitHub Actionsランナーが起動し、Dockerサンドボックスを立ち上げ、認証付きCloudflare Tunnelを介して公開します。自分のサーバーを用意する必要のない、一時的なコンピューティング環境です。
5. GUIから操作する。
python -m pip install "coding-tools-mcp[desktop]"
coding-tools-mcp-desktop
ワークスペースごとのプロファイル、サーバーとトンネルの起動/停止、クリップボード機能を使った認証情報の設定、リアルタイムのヘルスチェックに対応しています。英語と简体中文に対応しています。
6. 対話型コマンドを起動したままにする。 exec_commandで実際のPTY上にREPLやデバッガーを起動し、write_stdinでターンをまたいで入力を送り、read_outputで長い出力をページ単位で取得し、kill_commandで終了できます。タイムアウト監視とサイズ制限付きバッファーを備え、長時間実行プロセスを一級の機能として扱います。
7. 自分のエージェントに本番品質の操作手段を与える。 Anthropic SDKなどを使ってエージェントのループを構築していますか? ファイル操作や実行のツールを独自に作らず、このサーバーとMCPで通信すれば、安全性の境界をまるごと継承できます。→ docs/embedding.md
ツールカタログ
レジストリーには、正確な説明が付いたツールが19個含まれています。デフォルトのsafeモードとtrustedモードでは18個が公開されます。dangerousモードでは、何かを許可できる唯一のモードとして、request_permissionsも公開されます。apply_patchとapply_changesはファイル変更の基本ツールです。どちらもステージングされ、ベースラインを確認し、複数ファイルへの変更をアトミックに適用し、ロールバックに対応しています。
| グループ | ツール |
|---|---|
| ファイルと検索 | read_file · list_dir · list_files · search_text · apply_patch · apply_changes · view_image |
| 実行 | exec_command · write_stdin · read_output · kill_command · request_permissions(dangerousのみ) |
| Git | git_status · git_diff · git_log · git_show · git_blame |
| ランタイム | server_info · check_exec_environment |
ルートにあるAGENTS.md/CLAUDE.mdファイルは自動的に読み込まれ、initializeのinstructionsに含めて返されます。ハンドシェイクを行わないクライアントの場合は、server/discoverのinstructionsに含めて返されます。ツールのcontentはエージェント向けの簡潔なテキストで、structuredContentには完全な機械可読形式の結果が格納されます。スキーマと結果エンベロープについては、docs/tools-and-schemas.md · docs/runtime-contract-v0.3.mdを参照してください。
安全境界
| モード | 想定用途 | 許可される操作 |
|---|---|---|
safe(デフォルト) | 日常的なエージェント作業 | ファイルツールと審査済みのコマンドを許可します。ネットワーク接続を伴うように見えるコマンド、シェル展開、インラインスクリプト、破壊的なコマンドには、すべて明示的な許可が必要です |
trusted | ローカル開発 | ネットワークアクセス、シェル展開、インラインスクリプトを許可します。シークレットのフィルタリングと破壊的なコマンドのチェックは維持します |
dangerous | 分離されたコンテナ/VMのみ | exec_command の権限ゲートを無効にします。ワークスペースのパス境界は引き続き適用されます |
再帰的な一覧表示と検索では、.git、node_modules、ビルド出力、
仮想環境、キャッシュを除外します。コマンドはワークスペースに限定された
cwd、サニタイズされた環境、タイムアウト、出力上限を適用して実行されます。
Landlock に対応する Linux ホストでは、カーネルによってファイルシステムの
制限が強制されます。それ以外のプラットフォームでは明示的な警告が表示されます。
それでも完全な OS サンドボックスではないため、本当に信頼できない作業には
Docker イメージまたは VM を使用してください。詳細:
SECURITY.md · docs/security-boundary.md ·
docs/permission-modes.md
テレメトリ
サーバーは、修正の優先順位付けに役立てるため、匿名の使用状況テレメトリ
(ツールごとの成功数/レイテンシのカウンターとバージョン/プラットフォームの
情報。パス、引数、コマンド、ファイルの内容は送信しません)を送信します。
CODING_TOOLS_MCP_TELEMETRY=off または DO_NOT_TRACK=1 で無効にできます。
CI では自動的に無効になります。CODING_TOOLS_MCP_TELEMETRY=debug を指定すると、
送信する代わりにすべてのイベントを stderr に出力します。イベントの全一覧と
保証については、docs/telemetry.md を参照してください。
エビデンス、ドッグフーディング、SWE-bench
すべてのリリースは、タグをトリガーとして実行されるパイプラインを通じて公開されます。
このパイプラインでは、コンプライアンススイート、実ワークロードのベンチマーク、
SWE-bench ハーネスが、PyPI と npm への公開に使用するものと同じコミットから実行されます。
どちらもトラステッドパブリッシングを利用し、npm ではプロベナンスを使用します。
ドッグフーディングの効率指標は再現可能(make dogfood-smoke)で、
reports/ にチェックインされています。このリポジトリは、モデルが生成した
SWE-bench のリーダーボード結果を主張していません。測定内容と測定対象外の内容の
詳細については、docs/swe-bench.md を参照してください。
詳細:COMPLIANCE.md · BENCHMARK.md ·
docs/dogfood.md
ドキュメント
| ドキュメント一覧 | トピック別にドキュメントを閲覧 |
| はじめに | クイックスタート · クライアントの設定 · トラブルシューティング |
| リモートとサンドボックス | リモート MCP · Docker サンドボックス · クラウドサンドボックスワーカー |
| ツールとコントラクト | ツールとスキーマ · ランタイムコントラクト · 0.3 への移行 · 権限モード |
| 実行 | Exec のレシピ · Exec のトラブルシューティング |
| 統合 | 組み込み · npm ランチャー |
| セキュリティと品質 | セキュリティポリシー · セキュリティ境界 · CI とテスト · 制限事項 · 競合分析 |
開発
python -m pip install -e ".[dev]"
make ci # lint, typecheck, tests, protocol/integration suites, gates
ゲートの全体像については、docs/ci-and-tests.md を参照してください。
ライセンス
このプロジェクトは Apache License 2.0 のライセンスで公開されています。
このプロジェクトのコード、ドキュメント、重要な実装詳細、または派生物を使用する場合は、 著作権表示、ライセンス表示、NOTICE ファイルを保持し、元のプロジェクトを 明確にクレジットしてください。
プロジェクト:Coding Tools MCP
作者:Coding Tools MCP Contributors
ソース:https://github.com/xyTom/coding-tools-mcp
引用メタデータは CITATION.cff で確認できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
