test-by-mcpc-cli について
リリース版 `mcpc 0.7.x` CLIで稼働中のMCPサーバーをテストするスキルです。運用担当者向けに、セッション単位の検査、スクリプトテスト、通信やプロトコルの問題診断を案内し、サーバーやクライアントの構築は対象外です。
主な機能
- 01セッション単位の接続
- 02stdioとStreamable HTTPのテスト
- 03ツール、プロンプト、リソースの検査
- 04JSONによるスモークテスト
- 05タスクとプロトコルバージョンの検証
活用シーン
- 01リリース前のローカルサーバー検証
- 02stdioとHTTPのデプロイ比較
- 03CIスモークテストの自動化
- 04認証や通信障害の診断
MCP 対応
`mcpc`を使い、stdioまたはStreamable HTTP経由でMCPサーバーに接続し、公開機能を検査・テストします。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ yigitkonur/ skills-by-yigitkonur --skill test-by-mcpc-cliインストール後、Claude Code で/test-by-mcpc-cliを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/commands/quick-reference.mdreferences/examples/real-world-workflows.mdtesting-recipes.mdreferences/guides/architecture.mdasync-tasks.mdauthentication.mdbridge-internals.mdcapability-coverage.mdci-cd-integration.mdcleanup-maintenance.mddiscovery-search.mdeverything-server.mdhttp-testing.mdinstallation.mdprotocol-versions.mdproxy-testing.mdscripting-automation.mdsession-management.mdskills-testing.mdstdio-testing.mdtool-resource-testing.mdx402-payments.mdreferences/patterns/argument-parsing.mdauth-precedence.mdconfig-resolution.mddata-model.mdjq-patterns.mdlogging-debugging.mdnotification-handling.md詳細
mcpc で MCP サーバーをテストする
mcpc 0.7.x を、stdio または Streamable HTTP を使用するあらゆる MCP サーバー向けの、オペレーターが操作するハーネスとして使用します。このスキルでは、リリース済み CLI の仕様、セッションを先頭に置くコマンド形式、JSON スクリプト、タスク実行、プロトコルバージョンの確認、スキル拡張の検証、クリーンアップを扱います。サーバーやクライアント自体の作成は対象外です。
このスキルを使う場面
- stdio または Streamable HTTP で実際の MCP サーバーに接続し、
mcpc connect … @sessionを使用して稼働中の機能を検証する場合 mcpcからツール、プロンプト、リソース、ディレクトリリソース、テンプレート、スキル、ログ、サブスクリプション、または指示を調べる場合- リリース済みの
mcpc 0.7.xCLI を使用して、認証、プロキシ、クリーンアップ、タスク、プロトコルバージョン、またはトランスポートに関する問題を再現する場合 - 終了コードと
isErrorに関する CI アサーションなど、--jsonモードで再現可能なスモークテストをスクリプト化する場合 - リリース検証中に、ローカルの stdio サーバーとデプロイ済みの Streamable HTTP ターゲットを比較する場合
- 0.2.0 より前のターゲット先行型の例や、廃止された 0.2.x 時代のコマンドを現在の構文に置き換える場合
このスキルを使わない場面
- サーバーコードを作成またはリファクタリングする場合 → mcp-use サーバーには
build-mcp-use-serverを使用します。生の@modelcontextprotocol/sdkサーバーについては、SDK 独自のドキュメントに従ってください - クライアント/エージェントコードを作成またはリファクタリングする場合 → 対象外です。このスキルで操作するのは
mcpcのみです - CLI テストの範囲を超えるエージェント品質/堅牢化/コンテキスト予算の監査を行う場合 →
audit-agentic-mcpを使用します - 既存の v1 サーバーを v2 に移行する場合 → 対象外です。SDK 独自の移行ガイドに従ってください
信頼できる情報源
- 実行中の CLI を確認します。
mcpc --versionの出力は0.7.xである必要があります。以前の 0.2.x~0.6.x の構文は一部重複しますが、スキル、補完、ディレクトリリソース、x402 レシート、終了コード、ログインフラグに違いがあります。0.2.0 より前の構文は構造が異なります。 - ドキュメントと
mcpc --helpの内容が異なる場合は、実際にインストールされているバージョンでmcpc help <command>を実行した結果を優先してください。mcpc help --skill(またはmcpc --skill)を実行すると、アップストリーム独自のエージェントガイドが表示されます。 - このスキルは
0.7.0に対して検証済みであり、https://research-mcp.yigitkonur.com/mcp(mcp-researchpowerpack v9)および stdio と Streamable HTTP 経由の@modelcontextprotocol/server-everythingに対してライブテスト済みです。 mcpcが見つからない、古いバージョンである、または設定の形式が正しくない場合は、まずreferences/guides/installation.mdを確認してください。最初に CLI の基本的な使用経路を確立し、コマンドをそのまま実行して動作することを確認してから、ラッパーを再度追加してください。
要点となるルール
以下のルールは、後述するすべてのワークフローに適用されます。それぞれ 0.7.0 で実機検証済みです。違反は、最もよくある失敗の原因です。
| # | ルール | 理由 |
|---|---|---|
| 1 | MCP 操作の前に、必ず名前付きの @session に connect する | mcpc はセッションを先に指定する方式です。ターゲットを先に指定する単発コマンドはありません |
| 2 | セッションは URL ではなく名前をキーにして再利用されます | connect <url> @existing は既存セッションを再利用します。connect <url> @new は独立した別のセッションを作成します。@name を省略すると、サーバーごとに名前が自動生成されて再利用されます(0.7.0 では先頭と末尾のアンダースコアは削除されます) |
| 3 | 出力形式と合わせて終了コードを解釈します。1 は CLI/セッションの失敗(および grep の該当なし)、2 は stdout 上の MCP isError:true 結果、または stderr 上のタイムアウト/結果なし {error,code} のいずれかです。3/4 は文書化されたネットワーク/認証コードですが、この監査では再現されませんでした | 終了コードが示すのは大まかな分類であり、正確な原因ではありません。両方のストリームを取得して JSON を解析してください |
| 4 | 到達不能なターゲットへの接続試行は、ライブではない connecting または reconnecting セッションを作成しながら、終了コード 0 を返すことがあります | connect の成功は「レコードが作成された」ことを意味する場合があり、「ハンドシェイクが成立した」ことを意味するとは限りません。正確な名前でステータスを確認し、実際のコマンドを実行してください |
| 5 | 引数なしの mcpc clean は古いデータのみを削除します。名前付きターゲット(clean sessions、clean logs、clean profiles)は、ライブのものも含め、その種類のレコードをすべて削除します | 共有マシンでは mcpc clean all と名前付きターゲットは破壊的な操作です |
| 6 | stdio または Streamable HTTP ターゲットのみを使用します | mcpc 0.7.x には、HTTP+SSE をテストするためのファーストクラスの経路はありません |
| 7 | 保存済み OAuth が結果に影響しないよう、匿名 HTTP テストを強制するには --no-profile を使用します | プロファイルは認証情報を暗黙的に注入します。匿名で再現するには明示的なオプトアウトが必要です |
| 8 | ツールが task:required の場合、--task または --detach を追加するまで、通常の tools-call は失敗します。また 0.7.x は、タスク非対応のツール/サーバーに対して暗黙にフォールバックせず、明示的にエラーになります | エラーが仕様です。再試行するのではなく、エラーを確認してください |
| 9 | デタッチした結果は tasks-result <taskId> で取得します。これはプロセスの起動をまたいで機能します。tasks-get が返すのはステータスのみです | キャンセル済みタスクに対する tasks-result は、正しく “has no result stored” で失敗します(終了コード 2) |
| 10 | ブリッジの失敗と stdio 子プロセスの失敗を区別します。停止したブリッジは次のコマンドで自己修復しますが、停止した stdio 子プロセスは ping でのみ自己修復します。それ以外のコマンドは mcpc restart @session まで Not connected(終了コード 2)で失敗します | JSON の pid はブリッジを示します。ステータスは誤解を招く形で live のままになることがあります。また、再起動するとタスクと追加したツールは失われますが、サブスクリプションは復元されます |
| 11 | エンドポイントで信頼できない証明書が実際に使われている場合に限り、--insecure を使用します | 正当な TLS のリグレッションが隠れてしまいます |
| 12 | tools-get の Input: にある型注釈を、出力された「Call example」より優先してください。この例では配列の引数が通常の文字列として表示されることがあります | array<string> フィールドに urls:='"x"' を指定すると、ツール自身のスキーマ検証で失敗します |
| 13 | x402 のウォレットのインポート/削除、署名、承認、--x402 呼び出しは、金融/認証情報に関わる操作として扱います。状態を隔離し、使い捨ての Base Sepolia ウォレットで x402 init を優先し、_meta["x402/payment-response"] で決済レシートを確認してください | upto は MAX_UINT256 を承認する場合があり、呼び出しによって資金/ガスが消費されることがあります。0.7.x がキーをインポートできるのは位置引数の argv 経由のみなので、通常のテストで本番用の実キーをインポートしないでください |
使用を一切認めない古い構文:
mcpc mcp.example.com tools-list # pre-0.2.0 target-first — drop
mcpc mcp.example.com connect @demo # pre-0.2.0 — drop
mcpc --clean=sessions # pre-0.2.0 flag — use: mcpc clean sessions
mcpc @demo tools # shorthand aliases removed in 0.3.0 — use tools-list
mcpc shell @demo # shell removed in 0.4.0 — no replacement
references/patterns/session-first-syntax.md を参照して、現在の形式に置き換えてください。生の JSON-RPC メソッド名はコマンドのエイリアスとして使用できます(tools/list、logging/setLevel など)。0.7.0 では、mcpc help tools/list はエラーにならず、コマンドのヘルプを正しく表示します。まずハイフン区切りの CLI 形式を教えてください。
最小限の読み込み対象
デフォルトではスキル全体を読み込まないでください。まず1つのバンドルを選び、タスク上必要な場合にのみ範囲を広げてください。
| 分岐 | 最初に読むもの |
|---|---|
| リモート Streamable HTTP | references/commands/quick-reference.md、references/guides/http-testing.md |
| ローカル stdio | references/commands/quick-reference.md、references/guides/stdio-testing.md |
| ツール、プロンプト、リソース、テンプレート、または grep の要件 | references/guides/discovery-search.md、references/guides/tool-resource-testing.md |
| 非同期タスクまたは Everything サーバーの動作 | references/guides/async-tasks.md、references/guides/everything-server.md |
| OAuth またはヘッダー | references/guides/authentication.md、references/patterns/auth-precedence.md |
| ローカルプロキシ | references/guides/proxy-testing.md |
| x402 決済 | references/guides/x402-payments.md、references/patterns/auth-precedence.md |
| CI/スクリプトによるスモークテスト | references/guides/ci-cd-integration.md、references/guides/scripting-automation.md、references/patterns/output-formatting.md |
| プロトコルバージョンまたはスキルの拡張 | references/guides/protocol-versions.md、references/guides/skills-testing.md |
| 障害の診断または破壊的なリセット | references/troubleshooting/common-errors.md、続けて障害への対応に必要な場合のみ references/patterns/logging-debugging.md または references/guides/cleanup-maintenance.md |
標準的なワークフロー
1. 構文ファミリーを確認する
mcpc --versionの出力が0.7.xであることを確認します。- 例では
mcpc connect <server-or-file:entry> @sessionの形式を使用します。 - クォート、TTY、またはセッション状態を損なう可能性のあるラッパーではなく、
mcpcを直接使って仕様を検証します。
2. 安定したセッションに接続する
再利用、クリーンアップ、または古い状態の診断が実際の目的である場合に限り、セッション一覧を確認してください。それ以外の場合は、選んだ名前で新しい connect を実行してください。
# Remote URL; https:// is added automatically for non-local hosts
mcpc connect research-mcp.yigitkonur.com/mcp @research
# Localhost keeps http:// by default
mcpc connect 127.0.0.1:3011/mcp @everything-http
# Stdio via mcpServers config entry
mcpc connect /tmp/everything-mcp.json:everything @everything-stdio
OAuth プロファイルが保存されているマシンで匿名 HTTP テストを行う場合は、--no-profile を使います。同じ @name で connect を再実行するとセッションが再利用され、新しい @name を使うと常に2つ目のセッションが作成されます(ルール2)。到達できないターゲットでも終了コード 0 が返されることがあるため、接続準備完了と判断する前に、名前が完全一致するセッションの状態が live であることを確認してください(ルール4)。
既存のセッションを確認する場合は、一覧全体を出力するのではなく、検索対象を1つの名前に絞ってください。
mcpc
mcpc --json | jq '.sessions[] | select(.name == "@research")'
古いセッションの状態が live でない場合は、スモークテストに再利用しないでください。mcpc restart @session を実行するか、新しい名前で新規セッションを作成してください。mcpc restart @session が Session not found(終了コード1)を返した場合は、その名前での再試行をやめ、直ちに新しいセッションを作成してください。
3. 詳細なテストの前に確認する
mcpc @research
mcpc @research help
mcpc @research grep search
mcpc @research tools-list --full
mcpc @research resources-list
mcpc @research resources-directory-read <uri>
mcpc @research prompts-list
mcpc @research skills-list
mcpc @research skills-get <skill> [file]
負荷の大きい jq パイプラインを使う前に、help と grep を優先してください。mcpc @research のバナーには、サーバーのメタデータ(title、description、websiteUrl)とネゴシエートされた MCP プロトコルバージョンが表示されます。2026-07-28 の接続では server-discover も使えます(references/guides/protocol-versions.md)。受け入れ条件でプロンプト、リソース、またはテンプレートが明示的に求められている場合は、後で読み込み対象を広げるのではなく、最初の確認時にそれらの一覧取得も追加してください。
4. スキーマと引数の形式を検証する
mcpc @research tools-get web-search
mcpc --json @research tools-get web-search | jq '.inputSchema'
mcpc @research tools-get web-search --schema ./expected-tool-schema.json
--schema/--schema-mode は tools-get と tools-call のみを対象とします。prompts-get にはスキーマフラグがありません。クライアント側のスキーマ不一致では終了コード 1 が返されます(サーバーには到達しません)。key:=value は引き続き使えますが、配列やオブジェクトはインライン JSON リテラルまたは完全な JSON ペイロードとして送信してください。クォートの扱いに関するエッジケースについては references/patterns/argument-parsing.md を参照してください。
5. 宣伝されている機能を実際に確認する
capabilitiesだけを信用しないでください。サーバー情報とツールのメタデータを確認し、実際に1回呼び出してください。
mcpc --json @research | jq '.capabilities'
mcpc --json @everything-http tools-list | jq '.[] | {name, taskSupport: (.execution.taskSupport // "unspecified")}'
- サーバー情報に
completionsが表示される場合、補完(completion/complete)のサポートが宣言されています。上流のmcpcには、専用のセッションコマンドがあります:mcpc @session completion-complete prompt|resource <ref> [arg:=val ...]。 - mcpcは
sampling、roots、elicitationを宣言しないため、Everythingのようにデモ用ツールを条件付きで登録するサーバーでは、それらのツールはまったく公開されません。 - capabilitiesにタスクが表示される場合も、ツールごとの
execution.taskSupportを確認し、自動化を組む前に--taskまたは--detachを使って1回呼び出し、task:requiredを検証してください。
6. 必要な機能を実際に試す
mcpc --json @research tools-call web-search 'queries:=["OpenAI MCP"]'
mcpc @everything-http prompts-get args-prompt city:=Paris state:=Texas
mcpc @everything-http resources-read demo://resource/static/document/features.md
mcpc @everything-http resources-directory-read demo://resource/directory/
mcpc @everything-http resources-subscribe demo://resource/dynamic/text/1 /tmp/text-sync.json
mcpc @everything-http logging-set-level debug
resources-subscribeには対象ファイルが必要で、更新内容をそのファイルに同期します。logging-set-levelでは、MCP 2026-07-28に関する非推奨の警告が表示される場合がありますが、現在の呼び出しは成功しています(終了コード0)。⚠より後も確認してください。0.7.0では、人間向けの出力で重複する構造化コンテンツが折りたたまれ、--jsonの使用を促すヒントが表示されます。
7. JSONペイロードを正とする
RESULT=$(mcpc --json @research tools-call web-search 'queries:=["mcpc"]') || echo "exit=$?"
echo "$RESULT" | jq '.isError // false'
0.5.0以降、isError:trueの結果は終了コード2も返すため、スクリプトでは終了コードを使って判定できます。ただし、失敗の詳細については引き続きペイロードを確認してください。有料のツール呼び出しでは、決済レシートが_meta["x402/payment-response"]の下に含まれます。JSONモードでは、人間向けの表示で省略されるフィールド(たとえば、アクティブなタスク、サブスクリプションの状態、実験的なcapabilitiesのペイロード)も表示されます。どちらのモードも、もう一方の構造を厳密に包含するものではないと考えてください。タイムアウトでも終了コード2が返ることがありますが、標準出力にisErrorペイロードが出力されるのではなく、標準エラーに{error,code}が出力されます(ルール3)。
8. タスクモードは意図を持って使う
mcpc @everything-http tools-list --full
mcpc @everything-http tools-call simulate-research-query topic:='"mcpc tasks"' ambiguous:=false --task
mcpc @everything-http tools-call simulate-research-query topic:='"mcpc tasks"' ambiguous:=false --detach
mcpc @everything-http tasks-get <taskId>
mcpc @everything-http tasks-result <taskId>
最終結果をインラインで取得する必要がある場合は、--taskを使用してください。すぐにtaskIdを取得し、後でtasks-resultを使って本文を取得する場合は、--detachを使用してください。別のプロセスからでも機能します。タスクをサポートしていないツールやサーバーでは、どちらのフラグも同期呼び出しにフォールバックせず、明確にエラーになります。
9. 明示的に終了またはクリーンアップする
mcpc close @research
mcpc clean
mcpc clean(引数なし)は古いデータのみを削除します。名前付きの対象を指定すると(clean sessions logsを含む)、その種類のレコードがすべて削除されます。これは、隔離されたMCPC_HOME_DIR内で意図的にリセットする場合にのみ使用してください(ルール5)。同じセッションに対してcloseとcleanを並行して実行しないでください。closeを繰り返すと、何もせず成功するのではなく、終了コード1が返ります。
機能の境界
mcpc 0.7.0で、ワークフローの主要機能としてテストできることとできないこと:
| 分類 | 対応範囲 |
|---|---|
| 主要機能 | stdioおよびStreamable HTTPトランスポート、ツール、プロンプト、リソース、ディレクトリリソース(resources-directory-read)、リソーステンプレート、ファイル同期サブスクリプション、ロギング、grep、プロキシ、x402のオンチェーン決済レシート、信頼性の高い終了コード仕様によるJSONスクリプト、タスクの全ライフサイクル(--task、--detach、tasks-list、tasks-get、tasks-result、tasks-cancel)、プロトコルバージョンの固定(--protocol-version、2024-10-07…2026-07-28)、公式MCP skills拡張(skills-list、skills-get <skill> [file])、引数補完(completion-complete) |
| 条件付き/部分対応 | server-discover(2026-07-28の接続のみ。それ以外では説明付きエラー)、roots/sampling(mcpcは意図的にこれらを宣言しないため、capabilityの有無に依存するデモ用ツールは登録されない)、logging-set-level(≤2025-11-25では動作しますが、2026-07-28の仕様では削除されています) |
| 主要機能ではないもの | HTTP+SSEトランスポートのテスト、CLIからのelicitationコマンド |
宣言されているcapabilitiesと実際のCLIコマンドの対応については、references/guides/capability-coverage.mdを参照してください。
リファレンスの案内
作業中の分岐に必要な最小限の関連資料を読んでください。
コアガイド
| ファイル | 読むタイミング |
|---|---|
references/guides/installation.md | mcpc のインストール(npm/bun/Homebrew/npx)、Node ≥22.12 の要件、バージョンの不一致、キーチェーンに関する注意点、または設定形式の混同について確認するとき。 |
references/guides/stdio-testing.md | file:entry 構文を使った mcpServers 設定からローカルの stdio サーバーをテストするとき、自動検出のセキュリティルール、stderr の取得、一括 --stdio のゲーティングについて確認するとき。 |
references/guides/http-testing.md | リモートまたは localhost の Streamable HTTP エンドポイントのテスト、パスの問題、TLS、ヘッダー、または --insecure について確認するとき。 |
references/guides/discovery-search.md | help、grep、リスト呼び出しを使って、ツール、リソース、ディレクトリリソース、プロンプト、スキル、指示を検出するとき。 |
references/guides/tool-resource-testing.md | ツール、プロンプト、リソース、ディレクトリリソース、テンプレート、ファイル同期サブスクリプションを実行し、ログを確認するとき。 |
references/guides/async-tasks.md | --task、--detach、tasks-*(tasks-result を含む)を使用するとき、またはタスクが必要なツールをデバッグするとき。 |
references/guides/authentication.md | OAuth(authorization-code、client-credentials、id-jag)、ベアラーヘッダー、トークン更新の耐障害性、プロファイル、コールバックフラグ、匿名モードについて確認するとき。 |
references/guides/session-management.md | セッションのライフサイクル、名前をキーとする再利用、アンダースコアのトリミング、ステートレスサーバー、ブリッジと子プロセスの復旧、複数セッションのワークフローについて確認するとき。 |
references/guides/cleanup-maintenance.md | 安全なクリーンアップ、古い項目のみの削除とすべて削除の違い、ハードリセット、logs コマンド、ローカルの mcpc のクリーンな状態の維持について確認するとき。 |
references/guides/proxy-testing.md | セッションをローカル MCP プロキシとして公開するとき:/health、ベアラー認証の適用、DNS リバインディング保護、サンドボックスでの使用、補完の転送。 |
references/guides/x402-payments.md | ウォレットの確認(mcpc x402)、支払い方式(auto/upto/exact)、決済レシート(_meta["x402/payment-response"])、x402 sign、--x402 のセッション動作について確認するとき。 |
references/guides/ci-cd-integration.md | CI スモークテスト、分離された MCPC_HOME_DIR、終了コードのアサーション、Node/CI イメージの要件(Node 20 は 0.4.0 でサポート終了)、クリーンアップトラップについて確認するとき。 |
references/guides/scripting-automation.md | シェル自動化のパターン、終了コードの契約、JSON の解析、再現可能なスクリプトについて確認するとき。 |
references/guides/everything-server.md | 条件付きツール登録を含め、公式 Everything リファレンスサーバーを使って現在の mcpc の動作を検証するとき。 |
references/guides/capability-coverage.md | 公表されている機能を実際の mcpc コマンドに対応付け、既知の不足を確認するとき。 |
references/guides/skills-testing.md | 公式 MCP スキル拡張機能(io.modelcontextprotocol/skills)をテストするとき:skills-list、skills-get <skill> [file]、マニフェストの検証、ディレクトリリソース。 |
references/guides/protocol-versions.md | プロトコルネゴシエーション、--protocol-version による固定、server-discover、JSON-RPC メソッドのエイリアス(help の解決を含む)について確認するとき。 |
references/guides/architecture.md | mcpc の高レベル設計、セッション優先のルーティング、機能ネゴシエーションについて確認するとき。 |
references/guides/bridge-internals.md | ブリッジプロセスのライフサイクル、内部の起動モデル、ブリッジと子プロセスの復旧(ping の例外を含む)、再接続時の注意点、ログの場所について確認するとき。 |
コマンド、例、トラブルシューティング
| ファイル | 読むタイミング |
|---|---|
references/commands/quick-reference.md | 正確な 0.7.0 の構文、フラグ、エイリアス、またはクリーンアップ形式をすぐに確認したいとき。 |
references/examples/real-world-workflows.md | Research Powerpack や Everything などの実際の対象について、エンドツーエンドのワークフローを確認したいとき。 |
references/examples/testing-recipes.md | スモークテスト、スキーマ、タスク、grep、クリーンアップ用の短いコピー&ペースト可能なチェックを確認したいとき。 |
references/troubleshooting/common-errors.md | 古い構文、不正な設定形式、タスク必須の失敗、期限切れのセッション、トランスポートの不一致に遭遇したとき。 |
パターンと高度な詳細
| ファイル | 次の場合に参照 |
|---|---|
references/patterns/session-first-syntax.md | 0.2.0 より前の例、削除されたエイリアス、またはワイヤープロトコルのメソッド名を現在の構文に置き換える場合。 |
references/patterns/argument-parsing.md | 配列、オブジェクト、インライン JSON、標準入力、および key:=value のエッジケースを引用符で囲む場合。 |
references/patterns/schema-validation.md | 回帰チェックで --schema/--schema-mode を使用してツールのスキーマを検証する場合。 |
references/patterns/config-resolution.md | mcpServers の設定形式、file:entry、自動検出、一括接続、URL の正規化について確認する場合。 |
references/patterns/auth-precedence.md | 明示的なヘッダー、名前付きプロファイル、デフォルトプロファイル、--no-profile、--x402 のいずれを選ぶか判断する場合。 |
references/patterns/output-formatting.md | 人間向けモードと JSON モード、stdout/stderr の振り分け、終了コードの仕様、isError について確認する場合。 |
references/patterns/jq-patterns.md | 標準の grep と help だけでは不十分な場合に、高度な JSON フィルタリングを行う場合。 |
references/patterns/tool-filtering.md | tools-list --json | jq のワークフローを使って grep を補完する場合。 |
references/patterns/logging-debugging.md | --verbose、logs コマンド、ブリッジログを使って失敗の原因を説明する場合。 |
references/patterns/notification-handling.md | list-changed 通知、file-synced サブスクリプション、サーバーログメッセージをテストする場合。 |
references/patterns/pagination-caching.md | 自動ページネーション、ステートレスキャッシュの TTL、ツールキャッシュの更新、動的な検出動作について確認する場合。 |
references/patterns/python-integration.md | 適切な returncode 処理を使い、Python のサブプロセスワークフローから mcpc を操作する場合。 |
references/patterns/data-model.md | セッション情報、タスクのステータス、キャッシュされたメタデータ、プロファイル、ストレージの基盤となる JSON 形式を確認する場合。 |
ガードレール
- 移行について明示的に説明する場合を除き、0.2.0 より前のターゲット優先構文、削除された短縮エイリアス、削除された
shellコマンドを説明しないでください。 mcpcで HTTP+SSE をテストするようユーザーに案内しないでください。代わりに Streamable HTTP または stdio を使用してください。tasks-getのステータス出力をタスクの結果として扱わないでください。デタッチされた本文はtasks-resultで取得してください。connectの終了コード0や緑色のバナーを、ハンドシェイクが確立している証拠として扱わないでください。到達不能なターゲットでもconnectingのまま、またはreconnectingに移行することがあるため、名前を正確に指定してステータスを確認し、機能を実際に試してください。- 表示された機能が常に CLI で十分にサポートされているとは限らず、デモ用ツールが見つからなくてもサーバーが壊れているとは限らないことに留意してください。mcpc では、広告されていない
sampling/roots/elicitation機能によって、ゲート付きツールが設計どおり非表示になります。 - 保存済みのプロファイルや稼働中のセッションがあるマシンでは、
mcpc clean allや、名前付きのcleanターゲットを安易に実行しないでください。引数なしのcleanのみが古い項目だけを対象とします。 - プロキシの
/healthは認証なしの稼働確認プローブとしてのみ扱ってください。ベアラートークンを付けた、または付けない実際の MCP リクエストを送信して、プロキシ認証を確認してください。 ⚠の非推奨警告を呼び出しの失敗と捉えないでください。現在の呼び出しの終了コードとペイロードを確認してください。