Visual StudioでMCPサーバーを立てる際の注意点
概要
本記事では、Visual Studio 2022 (Community 17.14.2) 環境において、MCP (Model Context Protocol) サーバーをセットアップする際の注意点について解説します。特に、mcp.json
の設定におけるトラブルシューティングと解決策に焦点を当てます。
環境
- OS: Windows 11
- IDE: Visual Studio 2022 (Community) 17.14.2
ドキュメント
MSDNに公式ドキュメントがある。
MCPサーバー設定のポイント
mcp.json
の配置場所
1. Visual Studio は、以下のパスから自動的に mcp.json
を検出します。
%USERPROFILE%\.mcp.json
<SOLUTIONDIR>\.vs\mcp.json
<SOLUTIONDIR>\.mcp.json
<SOLUTIONDIR>\.vscode\mcp.json
<SOLUTIONDIR>\.cursor\mcp.json
本記事では、VSCode との連携を考慮し、<SOLUTIONDIR>\.vscode\mcp.json
を選択しました。
2. GitHub Copilot の指示書
VSCode は分割ファイルに対応していますが、Visual Studio は現時点では未対応です。そのため、Copilot の指示書は .github/copilot-instructions.md
で一元的に管理することをおすすめします。
mcp.json
設定におけるトラブルシューティング
3. SequentialThinking
サーバーを mcp.json
に設定する際、以下の内容では Visual Studio で認識されませんでした。
{
"inputs": [],
"servers": {
"sequential-thinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}
}
}
VSCode ではこの設定で正常に動作していたため、Visual Studio の問題と推測されました。再起動など試みましたが、解決には至りませんでした。
Visual Studio
VSCode
解決策:
サーバー名にハイフン (-
) を含むことが原因で、Visual Studio が認識しない可能性が浮上しました。試しに context7
というハイフンを含まないサーバー名で設定したところ、正常に認識されることを確認しました。
{
"inputs": [],
"servers": {
"context7": {
"command": "c7-mcp-server",
"args": []
}
}
}
この結果に基づき、sequential-thinking
のサーバー名を sequentialthinking
に変更したところ、Visual Studio でも無事に MCP サーバーが認識され、起動を確認できました。
修正後の mcp.json:
{
"inputs": [],
"servers": {
"sequentialthinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}
}
}
Visual Studio 上での確認:
mcp.json をソリューションエクスプローラーに追加することで、Visual Studio 上から設定内容を確認できます。
結論
Visual Studio で MCP サーバーを設定する際は、サーバー名にハイフン (-) を使用しない ことが重要です。この点に注意することで、スムーズな環境構築が可能です。
Discussion