◀ 用語一覧
NO.04

MCP Server

更新: 2026.07.22

一言で

MCP は「Model Context Protocol」の略称で、AI モデルに対して追加の文脈や機能を提供するプロトコルである。

仕組み

flowchart LR
  subgraph Host["🤖 AI Host (VS Code / Copilot CLI 等)"]
    APP[Copilot]
    CL1[MCP Client]
    CL2[MCP Client]
    CL3[MCP Client]
    CL4[MCP Client]
    CL5[MCP Client]
  end
  subgraph MCP["🔌 MCP Layer (1 Client ⇄ 1 Server)"]
    SLs[Work IQ MCP Server]
    JRs[GitHub MCP Server]
    FSs[Playwright MCP Server]
    PWs[Context7 MCP Server]
    APIs[Salesforce MCP Server]
  end
  subgraph Tools["🛠️ External Tools"]
    SL[Work IQ]
    JR[GitHub]
    FS[Playwright]
    PW[Context7]
    API[Salesforce]
  end
  APP --- CL1
  APP --- CL2
  APP --- CL3
  APP --- CL4
  APP --- CL5
  CL1 <-->|stdio| SLs
  CL2 <-->|HTTP| JRs
  CL3 <-->|stdio| FSs
  CL4 <-->|stdio| PWs
  CL5 <-->|stdio| APIs
  SLs <-->|API| SL
  JRs <-->|API| JR
  FSs <-->|API| FS
  PWs <-->|API| PW
  APIs <-->|API| API

  classDef host fill:#0a0e27,stroke:#00f0ff,color:#00f0ff,stroke-width:2px
  classDef proto fill:#1a0a2e,stroke:#ffb000,color:#ffb000,stroke-width:2px
  classDef tool fill:#0a1a14,stroke:#9bbc0f,color:#9bbc0f,stroke-width:2px
  class APP,CL1,CL2,CL3,CL4,CL5 host
  class SLs,JRs,FSs,PWs,APIs proto
  class SL,JR,FS,PW,API tool

なぜ重要?

MCP がもたらす 3 つの価値:

  • 🧩 機能拡張:Copilot を 一つの起点 にして、あらゆる外部ツールを操作できる。
    • 要件を読み書きする (Jira)
    • デザインを作る (Figma)
    • 3D デザインを生成して印刷する (Blender + 3D プリンター)
    • メール・カレンダーを確認・編集する (Work IQ)
    • 社内データベースに接続して分析する
  • 🔗 ワークフローを統合:個別ツールを繋ぐカスタム実装が不要になり、Copilot が 複数システムを横断するハブ として機能する。
  • 🌐 広いエコシステム対応:MCP は オープンなプロトコル で、すでに 事実上の標準 になりつつあります。AI アシスタント、Visual Studio などの開発ツール、その他多くのアプリケーションが MCP をサポートしており、一度作れば、どこでも繋がる。コーディング統合との相性も抜群。

どこで動く?

MCP サーバーの実行場所は 2 種類 あります。

  1. stdio 方式 では、VS Code が ローカルマシン上で子プロセス として MCP サーバーを起動します。
  2. HTTP 方式(SSE / streamable-http) では、MCP サーバーが クラウドやリモートサーバー上で稼働 し、VS Code は クライアントとして接続するだけ です。

用途やセキュリティ要件に応じて使い分けが可能です。

Activity Monitor showing local MCP server processes
Activity Monitor で見ると、ローカル MCP サーバーが npm exec子プロセス として動いているのが分かる

VS Code での設定

VS Code の Marketplace から MCP サーバーをインストール する時、2 つのスコープを選べる:

  • Install個人設定 ファイル(User Settings)に追加
  • Install Workspaceリポジトリ設定 ファイル(.vscode/mcp.json)に追加
.vscode/mcp.json ▸ リポジトリ共有

Git に含まれるので、チーム全員 で MCP を揃えられる。メンバーが repo を clone すると VS Code が 「有効化しますか?」 と確認してくる。

User Settings ▸ 自分の PC のみ

個人用 / 全プロジェクト共通で使いたい時。Git には含まれない。

  • 📁 Mac~/.config/Code/User/settings.json
  • 🪟 Windows%APPDATA%\Code\User\settings.json

Copilot CLI で始める

# MCP server を追加
copilot mcp add <server-name>

# 既存サーバ一覧
copilot mcp list

GitHub 公式 MCP server は最初から接続済み。gh コマンドを叩く感覚で、AI が Issues / PRs / Actions / Code search を操作できる。

modelcontextprotocol/registry には公式 + コミュニティ製の server が多数(filesystem / postgres / slack / puppeteer / playwright / Figma…)。

MCP Registry とは

MCP Registry は、エコシステム全体の MCP サーバーを一覧できる オープンなレジストリ。自前のレジストリを立てることもできる。

