コンテンツにスキップ

MCP ツール

cc_server はひとつの MCP(JSON-RPC 2.0)ツールレジストリをホストし、メインサーバーポート(既定 9030)の POST /mcp と GET /sse で、プロトコルバージョン 2024-11-05 として提供します。デスクトップ、Web ビルド、外部 MCP クライアント、内蔵エージェントランタイムというすべてのクライアントが、同じレジストリに到達します。外部 MCP サーバーは、動的レイヤーとして同じレジストリにブリッジできます。

項目 数
cc_server が登録するツール 110
packages/cc_mcp 由来 108
packages/cc_mcp_client 由来(ツールディスカバリ) 2
ベースレジストリに登録(server_mcp_registry.dart) 63
起動後、各サービスが立ち上がるにつれて登録(cc_server_runtime.dart) 47
ベースレジストリの 63 のうち、コードグラフリポジトリを条件とするもの 5

5 つのコードグラフツールは、ホストが buildServerMcpRegistry にコードグラフリポジトリを渡したときだけ登録されます。cc_server は常に渡すため、出荷されるバイナリでは 110 すべてが有効です。

完全なレジストリは、ディスカバリのゲートなしで tools/list に公開されます。チケットの編集は型付きツールです。

ワークスペーススコープのデータに触れるすべてのツールで必須です。workspace_id がないか無効な場合は明示的なエラーが返り、対象エンティティのワークスペースと一致しない値は黙って無視されるのではなく拒否されます。真にグローバルなツールでは省略します。list_workspaces と 6 つのニュースフィードツール(list_feeds、list_articles、get_article、set_article_read、set_article_saved、refresh_feeds)で、これらはサーバー所有者のユーザー単位のフィードリストに乗ります。ディスカバリツール(search_tool_bm25、list_my_tools)では任意であり、会話モードごとに呼び出し可否を分類できるようにしています。サーバーがエージェントをディスパッチする場合、ワークスペースはサーバー側で強制されるため、エージェントは外部の id を渡して別のワークスペースに到達することはできません。

どちらも cc_mcp ではなく cc_mcp_client 由来で、どちらもモードガードを参照するため、現在 の会話モードで呼び出し可能なものを報告します。

ツール 説明
search_tool_bm25 キーワードでツールカタログを検索し、一致するツール、その引数スキーマ、それぞれが今呼び出し可能かどうかを返します
list_my_tools この会話で今呼び出し可能なツールを、そのモードで絞り込んで一覧表示します

3 つ目のディスカバリツール search_tools は内蔵ハーネスの内側にのみ存在し、この MCP レジストリには含まれません。これは実行自身のツールサーフェスを順位付けし、search_tool_bm25 と違って見つけたもののスキーマを読み込むため、エージェントは次のターンで一致したものを呼び出せます。ハーネス上のエージェントはこちらを優先すべきです。MCP クライアントには search_tool_bm25 があります。

ツール 説明
list_agents ワークスペースに登録されているエージェントを一覧表示します

エージェント同士はスペース(永続的で、ロスターに見える)を介して会話します。ask_agent は必須のタイムアウトを伴う要求/応答です。delegate_task はサーバー側で、深さの上限、循環検出、予算エンベロープ、自律性の上限によってガードされます。

ツール 説明
send_to_agent to_agent_id または完全一致の to_agent_name で宛先を指定し、別のエージェントへ一方向のメッセージを送ります
ask_agent 別のエージェントに質問し、その返信を待つか、タイムアウトします
delegate_task タスクを追跡対象の子チケットとして別のエージェントに委任します
consult_agent スキルに基づいて最適なスペシャリストをスペースに追加し、焦点を絞ったブリーフでディスパッチします
todo_read この会話に永続化されたタスクチェックリストを読み取ります

すべてのインストールと更新は、スキルのコンテンツがディスクやエージェントのプロンプトに到達する前に、フェイルクローズドのスキャンゲートを通過します。

