Error: Command is required for local servers.
結論
MCPサーバーの起動コマンドを渡していない状態。名前の後ろに -- で区切って書く。
確認した版
GitHub Copilot CLI v1.0.80
確認日
2026年8月22日
最終更新
2026年8月22日
根拠
実機で確認
エラー文字列
Error: Command is required for local servers.
⚠️ 標準エラーに出て、終了コードは 1 です。 設定は書き換えられません。
何が起きているか
MCP サーバーを追加するとき、そのサーバーを起動するコマンドを渡していません。
ローカルのサーバーは「起動して標準入出力でやり取りする」形なので、何を起動するのかを必ず示す必要があります。
⭐ メッセージの直後に、正しい書き方が例つきで出ます。
Usage:
copilot mcp add <name> -- <command> [args...]
v1.0.80 で実測した対応表です。
| 実行したもの | 結果 |
|---|---|
copilot mcp add my-server |
Error: Command is required for local servers. |
copilot mcp add my-server -- npx -y @upstash/context7-mcp |
追加される |
直し方
1. -- で区切ってコマンドを書く
copilot mcp add context7 -- npx -y @upstash/context7-mcp
⚠️ -- を省略しないこと。 これより後ろは「起動コマンドとその引数」として扱われます。省くと、Copilot 側のオプションと区別できません。
2. 環境変数を渡す場合
copilot mcp add github --env GITHUB_PERSONAL_ACCESS_TOKEN=ghp_xxx -- npx -y @modelcontextprotocol/server-github
⚠️ --env は -- より前に置きます。 後ろに書くと、起動コマンドの引数になってしまいます。
🔴 鍵をそのままシェル履歴に残さないこと。 環境変数から渡す形にしてください。
macOS / Linux
copilot mcp add github --env "GITHUB_PERSONAL_ACCESS_TOKEN=$MY_TOKEN" -- npx -y @modelcontextprotocol/server-github
3. HTTP のサーバーはコマンドではなく URL
起動するのではなく、既に動いているサーバーに繋ぐ形です。
copilot mcp add my-http --transport http https://example.com/mcp
⭐ この場合は起動コマンドが要りません。 エラーが出るのは「ローカル(stdio)」として扱われているときです。
4. 追加できたか確認する
copilot mcp list
再発防止
- ローカルの MCP は必ず
名前 -- 起動コマンドの形で書く --envや--transportは--より前に置く- 追加したら
copilot mcp listで確認する。設定ファイルを手書きしない(書式の検証が働かない)