応答品質
ツール呼び出しの結果がタスク完了に足る品質か
最終更新日:2026年7月7日
構成の全体像から公式SDKでの実装手順、本番運用に必要な
セキュリティ実装まで、6ステップで解説します。
※本ページは2026年7月時点のMCP公式仕様(modelcontextprotocol.io・spec 2025-06-18)と公式SDKドキュメントに基づいています。
自作するのは中央のMCPサーバー部分だけ。AIクライアント側の改修は不要で、同じサーバーをClaude Code・Cursor・Codexから共通利用できます。
AIクライアント
Claude Code / Cursor / Codex / Claude Desktop
JSON-RPC 2.0(stdio / Streamable HTTP)
MCPサーバー(自作部分)
tools / resources / prompts を定義して公開
既存のAPI・SDK・DB接続
業務システム・データソース
社内DB / SaaS API / ファイル / レガシーシステム
MCPサーバーは「AIと業務システムの間に置く変換アダプタ」です。公開するのはツール(tools)・リソース(resources)・プロンプト(prompts)の3要素で、まずはツール1〜3個の最小構成から始めます。
PoCから本番運用まで。x3dが1,700社のAI導入支援で標準化した進め方です。
「AIに何をさせたいか」を業務単位で洗い出し、公開するツール(tools)を定義します。最初は1接続先・1〜3ツールに絞るのが定石です。リソース(resources)・プロンプト(prompts)は必要になってから追加します。
個人のローカル環境だけで使うなら stdio(子プロセス起動・環境変数で認証情報を受け渡し)。チーム共有・複数クライアント接続なら Streamable HTTP(単一エンドポイント公開・OAuth 2.1認可)を選択します。
TypeScript / Python などの公式SDKを使うと、JSON-RPC 2.0のプロトコル層はSDKが吸収してくれます。開発者はツール名・入力スキーマ・実行ロジックの定義に集中でき、最小構成なら数十行で動くサーバーが書けます。
Claude Codeなら「claude mcp add」、Cursorなら Settings → MCP、Codexなら「codex mcp add」で接続します。ツールが一覧に出るか、想定どおりの引数で呼び出されるかを対話で確認します。
OAuth 2.1 + PKCE、Resource Indicators(RFC 8707)、Protected Resource Metadata(RFC 9728)を実装し、Originヘッダ検証でDNS rebindingを防ぎます。最小権限の認可設計と機密情報のマスキングもこの段階で組み込みます。
ツール呼び出し履歴・監査ログ・レートリミット・障害時のフェイルセーフを実装し、運用手順書とともに本番展開します。x3dはこの定着フェーズまで伴走します。
公式SDKを使えば、ツール1つの最小サーバーはこの程度の分量で動きます。
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({ name: "sales-db", version: "1.0.0" });
// AIから呼び出せる「ツール」を定義する
server.tool(
"search_customers",
"顧客名で社内DBを検索する",
{ query: z.string().describe("顧客名の一部") },
async ({ query }) => {
const rows = await searchCustomersFromDb(query); // 既存の業務ロジック
return { content: [{ type: "text", text: JSON.stringify(rows) }] };
},
);
// ローカル利用: stdio で接続を待つ
await server.connect(new StdioServerTransport());※ 概念を示すサンプルです。SDKのAPIはバージョンにより変わるため、実装時は公式SDKドキュメントを参照してください。Python SDKでもほぼ同じ構造で記述できます。
「動いた」で本番に進むのが最頻出の失敗パターン。1〜2ユースケースで以下を実測してから本実装に進みます。
ツール呼び出しの結果がタスク完了に足る品質か
意図どおりのツールが正しい引数で呼ばれる割合
エラー対応・権限管理・更新にかかる継続コスト
接続できること以上に「安全に運用し続けられること」が重要です。
認証・認可(最小権限)を明確化する
監査ログと実行履歴を保存する
機密情報のマスキング/秘匿化を行う
ツール呼び出し範囲と上限を制御する
障害時のフェイルセーフ動作を定義する
プロンプトインジェクション対策を実装する
Streamable HTTPで公開する場合は、公式仕様上 OAuth 2.1(PKCE必須)・Resource Indicators(RFC 8707)・Protected Resource Metadata(RFC 9728)・HTTPS・Originヘッダ検証が必須要件です。stdioの場合は認可仕様は適用されず、認証情報は環境変数で受け渡します。
PoC設計から認可・監査の実装、社内エンジニアへの内製化研修まで、本番運用を前提としたMCP導入を一気通貫で支援します。
全国無料講演のご案内
代表・武石幸之助(1,700社超のAI導入支援実績)が、「MCP・AIエージェント連携による業務システムのAI化」をテーマに、商工会・経済団体・社内勉強会向けの講演を全国で承っています(条件により無料)。
無料講演の詳細・お申し込みはこちら