ツール 説明
list_skills ワークスペースで利用可能なスキルのスラッグを一覧表示します
create_skill markdown コンテンツから新しいスキルを作成します
install_skill GitHub リポジトリの固定した ref から、スキルのディレクトリ全体をインストールします
update_skill インストール済みの GitHub スキルを新しい ref に更新し、再スキャンして再固定します
list_skill_updates より新しいバージョンが利用可能なスキルを一覧表示します
verify_skills ロックされたスキルを、ディスク上のコンテンツハッシュと照合して検証します
pin_skill ディスク上に既存のスキルをハッシュ化して skills-lock.json に記録します

プラン、プレイブック、アーティファクトのツール

「プラン、プレイブック、アーティファクトのツール」というセクション
ツール 説明
submit_plan プランモードの出力契約です。Plan Studio で開く型付きの PlanDocument を出力します
create_playbook プランを、型付きの {{param}} プレースホルダーを持つ名前付き・バージョン付きテンプレートとして保存します
run_playbook パラメータ値でプレイブックを実体化し、オペレーターが承認するプランを生成します
publish_artifact 型付きブロック(markdown、table、chart、mermaid、code、JSON)の順序付きリストを公開し、クライアントでネイティブにレンダリングします
revise_artifact 公開済みアーティファクトの内容を置き換えます
list_artifacts ワークスペースのアーティファクトを一覧表示します
get_artifact アーティファクトをひとつ読み取ります
complete_goal 会話のアクティブな永続ゴール(/goal または /loop で開始)が達成されたことを宣言します
ツール 説明
list_workspaces すべてのワークスペースを id と名前とともに一覧表示します(グローバル。workspace_id なし)
ツール 説明
list_repos ワークスペースに登録されたリポジトリを一覧表示します。エージェントの呼び出し元は、その会話の分離されたコピーオンライトのワークツリーパスを受け取り、元のチェックアウトを渡されることはありません
ツール 説明
list_spaces ワークスペースのメッセージングスペースを一覧表示します
get_messages スペースからメッセージを取得します
send_message 名前付きの送信元エージェントとしてスペースにメッセージを送ります
get_space_notes スペースの共有ハンドオフドキュメントを読み取ります
update_space_notes スペースの共有ハンドオフドキュメントを置き換えます
todo_write この会話のタスクチェックリストを 1 回の呼び出しで置き換えます(リスト全体を渡します)
ツール 説明
start_ai_review PR の AI レビューを開始します。レビュー領域を計算し、スペシャリストのレビュアーを PR スペースへファンアウトし、ウォークスルーを執筆して確定します
add_review_node 構造化されたレビューの指摘(ファイル、行、P0–P3 の優先度)をレビュースペースに追加します
confirm_review_node ピアの指摘を確認します。作成者が自己確認することはできません
resolve_review_node 実際に変更を加えたうえで指摘を修正済みにします。レビュースペースにトレースを投稿します
dismiss_review_node 該当しない指摘を却下します。抑制ファクトを記録し、レビュアーがその指摘を再び立てないようにします
request_peer_review 別のレビュアーエージェントに、指摘の再確認を依頼します
dispatch_reviewers マッチしたレビュアーエージェントをレビュースペースに同時にディスパッチします
submit_reviewer_verdict レビュアーごとの Ship/Hold/Block の判定を、確信度と説明とともに投稿します
finalize_review ノードごとのコンセンサスと PR ごとの判定を計算し、レビューをクローズします
set_cohort_summary レビューコホートの平易な言葉による要約を設定します
add_review_diagram 構造化された、グラフで検証済みの図(sequence、entityRelation、stateMachine)をコホートに添付します
publish_review_to_github 確定したレビューを、インラインコメントと要約本文として GitHub に公開します
ツール 説明
search_memory ファクトとポリシーを検索します(キーワード、セマンティック、またはハイブリッド。既定はハイブリッド)
propose_fact 短い markdown のファクトをドメインに保存します
supersede_fact ファクトを別のファクトによって置き換えられたものとしてマークします
propose_policy 規範的なルールをドメインに保存します(そのドメインへの書き込み権限が必要です)
supersede_policy ポリシーを廃止します。監査のために保持しつつ、非アクティブとしてマークします
list_policies アクティブなポリシーを一覧表示します。任意でドメインで絞り込めます
list_memory_domains ワークスペースのメモリドメインを、ファクト数とポリシー数とともに一覧表示します
record_observation 生の観測をエージェントのワーキングメモリに記録します
get_my_notes 呼び出し元エージェントのワーキングメモリのスクラッチパッドを読み取ります
update_my_notes 呼び出し元エージェントのワーキングメモリのスクラッチパッドを更新します
remember このセッションのエージェントのホットワーキングメモリにノートを追加します(TTL と件数に上限あり)
consolidate_memory 統合(「睡眠」)パスを実行します。期限切れのホット項目を追い出し、永続的なものを長期ファクトに繰り入れます
harmonize_memory エージェント間の信念ハーモナイゼーション(SHMR)を実行し、矛盾にフラグを立てます
list_memory_conflicts 検出された矛盾と、それぞれがどう解決されたかを一覧表示します
ツール 説明
create_goal 組織のゴールを作成します(会社、チーム、エージェント、またはタスクのレベル)
list_goals ゴールを、レベル、ステータス、集計された進捗とともに一覧表示します
update_goal_progress ゴールの進捗を設定します
create_approval ガバナンス対象のアクション(プラン終了、マージ、リリース、採用、カスタム)に対するボード承認を開きます
list_approvals 承認を一覧表示します。任意でステータスで絞り込めます
decide_approval 決定を記録します。承認、却下、修正依頼、再提出です
comment_approval ボード承認にコメントします
exit_plan_mode plan_exit 承認を開き(承認されるとそれを消費し)、会話をプランモードから切り替えます
agent_heartbeat 生存を報告します(alive、idle、stuck)。沈黙するとランタイムヘルスが recently-lost、次いで offline に切り替わります
list_runtime_health 各エージェントのランタイムヘルスを一覧表示します
list_agent_presence 各エージェントのプレゼンス(ヘルス、ライフサイクル、実行中およびキューの件数、キャパシティ)を一覧表示します
get_org_chart レポーティングツリーを読み取ります。CEO がルートにあり、reports_to によってネストされます
create_work_product チケットに紐づく永続的な成果物を作成します
save_work_product_revision 新しいリビジョンを保存します。並行編集で拒否させるには base_revision_id を渡します
list_work_products ワークプロダクトを一覧表示します。任意で 1 つのチケットに絞り込めます
get_work_product ワークプロダクトを、そのリビジョン履歴とともに読み取ります
create_runtime_profile 再利用可能なランタイムプロファイル(プロトコルファミリー、CLI コマンド、固定の起動引数)を定義します
list_runtime_profiles ワークスペースのランタイムプロファイルを一覧表示します

