以下の内容はhttps://bluebirdofoz.hatenablog.com/entry/2025/05/25/230434より取得しました。


VisualStudioCodeのGitHubCopilotのドキュメントを読む その8(MCPサーバの使い方)

本日はVisualStudioCodeの学習枠です。
VisualStudioCodeのGitHubCopilotのドキュメントを読みながら実際に操作を試してみました。

前回記事

以下の前回記事の続きです。
bluebirdofoz.hatenablog.com

Use MCP servers in VS Code

以下のUse MCP servers in VS Codeドキュメントを日本語訳しながら実行時のキャプチャをしていきます。
code.visualstudio.com

MCPとは

Model Context Protocol(MCP)はAIモデルが外部ツール、アプリケーション、データソースを検出して操作するための標準化された方法を提供します。
VS CodeでAgentモードを使用して言語モデルにチャットプロンプトを入力すると、モデルは様々なツールを呼び出してファイル操作、データベースへのアクセス、要求に対するAPIの呼び出しなどのタスクを実行できます。

MCPはクライアント/サーバーアーキテクチャに従います。

MCPクライアント

MCPクライアント(VS Code など)はMCPサーバーに接続し、AIモデルの代わりにアクションを要求します

MCPサーバー

MCPサーバーは明確に定義されたインターフェイスを通じて特定の機能を公開する1つ以上のツールを提供します

MCP(Model Context Protocol)

MCP(Model Context Protocol)はツールの検出、呼び出し、応答処理などクライアントとサーバー間の通信のメッセージ形式を定義します。

例えばファイルシステムMCPサーバーにはファイルやディレクトリーの読み取り、書き込み、または検索のためのツールがあります。
GitHubMCPサーバーにはリポジトリの一覧表示、プルリクエストの作成、イシューの管理を行うためのツールが用意されています。

MCPサーバーはマシン上でローカルに実行することもリモートでホストすることもできます。
VS Codeは両方の構成をサポートしています。

このインタラクションを標準化することでMCPは各AIモデルと各ツール間のカスタム統合の必要性を排除します。
これにより、新しいMCPサーバーをワークスペースに追加するだけでAIアシスタントの機能を拡張できます。
詳しくは以下のModel Context Protocolの仕様を参照ください。
modelcontextprotocol.io

サポートされているMCP機能

VS CodeMCPサーバ転送用にローカルの標準入出力(stdio)、サーバ送信イベント(sse)、ストリーマブルHTTP(http)をサポートしています。
現在、3つのプリミティブ(ツール、プロンプト、リソース)のうち、サーバがCopilotのAgentモードに提供できるのはツールだけです。
ツールのリストと説明はリスト変更イベントを使用して動的に更新できます。VS Codeはroots(仕様)を使用して現在のワークスペースフォルダをサーバーに提供します。

MCP サーバーの検索

MCPの公式サーバーリポジトリMCPの汎用性を示す参照サーバー、公式サーバー、コミュニティ提供サーバーの出発点として最適です。
ファイルシステム操作、データベース操作、Web サービスなど、さまざまな機能についてサーバーを探索することができます。
github.com

MCPはまだ比較的新しい標準であり、エコシステムは急速に進化しています。
MCPを採用する開発者が増えるにつれてプロジェクトとの統合に使用できるサーバーやツールの数が増えることが予想されます。

VS CodeMCPサポートを有効にする

VS CodeMCPサポートを有効にするには chat.mcp.enabled の設定を有効にします。

MCPサーバーの追加

VS CodeMCPサーバーを追加するには複数のオプションがあります。

ワークスペースの設定

ワークスペースに .vscode/mcp.json ファイルを追加してワークスペースMCPサーバーを構成し構成をチームメンバーと共有します。

ユーザー設定

ユーザー設定でサーバーを指定して全てのワークスペースMCPサーバーを有効にします。

自動検出

Claude Desktopなどの他のツールで定義されたMCPサーバーの自動検出を有効にします。

構成済みのMCPサーバーのリストを表示および管理するにはコマンドパレットから[MCP: List Servers]コマンドを実行します。

MCP サーバーを追加するとAgentモードで提供されるツールを使用できるようになります。

ワークスペースMCPサーバーを追加する

特定のワークスペース用にMCPサーバーを構成するにはワークスペースのフォルダに .vscode/mcp.json ファイルを作成します。
これによりサーバー構成をプロジェクト・チーム・メンバーと共有できます。

ワークスペースMCPサーバーを追加するには以下の手順を実施します。

mcp.jsonの追加

ワークスペースに.vscode/mcp.jsonファイルを作成します。

mcp.jsonの追加

[Add Server]ボタンを選択して新しいサーバーのテンプレートを追加します。

VS CodeMCPサーバー構成ファイルのIntelliSense(入力支援)を提供します。
例えば[Command (stdio)]を選択した場合、以下のようにcommandとidを入力するとテンプレートが作成されます。


次の例はPerplexity MCPサーバーを構成する方法を示しています。
このサーバーではサーバーの起動時にVS CodeからAPIキーの入力を求められます。

{
  // 💡 Inputs are prompted on first server start, then stored securely by VS Code.
  "inputs": [
    {
      "type": "promptString",
      "id": "perplexity-key",
      "description": "Perplexity API Key",
      "password": true
    }
  ],
  "servers": {
    // https://github.com/ppl-ai/modelcontextprotocol/
    "Perplexity": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "server-perplexity-ask"],
      "env": {
        "PERPLEXITY_API_KEY": "${input:perplexity-key}"
      }
    }
  }
}

またはコマンドパレットから[MCP: Add Server]コマンドを実行します。

[Add Server]の操作と同じく追加するMCPサーバのタイプを選択してサーバ情報を入力します。
最後に[Worlkspace Settings]を選択するとワークスペースの .vscode/mcp.json ファイルが作成または追記されます。

ユーザー設定にMCPサーバーを追加する

全てのワークスペースMCPサーバーを構成するにはサーバー構成をユーザー設定に追加します。
これにより複数のプロジェクト間で同じサーバー構成を再利用できます。

設定の mcp 項目からユーザー設定の settings.json を開き、サーバー情報を入力します。

またはコマンドパレットから[MCP: Add Server]コマンドを実行し、サーバー情報を入力してから[User Settings]を選択して追加します。

MCP サーバーの自動検出

VS CodeはClaude Desktopなどの他のツールで定義したMCPサーバーを自動的に検出して再利用できます。
VS CodeMCPサポートを有効にするには chat.mcp.discovery.enabled の設定を有効にします。




以上の内容はhttps://bluebirdofoz.hatenablog.com/entry/2025/05/25/230434より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14