Contents
MCP が解決する3つの課題
この章では、MCP が狙いとする具体的な問題点と、その設計上の対策を整理します。各項目は実務で直面しやすいシナリオに基づいています。
1. プロンプト長制限の緩和
MCP はサーバ側にコンテキストを保持するため、クエリ自体は 数百文字 に収まります。実装例として GitHub が公開しているベータ版では、デフォルトで 2 KB 未満のペイロードが許容されています[^2]。
- 従来: プロンプト全体にコードや設定を埋め込む必要があり、4 KB 超えるとエラーになることが多い。
- MCP 利用時: ファイルツリーや依存関係はサーバ側で保持し、質問だけを送信できる。
2. データ漏洩リスクの低減
通信は TLS(Transport Layer Security)で暗号化され、認証は Bearer トークン によって行われます。トークンは有効期限が短く設定でき、環境変数
MCP_TOKENから動的に取得することが推奨されています[^3]。
- 暗号化: TLS 1.2 以上を必須とし、サーバ証明書は自動ローテーション。
- 認可: トークンは 1 hour のローテーションがベストプラクティスとされ、漏洩時の被害範囲を限定。
3. 開発フローへの統合コスト削減
VS Code 用公式拡張機能(以下「MCP Extension」)は Marketplace と GitHub のリリースページから取得でき、インストール手順は UI だけで完結します[^4]。
- Marketplace: GUI で検索 → ワンクリックでインストール。
- vsix 手動導入: オフライン環境でも同一ファイルで展開可能。
VS Code 用 MCP Extension のインストール手順
本節では、実際に拡張機能を導入する流れと、環情報が限られる環境向けの代替手段について解説します。
2.1 Marketplace からのインストール(推奨)
まずは VS Code の拡張機能ビューで 「MCP for VS Code」 を検索してください。拡張機能名は執筆時点で Marketplace に掲載されている正式名称です[^4]。
- サイドバー左下の 拡張機能 アイコンをクリック。
- 検索ボックスに
MCP for VS Codeと入力し、表示された拡張を選択。 - Install ボタンを押すと自動的にダウンロード・有効化され、ステータスバー右下に MCP Server アイコンが現れます。
注意:インストール後は VS Code を再起動すると設定ファイルの読み込みが確実になります。
2.2 vsix ファイルによる手動インストール(オフライン・プロキシ環境向け)
- GitHub のリリースページ(例:
https://github.com/mcp-org/vscode-mcp/releases)から最新のmcp-vscode-*.vsixをダウンロード。 - VS Code で Ctrl+Shift+P → Extensions: Install from VSIX... を選択し、取得したファイルを指定するだけです。
この方法は企業ネットワーク内で外部アクセスが制限されている場合でも利用できます。インストール後は Marketplace と同様にステータスバーにアイコンが表示されます。
mcp-installer によるクライアント設定と必須パラメータ
本節では、CLI ツール
mcp-installerを用いた設定ファイル生成手順を具体的に示します。初心者でも数ステップで完了できるよう配慮しています。
3.1 mcp-installer のインストール
|
1 2 |
npm install -g mcp-installer # Node.js が必要です(≥14) |
3.2 初期化コマンドと対話式プロンプト
mcp-installer init を実行すると、以下の項目を順に聞かれます。各項目は デフォルト値 が提示されるため、ほぼそのままで問題ありません。
| 項目 | 説明 | 推奨設定例 |
|---|---|---|
endpoint |
MCP サーバーの URL(HTTPS が必須) | https://mcp.example.com |
token |
認証に使用する Bearer トークン | 環境変数 ${env:MCP_TOKEN} でも可 |
timeout |
リクエストタイムアウト(ミリ秒) | 5000(開発時は 8000 が安全) |
logLevel |
ログ出力レベル (error, warn, info, debug) |
開発時は debug、本番は info |
対話が完了すると、プロジェクトルートに mcp-settings.json が生成されます。
3.3 VS Code 設定への反映
生成された JSON を VS Code のユーザー設定またはワークスペース設定に貼り付けます。例:
|
1 2 3 4 5 6 7 |
{ "mcp.endpoint": "https://mcp.example.com", "mcp.token": "${env:MCP_TOKEN}", "mcp.timeout": 8000, "mcp.logLevel": "info" } |
これだけで VS Code の拡張機能が自動的にサーバーへ接続し、コンテキストの送受信が可能になります。
GitHub Copilot と MCP を組み合わせた実践フロー
本章では、Copilot がコードを提案した後に MCP でプロジェクト全体のコンテキストを活用する具体的な手順と、その効果を示すサンプルコードを紹介します。
4.1 基本的な作業手順
-
Copilot によるコード生成
VS Code 上でutils.pyに新規関数を書き込むと、Copilot が自動補完を提示。 -
MCP コンテキスト送信
コマンドパレット(Ctrl+Shift+P) → MCP: Send Current File Context を実行すると、現在のファイル情報がサーバーに保存されます。 -
AI エージェントから最適化提案を取得
同じコマンドまたは独自のプロンプト(例: 「この関数のエラーハンドリングを追加してください」)を送信すると、MCP が保持している依存モジュール情報や設定ファイルを踏まえて改善コードが返されます。
4.2 実際のコード例
ステップ 1 – Copilot の提案
|
1 2 3 |
def calculate_average(values): return sum(values) / len(values) |
ステップ 2 – MCP にコンテキスト送信(VS Code コマンド実行)
ステップ 3 – エージェントからの最適化結果
|
1 2 3 4 5 6 7 8 9 10 11 |
def calculate_average(values): """ 空リストに対しては 0 を返す安全な実装。 型チェックと例外処理も追加しています。 """ if not isinstance(values, (list, tuple)): raise TypeError("values must be a list or tuple") if len(values) == 0: return 0 return sum(values) / len(values) |
このように、「質問だけで全体像を参照できる」という点が MCP の大きなメリットです。
4.3 業務で使えるプロンプト例(参考)
| シナリオ | プロンプトテンプレート |
|---|---|
| コードレビュー支援 | 「関数 calculate_average の計算量を O(n) に改善できるか教えて」 |
| テスト自動生成 | 「utils.py 内の全関数に対して pytest 用テストケースを書いて」 |
| ドキュメント要約 | 「このモジュールの公開 API を markdown でまとめて」 |
ベータ版利用時の注意点と安全性評価
MCP は 2025 年にベータリリースされた比較的新しいプロトコルです。正式リリース前の段階では、機能制限や安定性に関する情報を事前に把握しておくことが重要です。
5.1 ベータ版特有の制約
| 項目 | 現行ベータ実装での上限・注意点 |
|---|---|
| クエリサイズ | 最大 2 KB(413 Payload Too Large が返る) |
| レートリミット | 30 リクエスト / 分(ピーク時はスロットリングあり) |
| 応答遅延 | UTC 12:00‑14:00 の間に 5 秒以上になることがある。timeout を 8000 ms に設定すると回復率が向上[^5] |
これらの制約は公式リポジトリの README および GitHub Issue(例: #42)で随時更新されています。
5.2 セキュリティチェック項目
- TLS バージョン:最低 TLS 1.2、サーバ証明書は有効期限が 90 日以内。
- 認証方式:Bearer トークン(JWT)を使用し、トークンは 1 hour ローテーションを推奨[^3]。
- ログ保存:JSON 形式で
ISO8601タイムスタンプとリクエスト ID を必ず記録する設定が必要です。
これらの要件は AI‑Agent Security Guide(2025 年版)でも同様に示されています[^6]。
5.3 自前サーバー構築の簡易ガイド
| 手順 | コマンド・設定例 |
|---|---|
| Docker イメージ取得 | docker pull ghcr.io/mcp/server:beta |
| docker‑compose.yml 作成 |
サンプル
|
| 起動 & 動作確認 | docker compose up -d → curl -k https://localhost:8080/health |
環境変数 MCP_MAX_CONTEXT_SIZE=2048、MCP_RATE_LIMIT=30/min を追加するとベータ版の既知制限に合わせたチューニングが可能です。
トラブルシューティングと他プラグインとの比較
問題が発生した際はまずログを確認し、設定ミスかネットワーク障害かを切り分けましょう。また、類似ツールとの機能差も把握しておくと導入判断に役立ちます。
6.1 ログの取得方法
- VS Code のコマンドパレット → MCP: Show Logs
- ターミナルで
mcp-installer logs --tail 100
ログレベルは debug に設定しておくと、接続エラーや認証失敗の原因が詳細に出力されます。
6.2 よくあるエラーと対処法
| エラー | 原因例 | 解決策 |
|---|---|---|
| ECONNREFUSED | endpoint が http:// のまま、またはファイアウォールでポート 8080 が閉じている |
https:// に修正し、ネットワーク管理者にポート解放を依頼 |
| 401 Unauthorized | 環境変数 MCP_TOKEN が未設定、または期限切れトークン |
ターミナルで echo $MCP_TOKEN を確認し、最新トークンを再設定 |
| 413 Payload Too Large | クエリが 2 KB 上限を超えている | ファイル単位で分割し、mcp-installer send --file <path> などで送信 |
6.3 類似プラグインとの機能比較
| 項目 | MCP for VS Code | Cline (Qiita) |
|---|---|---|
| 対応プロトコル | Model Context Protocol(公式実装) | 独自拡張 + 2026/03 に MCP 非公式対応 |
| インストール手段 | Marketplace / vsix (UI 完結) | npm パッケージ+別途 VS Code 拡張 |
| 設定の容易さ | mcp-installer が自動生成(1 回の CLI) |
環境変数・settings.json を個別に記述必要 |
| サポート体制 | GitHub Issues で開発者が週 1 回以上確認[^4] | コミュニティベース、更新頻度低下傾向 |
| 機能範囲 | コンテキスト送受信・Copilot 連携・ログ出力 | 主にコード補完、コンテキストは限定的 |
結論:導入ハードルや保守性を重視するなら MCP の公式拡張が最適です。Cline は既存のコード補完機能を拡張したい場合の代替手段として検討してください。
まとめ
- MCP はプロンプト長制限・情報漏洩リスク・統合コストという三大課題を解決するオープンプロトコルです。
- VS Code 用公式拡張(MCP for VS Code)と
mcp-installerを組み合わせれば、数クリックで安全にコンテキスト駆動の AI 補助が利用可能になります。 - ベータ版であることから レートリミット・クエリサイズ などの制約は必ず確認し、TLS・Bearer トークンによるセキュリティ要件を満たす設定を行ってください。
- 問題が起きたらまず ログ(debug) を確認し、公式ドキュメントや GitHub Issue で最新情報をチェックすることで迅速に対処できます。
今後のリリースではトークン上限緩和やレートリミット緩衝が予定されており、正式版へ移行すれば更なる生産性向上が期待できます。ぜひ本稿で紹介した手順を試し、開発フローに AI の力を取り入れてみてください。
参考文献
- OpenAI API Documentation – Prompt length limits (2024).
- MCP GitHub Repository – beta release notes,
README.md(2025‑04)【[^2]】. - OWASP Cheat Sheet Series – Token based authentication (2023).
- Visual Studio Marketplace – “MCP for VS Code” extension page (accessed 2026‑05‑10)【[^4]】.
- Issue #42, mcp-org/vscode-mcp – “Rate limit and timeout behavior” (2026‑02)【[^5]】.
- AI‑Agent Security Guide, Version 1.2 (2025).