ホストがコードグラフリポジトリを提供したときだけ登録されます。インデックスは同梱の文法セット(Dart、JS/TS、PHP、Python、Rust、Zig、C/C++、Go、Java、Ruby、C#、Swift、Kotlin、R、Assembly、MATLAB、Ada)を対象とし、それ以外の言語のシンボルは含まれません。

ツール 説明
search_code インデックス済みのシンボルを、名前、シグネチャ、doc コメントで検索します(BM25 + セマンティックのハイブリッド)
code_symbol 完全一致した名前でシンボルを検索します。file:line とシグネチャを返します
code_callers あるシンボルを呼び出す、または依存するシンボル(入力エッジ)を一覧表示します
code_callees あるシンボルが呼び出す、または依存するシンボル(出力エッジ)を一覧表示します
code_impact あるシンボルの推移的な影響範囲を、指定した深さまで計算します
ツール 説明
create_ticket 設定されたプロバイダーにチケットを作成します
get_ticket id でチケットを 1 件取得します
list_tickets チケットを一覧表示します。任意でステータスまたは担当者で絞り込めます
update_ticket ステータス、タイトル、説明、優先度、ラベルを更新します(ステータスは in_progress / completed などのエイリアスを受け付けます)
assign_ticket チケットをエージェントまたはチーム(あるいはその両方)に割り当てます
reassign_ticket チケットを別のエージェントに再割り当てします
add_ticket_collaborator エージェントをチケットのコラボレーターとして招待します(そのスペースに追加されます)
comment_on_ticket チケットにコメントします
close_ticket チケットをクローズし(完了としてマーク)、任意で出力を付けられます
fail_ticket エラーメッセージとともにチケットを失敗としてマークします
delegate_ticket チケットをエージェントに委任し、追跡対象のチケットを作成します
ticket_pr_link PR ノード id によってチケットとプルリクエストをリンクまたはリンク解除します(action: link | unlink)
ticket_relation 2 つのチケット間の関係を追加または削除します — blocked_by、blocking、related_to、duplicate_of、duplicated_by、sub_issue_of、parent_of(action: add | remove)
list_ticket_relations チケットの親、サブイシュー、依存関係リンクを一覧表示します
ツール 説明
record_team_activity チームリーダーのアクティビティエントリをチケットに対して記録します
preview_trigger 仮定のイベントが開始するパイプライン実行をドライランします。何もコミットしません
submit_output 呼び出し元の現在のパイプライン実行に対する構造化出力ペイロードを送信します。その実行が宣言した出力スキーマに対して検証されます
ツール 説明
propose_orchestration 事前の 1 回の承認のために、構造化されたマルチエージェントのオーケストレーションプランを出力します。検証し、違反があれば返します
ツール 説明
list_feeds 登録された RSS/Atom フィードを一覧表示します
list_articles 記事を一覧表示します。任意でフィード、未読、保存済みで絞り込めます
get_article 記事を 1 件取得します
set_article_read 記事を既読または未読としてマークします
set_article_saved 記事を保存または保存解除します
refresh_feeds 有効なすべてのフィードを今すぐ再取得します

使い捨てのマシン — エンクロージャー内のブラウザや Linux デスクトップ、Android エミュレータ、iOS シミュレータ — を実行の内部から操作します。起動後に無条件で登録されます。マシンが実際に起動できるかどうかは、ツールが呼び出しごとに答えるプローブの問いです。1 つの会話で繰り返し呼び出すと 1 台のマシンが再利用されます。スクリーンショットは画像コンテンツとして返り、結果ごとに 1 枚という予算があり、抽出されたページ/UI のコンテンツは信頼できないデータとしてフェンスされます。4 つの use ツールと rig_close は enclosureControl のアクションクラスを宣言するため(use ツールは networkEgress と processSpawn も、mobile_use と ios_use は packageInstall も宣言します)、読み取り専用モードでは拒否されます。rig_list は何も宣言しません — ワークスペースの状態を読むだけです。サーフェスごとの動詞の語彙の全体はリグのリファレンスにあります。

ツール 説明
computer_use エンクロージャー内の VM で Linux デスクトップを操作します: 移動、クリック、ドラッグ、スクロール、入力、リサイズ、クリップボード、スクリーンショット
browser_use ヘッドレスの Chromium、Firefox、WebKit(engine)を操作します: ナビゲート、クリック、入力、抽出(a11y/DOM/コンソール)、クリップボード、スクリーンショット
mobile_use ADB 経由で Android を操作します: 検査/入力、スクリーンショット、アプリのインストール/起動/停止/リセット/アンインストール、ディープリンク、argv 形式のデバイスコマンド
ios_use WebDriverAgent/CoreSimulator を通じて iOS シミュレータを操作します: 検査/入力、スクリーンショット、アプリのインストール/起動/停止/アンインストール、ディープリンク、argv 形式のシミュレータプロセス
rig_list ワークスペースのリグを、サーフェス、ステータス、ディスプレイサイズ、コントローラーとともに一覧表示します
rig_close リグを破棄し、それが所有するマシンの状態を捨てます

カレンダーとミーティングには MCP ツールがありません。エージェントはあなたのカレンダー、ミーティング、文字起こし、アクションアイテム、決定を読むことはできません。アクションアイテムと決定を生成する要約は、エージェントが呼び出せるツールとしてではなく、内蔵の meeting_summary パイプラインとして実行されます。

ゲートはひとつのテーブル(ModeToolPolicy)から 2 回適用されます。1 回は Claude Code アダプターの MCP ディスパッチャーで、もう 1 回は内蔵ハーネスのレジストリです。ブロックされた呼び出しは理由を返します。

モード ツールサーフェス
chat 登録されたすべてのツール。許可リストなし
plan 厳選された許可リスト。ワークツリーへの書き込みと、create / assign / delegate のチケット動詞はありませんが、メモリ、アーティファクト、todo、submit_plan、exit_plan_mode、およびディスパッチされたチケットに対するチケット完了の動詞は許可されます
review 厳選された許可リスト: レビューへの参加、コミュニケーション、読み取り専用のコンテキスト取得、そして create_ticket と assign_ticket を含むチケット動詞の全体セット
orchestrate 厳選された許可リスト: 調査と読み取りのツール、および propose_orchestration、create_playbook、run_playbook。採用、分解、チケットの完了は承認後に決定的に行われ、実行の途中で行われることは決してありません

許可リストに関係なく、すべてのモードで許可されるもの:

セット ツール
メモリとアーティファクト search_memory, propose_fact, propose_policy, supersede_fact, supersede_policy, record_observation, update_my_notes, get_my_notes, list_memory_domains, list_policies, publish_artifact, revise_artifact, list_artifacts, get_artifact
コードグラフ search_code, code_symbol, code_callers, code_callees, code_impact
実行のメカニクス search_tool_bm25, list_my_tools, todo_write, todo_read

許可リストに載っているからといってツールが呼び出し可能になるわけではなく、逆もまた同様です。オペレーターへの質問のケイパビリティはハーネスのツール(ask_user)であるため、この MCP カタログには一切現れません。

ツールは requiresApproval を宣言できます。その場合ディスパッチャーは ApprovalPayload を構築し、ツールが実行される前に ConfirmationPort を通じてそれを提示します。cc_server がそのポートを配線するため、ゲートは有効です。

これを宣言している登録済みツール: create_ticket、update_ticket、assign_ticket、reassign_ticket、close_ticket、ticket_relation、create_goal、update_goal_progress、create_approval、decide_approval、comment_approval、create_work_product、save_work_product_revision、create_runtime_profile、install_skill、update_skill。

これとは別に、統合アクションガードレールは、空でない ActionClass セットを宣言するあらゆるツールをゲートします。承認者が接続されていない状態での prompt の決定は拒否されます。ガードレールを参照してください。

製品のすべてのケイパビリティがエージェントから到達できるわけではありません。以下にはツールがまったくないため、他所で参照されているのを見かけたかもしれない名前は “unknown tool” を返します:

ケイパビリティ 代わりにどこにあるか
エージェントの採用、解雇、編集 エージェント UI。hire_agent / fire_agent / update_agent ツールはありません
ワークスペースの作成 RPC 経由の workspace.upsert。これが所有権をシードして刻印します
プロジェクト(作成/一覧/更新/ファイル登録) チケット UI。プロジェクトはオペレーター向けのサーフェスです — プロジェクトを参照してください
オペレーターへのブロッキングな質問 MCP ではなくハーネスの ask_user ツール。会話内にフォームをレンダリングし、回答が来るまでブロックします
エージェントごとの診断 何もありません。doctor は存在しません — エージェントの診断を参照してください
カレンダーとミーティング 人間のクライアント専用の RPC(前述)