CHAP Coordinator について
CHAP Coordinator の MCP サーバーアダプターで、39 のメソッドを chap. プレフィックス付きのツールとして公開します。AI エージェントの作業に対する人間の承認、編集、オーバーライド、エスカレーションを記録し、SQLite ファイルへ永続化できます。監査可能な意思決定の履歴が必要な開発者を対象としています。
主な機能
- 0139 の CHAP メソッドを MCP ツールとして公開
- 02環境変数による SQLite 永続化の設定
- 03初回から監査チェーンを有効にするデフォルトプロファイル
- 04stdio で動作し、他の MCP トランスポートにも対応
- 05JSON Schema によるツール入力の定義
活用シーン
- 01Claude Desktop や Claude Code で人間の承認やオーバーライドを記録
- 02複数のワークスペースにわたる AI エージェント作業の監査記録の保持
- 03MCP クライアントからの CHAP ワークスペースの照会と管理
MCP 対応
本プロジェクトは MCP サーバーであり、CHAP Coordinator の全メソッドを MCP ツールとして公開し、tools/list と tools/call のリクエストを処理します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @brightbeamai/chap-coordinator-mcpCHAP_DB_PATHPath to a SQLite file. Without it the coordinator runs in memory and workspaces are lost when the client restarts.CHAP_PROFILESComma-separated CHAP profiles enabled on new workspaces. Defaults to Core plus review, whisper, deliberation, handoff, control, routing, modes and audit-scitt.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
39掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| mode | enum | いいえ | ここで作成するタスクのデフォルトモードです。modes/1.0 では、呼び出し側がどの値を渡しても、試行モードのタスクでは review_required が true に設定されます。この実装では、'shadow' と 'production' はタスクに記録されますが、それ以上の動作はありません。shadow | trial | production |
| profiles | array | いいえ | 有効にするプロファイル識別子。例:['core/1.0', 'review/1.0']。ワークスペースに記録されます。有効化によって動作が変わるプロファイルは 2 つあります。modes/1.0 は試行モードのタスクにレビューを必須とし、audit-scitt/1.0 はハッシュリンクチェーンを有効にします。 |
| workspace | string | いいえ | 作成するワークスペース ID。省略すると自動生成されます。 |
| mode_ceiling | enum | いいえ | このワークスペース内のタスクが要求できる最高モードです。この上限を超える task.create は -32040 で拒否されます。上限は後から chap.control.set_mode_ceiling で変更できます。shadow | trial | production |
詳細
@brightbeamai/chap-coordinator-mcp
CHAP Coordinator 用の MCP サーバーアダプターです。Coordinator
インスタンスをラップし、すべての CHAP メソッドを MCP
ツールとして公開するため、あらゆる MCP クライアント(Claude Desktop、Cursor、Claude Code など)から
CHAP ワークスペースを直接操作できます。
仕様の対象:MCP 2026-07-28。MCP 2025-11-25 クライアントにも対応しています · CHAP 0.3。
サーバーとして実行する
このパッケージには stdio サーバーが含まれているため、コードを書かずに MCP クライアントから CHAP を利用できます。クライアントの接続先に指定してください。
{
"mcpServers": {
"chap": {
"command": "npx",
"args": ["-y", "@brightbeamai/chap-coordinator-mcp"],
"env": { "CHAP_DB_PATH": "~/chap.db" }
}
}
}
39 個すべてのメソッドが、chap.<method> という名前のツールとして提供されます。設定に使用する環境変数は 2 つです。
| 変数 | 効果 |
|---|---|
CHAP_DB_PATH | SQLite ファイルのパスです。指定しない場合、コーディネーターはメモリ内で動作し、クライアントの再起動時にすべてのワークスペースが失われます。 |
CHAP_PROFILES | 新しいワークスペースに適用するプロファイルをカンマ区切りで指定します。デフォルトは Core に加えて review、whisper、deliberation、handoff、control、routing、modes、audit-scitt です。これにより、最初のエントリーから監査チェーンが有効になります。 |
永続化には、コーディネーターのオプションのネイティブ依存関係である
better-sqlite3 が必要です。CHAP_DB_PATH が設定されていて、依存関係を読み込めない場合、サーバーはその旨を通知して終了します。メモリ内で起動して、保持するよう指示された決定を破棄することはありません。
このサーバーは、MCP レジストリ
にも io.github.BrightbeamAI/chap として登録されています。
インストール
npm install @brightbeamai/chap-coordinator-mcp
Node 20 以降が必要です。ランタイム依存関係:@brightbeamai/chap-coordinator、
@modelcontextprotocol/sdk、zod。バイナリ名は chap-mcp-server です。
クイックスタート
import { Coordinator } from "@brightbeamai/chap-coordinator";
import { makeChapMcpServer } from "@brightbeamai/chap-coordinator-mcp";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const coord = new Coordinator({
defaultProfiles: ["core/1.0", "review/1.0", "audit-scitt/1.0"],
});
const server = makeChapMcpServer(coord, { name: "chap", version: "0.3.3" });
await server.connect(new StdioServerTransport());
返される Server は、tools/list と tools/call のハンドラーが事前登録された、公式 MCP SDK の
Server クラスです。任意の MCP トランスポート(stdio、Streamable HTTP など)を接続できます。
実行可能なリファレンスサーバーは
reference/mcp-server-ts/ にあります。
公開される内容
39 個すべての CHAP メソッドが、chap.<method> という名前の MCP ツールになります。各
ツールの inputSchema は、対応するメソッドのパラメーターを表す JSON Schema です。ツールの説明は LLM での利用に適するよう調整されています。
chap. プレフィックスにより、クライアントが同時に読み込んでいる可能性のある他の MCP サーバーとの名前の衝突を避けられます。
アーキテクチャ
- 1 つの Coordinator、1 つの MCP サーバー。 複数のワークスペースは Coordinator 内で処理します(ワークスペースには ID でアクセスできます)。MCP レイヤーはステートレスであり、すべてのツール呼び出しを
coord.dispatch()経由でルーティングします。 - スキーマの一元管理。 ツールの入力は JSON Schema(Zod ではありません)で記述され、MCP レイヤーで再検証せずにそのまま Coordinator に渡されます。Coordinator 自身の dispatch がパラメーターを検証し、仕様に準拠した JSON-RPC エラーコードを返します。アダプターはこれを MCP ツールエラーとして表面化させます。
- 認証は後回し。 アダプターは認証なしで提供されます。MCP の OAuth 2.1 認証モデルはアダプター内部ではなく、Streamable HTTP トランスポートに適用されます。
テスト
npm test
統合テストでは、SDK の InMemoryTransport.createLinkedPair()
を使ってラップした Coordinator をエンドツーエンドで動作させ、主要な各プロファイルをテストします。
関連項目
- 統合の解説:
integrations/CHAP-with-MCP.md - 5 分でできるチュートリアル:
examples/drive-chap-from-claude-desktop.md - Python 版:
chap_coordinator.transports.mcp_server
ライセンス
Apache 2.0。親リポジトリの LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。