項目🌐 MCP Registry🐙 GitHub MCP Registry
管理者MCP Working GroupGitHub
内容公式 + コミュニティの 全 server(約 13,238/2026-06-23 時点)GitHub が 厳選した一覧(約 100)
既定で使われる場所VS Code ↗ など
URLregistry.modelcontextprotocol.io ↗github.com/mcp ↗

🛠️ 自前のレジストリ を作り、許可する server を 拡張 したり 絞り込ん だりできる。 🛡️ 作ったレジストリは Organization / Enterprise レベルで強制 できる(allowlist enforcement)。

自前の MCP Registry を作る

ホスティングは 2 通り。どちらも VS Code / Org / Enterprise から参照・強制できる(⚠️ 要注意: 強制が効くのはユーザーが実際に利用中(アクティブ)のライセンスに対してのみ)。

Self-hosted ▸ フルコントロール

OSS の modelcontextprotocol/registry ↗(Go 製サービス)を自前のインフラにデプロイ。MCP Working Group が公式メンテ。

Azure API Center ▸ マネージド

Azure の API Center ↗ に MCP server を登録・公開。インフラ管理は不要。

クライアント側の設定

社内 server を非公開に保つ仕組み

カタログは公開 — 守るのは 配布元(ソース)。Azure API Center に登録した server はカタログに到達できる人には見えるが、公開されるのは メタデータだけ。実際の ダウンロード/接続は別で制御 できる。

flowchart LR
  DEV["👤 開発者<br/>VS Code / Copilot<br/>@mcp を開く"]
  AC["🌐 Azure API Center<br/>カタログ = 公開<br/>メタデータだけ(コードなし)"]
  STDIO["◆ stdio → 🔒 プライベートレジストリ<br/>GitHub Packages / GHCR / Azure Artifacts<br/>認証トークンが必要"]
  HTTP["◆ HTTP → 🏢 社内ネット / VPN<br/>公開インターネットから到達不可<br/>前段に SSO / ネットワーク認証"]
  EMP1["✅ 社員は取得"]
  OUT1["⛔ 部外者 → 401"]
  EMP2["✅ 社員は接続"]
  OUT2["⛔ 部外者 → 遮断"]
  DEV --> AC
  AC -->|パッケージ参照| STDIO
  AC -->|リモート URL| HTTP
  STDIO --> EMP1
  STDIO --> OUT1
  HTTP --> EMP2
  HTTP --> OUT2

  classDef dev fill:#0a0e27,stroke:#00f0ff,color:#00f0ff,stroke-width:2px
  classDef cat fill:#1a0a2e,stroke:#ffb000,color:#ffb000,stroke-width:2px
  classDef stdio fill:#0a0e27,stroke:#00f0ff,color:#00f0ff,stroke-width:2px
  classDef http fill:#1a0a2e,stroke:#ff2e97,color:#ff2e97,stroke-width:2px
  classDef ok fill:#0a1a14,stroke:#9bbc0f,color:#9bbc0f,stroke-width:2px
  classDef deny fill:#2a0a0a,stroke:#ff5555,color:#ff5555,stroke-width:2px
  class DEV dev
  class AC cat
  class STDIO stdio
  class HTTP http
  class EMP1,EMP2 ok
  class OUT1,OUT2 deny

✅ カタログは 配布元を指すだけ配布元を守れば → 実行できるのは認証済みの社員だけ

MCP Registry をローカルで試す

🧪 これは手順書ではなく個人メモ。 私が実際に試して動いた流れを AI がまとめたもの。ざっくりイメージを掴むためのもので、環境により変わる。

ローカルに registry を立て、HTTPS で公開し、自分の Org に接続して GitHub MCP Registry から seed するまでの流れ。

  1. Fork & clonegh repo fork modelcontextprotocol/registry --clone
  2. Docker で起動docker compose up → API は localhost:8080(初期 DB は demo seed のみ)
  3. HTTPS トンネルcloudflared tunnel --url http://localhost:8080https://<random>.trycloudflare.com
  4. 接続 — トンネル URL を MCP Registry URL に設定(/v0.1/servers は付けない。Copilot が自動付与)。Org は Settings → Copilot → Policies → MCP、EnterpriseAI controls → MCP
  5. VS Code をリロード & 確認 — Developer: Reload Window → @mcp で自分の registry の server だけが表示される。Cmd + ,(設定)で MCP 設定が 「managed by your organization」 バッジ付き(= Org ポリシーが効いている)か確認
  6. GitHub Registry から seedgo run scripts/mirror_data/fetch_production_data.go + load_production_data.go(source: https://registry.modelcontextprotocol.io/v0/servers

⚠️ VS Code が この Org の Copilot ライセンス を使っているか確認(別アカウント/個人プランだと Org のポリシーが効かない)。mirror_data スクリプトは as-is なので、許可したい server に合わせて絞り込む。