最近、Claude DesktopやVS CodeでMCPを利用しています。最初、設定に苦労してましたが、要領がわかってきて比較的簡単にMCPを追加できるようになりました。Githubのプルリクエストを読み込ませてClaudeにレビューしてもらうのがお気に入りです。
Claudeデスクトップ + MCP いろいろ勘違いした
VS CodeのGithub CopilotエージェントモードでMCP使えるのに、Visual Studioではなぜ使えないのかと不思議に思っていましたが、いつの間にか使えるようになっていました。
MCP サーバーの使用 (プレビュー)
動作環境
Visual Studio 2022 17.14以上
設定方法
既にClaude DesktopでMCPが使えるようになっていれば、手間は大してかかりません。
中身の例としてはこんな感じです。
先頭のinputs、serversはclaude_desktop_config.jsonとは異なりますが、それ以外の各MCPに関する設定はコピペで動きました。
{
"inputs": [],
"servers": {
"filesystem": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": [
"C:\\Users\\hogehoge\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-filesystem\\dist\\index.js",
"C:\\・・・"
]
},
"github": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": [
"C:\\Users\\hogehoge\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-github\\dist\\index.js"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "・・・" }
},
}
}
これだけでVisual StudioのGitHub Copilot でエージェントモードを選択して、スパナのアイコンを開くとMCPの各ツール確認でき、実際使用できるようになりました。
補足
- inputsはMCP使用の際、入力を受け付けるためのもののようです。上記の例ではGitHubのパーソナルアクセストークンを定義ファイルの中に書いていますが、セキュリティ的にはよろしくなく、そういったものを外部から受け取る形にできるようです。(面倒なのでそんなことはしてないです。書き方もよくわかりません。「MCP サーバーの使用 (プレビュー)」のサンプルには記述されています。)
- .mcp.jsonはソリューション毎に分けて作成といったこともできるようです。これも面倒なので私は今のところはグローバル設定だけです。これも「MCP サーバーの使用 (プレビュー)」の「MCP 構成の自動検出のファイルの場所」に説明があります。
- ちなみにVS CodeはClaude Desktopの定義ファイル(claude_desktop_config.json)を自動で読み込んでおり、VS Codeの定義ファイルは触っていません。同じようにVisual Studioも読み込んでくれたら楽なのに。
- 以前はVisual Studioの拡張機能としてGithub Copilotを使用していましたが、Visual Studio 2022 17.10以降は機能として組み込まれているとのことです。私はアップグレード後、MCP以前にチャット機能自体が正常に動作しなくなりました。Github Copilotの拡張機能をアンインストールすることで正常に動作するようになりました。
設定するのも活用するのも不慣れで使い切れていませんが、誰もが簡単利用できる時が来るのもそう遠くないでしょうね。