{"meta":{"title":"GitHub Copilot CLI 用の MCP サーバーを追加する","intro":"モデル コンテキスト プロトコル (MCP) サーバーを接続して追加のツールとコンテキストを提供することで、 Copilotの機能を拡張します。","product":"GitHub Copilot","breadcrumbs":[{"href":"/ja/enterprise-cloud@latest/copilot","title":"GitHub Copilot"},{"href":"/ja/enterprise-cloud@latest/copilot/how-tos","title":"方法"},{"href":"/ja/enterprise-cloud@latest/copilot/how-tos/copilot-cli","title":"Copilot CLI"},{"href":"/ja/enterprise-cloud@latest/copilot/how-tos/copilot-cli/customize-copilot","title":"Copilot CLI のカスタマイズ"},{"href":"/ja/enterprise-cloud@latest/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers","title":"MCP サーバーの追加"}],"documentType":"article"},"body":"# GitHub Copilot CLI 用の MCP サーバーを追加する\n\nモデル コンテキスト プロトコル (MCP) サーバーを接続して追加のツールとコンテキストを提供することで、 Copilotの機能を拡張します。\n\nモデル コンテキスト プロトコル (MCP) は、アプリケーションが大規模言語モデル (LLM) とコンテキストを共有する方法を定義するオープン標準です。 MCP サーバーを GitHub Copilot CLI に接続して、外部ツール、データ ソース、およびサービスに Copilot アクセスできます。 MCP の概要については、「[モデル コンテキスト プロトコル (MCP) について](/ja/enterprise-cloud@latest/copilot/concepts/context/mcp)」を参照してください。\n\n## MCP サーバーの追加\n\n> \\[!NOTE]\n> GitHub MCP サーバーはCopilot CLIに組み込まれており、追加の構成なしで既に使用できます。 次の手順では、他の MCP サーバーを追加します。\n\n組織または企業がレジストリ URL と許可リスト ポリシーを構成している場合、これらの設定は Copilot CLIに適用されます。 構成されたレジストリ URL は検出ソースとして表示され、許可リスト ポリシーで許可されているサーバーのみを実行できます。\n\nMCP サーバーは、次の方法で追加できます。\n\n* [\n  `/mcp add` コマンドの使用](#using-the-mcp-add-command)\n* [\n  `copilot mcp add` サブコマンドの使用](#using-the-copilot-mcp-add-subcommand)\n* [構成ファイルの編集](#editing-the-configuration-file)\n* [リポジトリごとの MCP サーバーの追加](#adding-per-repository-mcp-servers)\n* [レジストリからの検索とインストール (試験段階)](#searching-and-installing-from-the-registry)\n\nインストール手順、使用可能なツール、および特定の MCP サーバーの URL については、 [GitHub MCP レジストリ](https://github.com/mcp)を参照してください。\n\n### `/mcp add` コマンドの使用\n\n1. 対話型モードで、「 `/mcp add`」と入力します。 構成フォームが表示されます。 <kbd>Tab キー</kbd>を使用してフィールド間を移動します。\n\n2. \\[ **サーバー名] の**横に、MCP サーバーの一意の名前を入力します。 これは、サーバーを参照するために使用する名前です。\n\n3. \\[ **サーバーの種類] の**横にある対応する番号を押して、種類を選択します。 次の種類を使用できます。\n\n   * **ローカル** または **STDIO**: ローカル プロセスを開始し、標準の入出力 (`stdin`/`stdout`) 経由で通信します。 どちらのオプションも同じように動作します。\n     **STDIO** は標準の MCP プロトコルタイプ名であるため、構成を VS Code、 Copilot cloud agent、およびその他の MCP クライアントと互換性がある場合は、これを選択します。\n   * **HTTP** または **SSE**: リモート MCP サーバーに接続します。\n     **HTTP** は、Streamable HTTP トランスポートを使用します。\n     **SSE** では、従来の HTTP と Server-Sent イベント トランスポートが使用されます。これは MCP 仕様では非推奨ですが、下位互換性のために引き続きサポートされています。 <!-- markdownlint-disable-line GHD046 -->\n\n4. 残りのフィールドは、選択したサーバーの種類によって異なります。\n\n   * **ローカル**または **STDIO** を選択した場合:\n\n     * **\\[コマンド]** の横に、任意の引数を含む、サーバーを起動するコマンドを入力します。 たとえば、「 `npx @playwright/mcp@latest` 」のように入力します。 これは、JSON 構成ファイルの `command` プロパティと `args` プロパティの両方に対応します。\n     * \\[ **環境変数]** の横で、必要に応じて、サーバーが必要とする環境変数 (API キーやトークンなど) を JSON キーと値のペアとして指定します。 たとえば、「 `{\"API_KEY\": \"YOUR-API-KEY\"}` 」のように入力します。\n       `PATH`変数は、環境から自動的に継承されます。 他のすべての環境変数は、ここで構成する必要があります。\n\n   * **HTTP** または **SSE** を選択した場合:\n\n     * **\\[URL**] の横に、リモート サーバーの URL を貼り付けます。 たとえば、「 `https://mcp.context7.com/mcp` 」のように入力します。\n     * **\\[HTTP ヘッダー] の**横で、必要に応じて HTTP ヘッダーを JSON として指定します。 たとえば、「 `{\"CONTEXT7_API_KEY\": \"YOUR-API-KEY\"}` 」のように入力します。\n\n5. \\[ **ツール] の**横で、サーバーから使用できるツールを指定します。\n   `*`入力してすべてのツールを含めるか、ツール名のコンマ区切りの一覧を指定します (引用符は必要ありません)。 既定値は、`*` です。\n\n6. Ctrl<kbd></kbd>+<kbd>キー</kbd>を押して構成を保存します。 MCP サーバーが追加され、CLI を再起動せずにすぐに使用できます。\n\n### `copilot mcp add` サブコマンドの使用\n\n`copilot mcp add` サブコマンドを使用して、端末から MCP サーバーを追加できます。対話モードに入る必要はありません。 サーバーは、 `~/.copilot/mcp-config.json`でユーザー構成に追加されます。\n\nローカル (stdio) サーバーの場合は、 `--`後にコマンドを指定します。\n\n```shell copy\ncopilot mcp add SERVER-NAME -- COMMAND [ARGS...]\n```\n\nリモート (HTTP/SSE) サーバーの場合は、トランスポートを指定し、URL を指定します。\n\n```shell copy\ncopilot mcp add --transport http SERVER-NAME URL\n```\n\n追加のオプションを渡すこともできます。\n\n* `--env KEY=VALUE`: サーバーの環境変数を設定します。 複数の変数に対して繰り返します。\n* `--header \"HEADER: VALUE\"`: リモート サーバーの HTTP ヘッダーを設定します。 複数のヘッダーに対して同じ操作を繰り返します。\n* `--transport TRANSPORT`: トランスポートの種類 (`stdio`、 `http`、または `sse`) を設定します。 既定値は、`stdio` です。\n* `--tools TOOLS`: 有効にするツールを指定します。 すべてのツールに対しては `*`（既定値）、個別に指定する場合はカンマ区切りのリスト、どのツールも使用しない場合は `\"\"` を使用します。\n* `--timeout MS`: タイムアウトをミリ秒単位で設定します。\n\n#### 例示\n\nローカル stdio サーバーを追加します。\n\n```shell copy\ncopilot mcp add context7 -- npx -y @upstash/context7-mcp\n```\n\n環境変数を使用してローカル サーバーを追加します。\n\n```shell copy\ncopilot mcp add github -e GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_PAT -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server\n```\n\nリモート HTTP サーバーを追加します。\n\n```shell copy\ncopilot mcp add --transport http notion \\\n  https://mcp.notion.com/mcp\n```\n\n承認ヘッダーを持つリモート サーバーを追加します。\n\n```shell copy\ncopilot mcp add --transport http \\\n  --header \"Authorization: Bearer YOUR-TOKEN\" \\\n  stripe https://mcp.stripe.com\n```\n\n### 構成ファイルの編集\n\n`~/.copilot/mcp-config.json`で構成ファイルを編集して、MCP サーバーを追加することもできます。 これは、構成を共有したり、複数のサーバーを一度に追加したりする場合に便利です。\n\n次の例は、ローカル サーバーとリモート HTTP サーバーを含む構成ファイルを示しています。\n\n```json copy\n{\n  \"mcpServers\": {\n    \"playwright\": {\n      \"type\": \"local\",\n      \"command\": \"npx\",\n      \"args\": [\"@playwright/mcp@latest\"],\n      \"env\": {},\n      \"tools\": [\"*\"]\n    },\n    \"context7\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.context7.com/mcp\",\n      \"headers\": {\n        \"CONTEXT7_API_KEY\": \"YOUR-API-KEY\"\n      },\n      \"tools\": [\"*\"]\n    }\n  }\n}\n```\n\nMCP サーバー構成の詳細については、 [リポジトリの MCP サーバーを構成する](/ja/enterprise-cloud@latest/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers#writing-a-json-configuration-for-mcp-servers) を参照してください。\n\n### リポジトリごとの MCP サーバーの追加\n\nリポジトリに JSON ファイルを追加することで、特定のプロジェクトの MCP サーバーを構成できます。 これは、そのプロジェクトで作業している場合にのみサーバーを使用できるようにする場合や、MCP セットアップをリポジトリにコミットしてコラボレーターと共有する場合に便利です。\n\nCopilot CLI は、次の場所でプロジェクト レベルの構成を検索します。\n\n| Path                                           | 推奨される使用方法                                 |\n| ---------------------------------------------- | ----------------------------------------- |\n| `.mcp.json` (作業ディレクトリからリポジトリ ルートまでの任意のディレクトリ内) | ローカルまたは各チェックアウト単位の構成; 一般的にプロジェクトルートに配置される |\n| `.github/mcp.json`                             | リポジトリにコミットされた共有構成                         |\n\nGit リポジトリ内で Copilot CLI を開始すると、CLI は現在の作業ディレクトリからリポジトリ ルートまでを移動し、途中で MCP 構成ファイルを読み込みます。\n`.mcp.json`と`.github/mcp.json`の両方が同じディレクトリに存在する場合は、`.mcp.json`が優先されます。 サーバー名が競合する場合、作業ディレクトリに近いファイル内の定義が優先されます。 Projectレベルの定義も、`~/.copilot/mcp-config.json`の定義よりも優先されます。 相対信頼の詳細については、 [GITHUB COPILOT CLI コマンド リファレンス](/ja/enterprise-cloud@latest/copilot/reference/copilot-cli-reference/cli-command-reference#mcp-server-trust-levels) を参照してください。\n\nプロジェクト レベルのファイルでは、`mcpServers` に示されている `~/.copilot/mcp-config.json` のトップレベル オブジェクト、または各キーが MCP サーバー名であるトップレベルのみの形式を使用できます。 たとえば、この構成では `mcpServers` オブジェクトを使用します。\n\n```json copy\n{\n  \"mcpServers\": {\n    \"playwright\": {\n      \"type\": \"local\",\n      \"command\": \"npx\",\n      \"args\": [\"@playwright/mcp@latest\"]\n    }\n  }\n}\n```\n\n同じサーバーは、トップレベルのみの簡潔な形式でも構成できます。\n\n```json copy\n{\n  \"playwright\": {\n    \"type\": \"local\",\n    \"command\": \"npx\",\n    \"args\": [\"@playwright/mcp@latest\"]\n  }\n}\n```\n\n> \\[!NOTE]\n> Projectレベルの MCP サーバーは、最初の起動時にフォルダーの信頼を確認した後にのみ読み込まれます。 信頼されていないディレクトリでは、暗黙的にスキップされます。 フォルダーの信頼の詳細については、「 [GITHUB COPILOT CLI について](/ja/enterprise-cloud@latest/copilot/concepts/agents/copilot-cli/about-copilot-cli#trusted-directories)」を参照してください。\n\nプロンプト モード (`copilot -p`) では、現在のディレクトリが既に信頼されている場合、プロジェクト レベルの MCP サーバーが自動的に読み込まれます。 ディレクトリが信頼されていない場合、プロジェクト レベルの MCP サーバーは既定でスキップされます。 プロンプト モードでは対話型の信頼プロンプトを表示できないため、これらを読み込むには、 `GITHUB_COPILOT_PROMPT_MODE_WORKSPACE_MCP` 環境変数を `true` に設定します。 詳細については、「[GITHUB COPILOT CLI コマンド リファレンス](/ja/enterprise-cloud@latest/copilot/reference/copilot-cli-reference/cli-command-reference#environment-variables)」を参照してください。\n\n`.vscode/mcp.json`のVS Code ファイルは、Copilot CLIでは読み取りません。 サポートされていない最上位レベルのキー `servers`が使用されます。 既存の `.vscode/mcp.json` を CLI が受け入れる形式に移行するには、 [GITHUB COPILOT CLI コマンド リファレンス](/ja/enterprise-cloud@latest/copilot/reference/copilot-cli-reference/cli-command-reference#migrating-from-vscodemcpjson) を参照してください。\n\n### レジストリからの検索とインストール\n\n> \\[!NOTE]\n> `/mcp search` コマンドは、現在試験段階の機能です。 これを使用するには、Copilot CLI コマンド ライン オプションで`‑‑experimental`を開始するか、セッション中に`/experimental on`を入力します。\n\n対話型モードの GitHub コマンドを使用して[](https://github.com/mcp) サーバーを検出してインストールできます。 これにより、構成フォームに手動で入力することなく、使用可能なサーバーの参照、詳細の表示、インストールを行うことができます。\n\n組織がカスタム MCP レジストリ URL を構成している場合、 `/mcp search` は既定の GitHub レジストリではなく、そのレジストリに接続します。\n\n1. 対話型モードでは、 `/mcp search` 入力して星で上位サーバーを参照するか、特定のサーバーを検索する `/mcp search QUERY` します。 例えば次が挙げられます。\n\n   ```text\n   /mcp search context7\n   ```\n\n2. 一致するサーバーのキーボードナビゲーション可能な一覧が表示されます。 方向キーを使用して結果を参照します。\n\n3. サーバーを選択して構成フォームを開きます。 フォームには、レジストリからのサーバーの構成が事前に設定されています。 API キーやトークンなど、必要なフィールドを入力します。\n\n4. Ctrl<kbd></kbd>+<kbd>キー</kbd>を押して保存します。 サーバーが `mcp-config.json` に追加され、すぐに開始されます。\n\n## MCP サーバーの管理\n\n構成済みの MCP サーバーは、対話式モードの `/mcp` コマンドまたは端末からの `copilot mcp` サブコマンドを使用して管理できます。\n\n### 対話型モードでの `/mcp` コマンドの使用\n\n* **構成済みの MCP サーバーを一覧表示します。** コマンド `/mcp show`を使用します。 これにより、構成されているすべての MCP サーバーとその現在の状態が表示されます。\n\n* **特定のサーバーに関する詳細を表示します。** コマンド `/mcp show SERVER-NAME`を使用します。 指定したサーバーの状態と、指定したサーバーが提供するツールの一覧が表示されます。\n\n* **サーバーの構成を編集します。** コマンド `/mcp edit SERVER-NAME`を使用します。\n\n* **サーバーを削除します。** コマンド `/mcp delete SERVER-NAME`を使用します。\n\n* **サーバーを無効にする:** コマンド `/mcp disable SERVER-NAME`を使用します。 無効なサーバーは構成されたままですが、現在のセッションの Copilot では使用されません。\n\n* **以前に無効にしたサーバーを有効にします。** コマンド `/mcp enable SERVER-NAME`を使用します。\n\n### ターミナルからの `copilot mcp` サブコマンドの使用\n\nまた、対話型モードに入らずに、ターミナルから MCP サーバーを管理することもできます。\n\n* **構成されているすべてのサーバーを一覧表示します。**\n\n  ```shell copy\n  copilot mcp list\n  ```\n\n  すべての構成ソース (ユーザー、ワークスペース、プラグイン) のサーバーを一覧表示します。 JSON 出力の `--json` を追加します。\n\n* **サーバーの詳細を表示します。**\n\n  ```shell copy\n  copilot mcp get SERVER-NAME\n  ```\n\n  サーバーの種類、状態、使用可能なツールを表示します。 JSON 出力の `--json` を追加します。\n\n* **サーバーを削除します。**\n\n  ```shell copy\n  copilot mcp remove SERVER-NAME\n  ```\n\n  ユーザー構成からサーバーを削除します。\n\n## MCP サーバーの使用\n\nMCP サーバーを追加すると、 Copilot はプロンプトに関連する場合に提供されるツールを自動的に使用できます。 MCP サーバーと特定のツールをプロンプトで直接参照して、それらが使用されていることを確認することもできます。\n\n## 詳細については、次を参照してください。\n\n* [モデル コンテキスト プロトコル (MCP) について](/ja/enterprise-cloud@latest/copilot/concepts/context/mcp)\n* [モデル コンテキスト プロトコル (MCP) サーバーを使用した GitHub Copilot Chatの拡張](/ja/enterprise-cloud@latest/copilot/how-tos/provide-context/use-mcp-in-your-ide/extend-copilot-chat-with-mcp)\n* [リポジトリの MCP サーバーを構成する](/ja/enterprise-cloud@latest/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers)"}