モデル コンテキスト プロトコル (MCP) は、アプリケーションが大規模言語モデル (LLM) とコンテキストを共有する方法を定義するオープン標準です。 MCP サーバーをGitHub Copilot CLI(コマンドラインインターフェース)に接続することで、Copilotが外部ツール、データソース、およびサービスにアクセスできるようにします。 MCP の概要については、「モデル コンテキスト プロトコル (MCP) について」を参照してください。
MCP サーバーの追加
メモ
GitHub MCP サーバーは Copilot CLI に組み込まれており、追加の構成なしで既に使用できます。 次の手順では、他の MCP サーバーを追加します。
CLI 内で対話型の /mcp add コマンドを使用するか、構成ファイルを直接編集して、MCP サーバーを追加できます。
インストール手順、使用可能なツール、および特定の MCP サーバーの URL については、 GitHub MCP Registry を参照してください。
`/mcp add` コマンドの使用
-
対話型モードで、「
/mcp add」と入力します。 構成フォームが表示されます。 Tab キーを使用してフィールド間を移動します。 -
[ サーバー名] の横に、MCP サーバーの一意の名前を入力します。 これは、サーバーを参照するために使用する名前です。
-
[ サーバーの種類] の横にある対応する番号を押して、種類を選択します。 次の種類を使用できます。
-
**ローカル** または **STDIO**: ローカル プロセスを開始し、標準の入出力 (`stdin`/`stdout`) 経由で通信します。 どちらのオプションも同じように動作します。 **STDIO** は標準の MCP プロトコルの種類名です。VS Code、Copilotコーディングエージェント、およびその他の MCP クライアントと互換性がある構成にしたい場合は、これを選択してください。 -
**HTTP** または **SSE**: リモート MCP サーバーに接続します。 **HTTP** は、Streamable HTTP トランスポートを使用します。 **SSE** では、従来の HTTP と Server-Sent イベント トランスポートが使用されます。これは MCP 仕様では非推奨ですが、下位互換性のために引き続きサポートされています。 <!-- markdownlint-disable-line GHD046 -->
-
-
残りのフィールドは、選択したサーバーの種類によって異なります。
-
**ローカル**または **STDIO** を選択した場合:* [コマンド] の横に、任意の引数を含む、サーバーを起動するコマンドを入力します。 たとえば、「
npx @playwright/mcp@latest」のように入力します。 これは、JSON 構成ファイルのcommandプロパティとargsプロパティの両方に対応します。- [ 環境変数] の横で、必要に応じて、サーバーが必要とする環境変数 (API キーやトークンなど) を JSON キーと値のペアとして指定します。 たとえば、「
{"API_KEY": "YOUR-API-KEY"}」のように入力します。PATH変数は、環境から自動的に継承されます。 他のすべての環境変数は、ここで構成する必要があります。
- [ 環境変数] の横で、必要に応じて、サーバーが必要とする環境変数 (API キーやトークンなど) を JSON キーと値のペアとして指定します。 たとえば、「
-
**HTTP** または **SSE** を選択した場合:* [URL] の横に、リモート サーバーの URL を貼り付けます。 たとえば、「
https://mcp.context7.com/mcp」のように入力します。 * [HTTP ヘッダー] の横で、必要に応じて HTTP ヘッダーを JSON として指定します。 たとえば、「{"CONTEXT7_API_KEY": "YOUR-API-KEY"}」のように入力します。
-
-
[ ツール] の横で、サーバーから使用できるツールを指定します。
*入力してすべてのツールを含めるか、ツール名のコンマ区切りの一覧を指定します (引用符は必要ありません)。 既定値は、*です。 -
Ctrl+キーを押して構成を保存します。 MCP サーバーが追加され、CLI を再起動せずにすぐに使用できます。
構成ファイルの編集
`~/.copilot/mcp-config.json`で構成ファイルを編集して、MCP サーバーを追加することもできます。 これは、構成を共有したり、複数のサーバーを一度に追加したりする場合に便利です。
次の例は、ローカル サーバーとリモート HTTP サーバーを含む構成ファイルを示しています。
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {},
"tools": ["*"]
},
"context7": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "YOUR-API-KEY"
},
"tools": ["*"]
}
}
}
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {},
"tools": ["*"]
},
"context7": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "YOUR-API-KEY"
},
"tools": ["*"]
}
}
}
MCP サーバー構成の詳細については、 モデル コンテキスト プロトコル (MCP) を使用したGitHub Copilotコーディング エージェントの拡張 を参照してください。
MCP サーバーの管理
Copilot CLI の次の /mcp コマンドを使用して、構成された MCP サーバーを管理できます。
-
**構成済みの MCP サーバーを一覧表示します。** コマンド `/mcp show`を使用します。 これにより、構成されているすべての MCP サーバーとその現在の状態が表示されます。 -
**特定のサーバーに関する詳細を表示します。** コマンド `/mcp show SERVER-NAME`を使用します。 指定したサーバーの状態と、指定したサーバーが提供するツールの一覧が表示されます。 -
**サーバーの構成を編集します。** コマンド `/mcp edit SERVER-NAME`を使用します。 -
**サーバーを削除します。** コマンド `/mcp delete SERVER-NAME`を使用します。 -
**サーバーを無効にする:** コマンド `/mcp disable SERVER-NAME`を使用します。 無効なサーバーは構成されたままですが、現在のセッションの Copilot では使用されません。 -
**以前に無効にしたサーバーを有効にします。** コマンド `/mcp enable SERVER-NAME`を使用します。
MCP サーバーの使用
MCP サーバーを追加すると、Copilot は、プロンプトに関連する場合にそのサーバーが提供するツールを自動的に使用できます。 MCP サーバーと特定のツールをプロンプトで直接参照して、それらが使用されていることを確認することもできます。
詳細については、次を参照してください。
-
[AUTOTITLE](/copilot/concepts/about-mcp) -
[AUTOTITLE](/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp) -
[AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp)