x3d CROSS THIRD
x3d AIX 総合研究所 トップへ戻る

社内システムをAIエージェントにつなぐMCPサーバー自作ガイド|公開範囲・トランスポート・権限の設計判断【2026年8月版】

16分で読めます執筆:AI講師・生成AIトレーナー / x3d株式会社 代表取締役
社内システムをAIエージェントにつなぐMCPサーバー自作ガイド|公開範囲・トランスポート・権限の設計判断【2026年8月版】

執筆: 武石幸之助(x3d株式会社 代表取締役)
公開日: 2026年7月28日
最終更新日: 2026年8月5日

【結論】MCPサーバーの自作とは、社内システムをAIから呼び出せる形に変換する接続プログラムを、自社の要件に合わせて実装することです。

  • 自作が必要になる境界は「既製のMCPサーバーが存在しない社内DB・基幹システム・独自SaaS」の3領域
  • 実装の前に決める設計判断は3つ。公開範囲(tools / resources / prompts)・トランスポート(stdio / Streamable HTTP)・権限設計
  • 2026年8月時点の現行仕様(Current)は 2026-07-28。ステートレス化済みのため、これから作るサーバーは現行仕様を基準に設計する

この記事では、自社システムをAIエージェントから使えるようにしたい開発者・情報システム部門向けに、コードを書き始める前に決めるべき設計判断と、社内展開までの進め方を解説します。


※本記事はMCPサーバーの「設計判断」(公開範囲・トランスポート・権限)に焦点を当てています。仕組みの基礎解説はMCPサーバーとは?(x3d 公式ガイド)、実装6ステップはMCPサーバーの作り方、Claude Codeからのクライアント側連携手順はClaude CodeでMCP連携する方法にまとめています。

MCPサーバーの自作とは — 既製で足りなくなる境界線

MCPサーバーの自作とは、社内システムをAIから呼び出せる形に変換する接続プログラムを、自社の要件に合わせて実装することです。MCP(Model Context Protocol)は、AIアプリケーションと外部のツール・データソースを接続するオープン標準で、サーバー側が「ツール(tools)」「リソース(resources)」「プロンプト(prompts)」を公開し、クライアントがそれを発見して呼び出します。

重要なのは、自作が必要になるのは限られた領域だけだという点です。GitHub・Notion・Sentry・Stripe などの主要SaaSは、提供元自身が公開する first-party のMCPサーバーを利用できます。検証済みサーバーは公式のMCPレジストリ(registry.modelcontextprotocol.io、2025年9月8日からプレビュー提供)で検索できます。自作の判断が必要になるのは、次の3領域に限られます。

領域 具体例 自作が必要な理由
社内DB・データウェアハウス 顧客マスタ、在庫、原価テーブル 既製サーバーは汎用SQL実行になりがちで、業務単位の最小権限に絞れない
基幹システム・レガシー 受発注、生産管理、独自ERP そもそもMCP実装が存在せず、APIも社内仕様
独自業務SaaS・内製ツール 自社開発の管理画面、社内ワークフロー 提供元が自社なので、first-party を自分で作るしかない

逆に言えば、既製サーバーが存在する接続先を自作するのは工数の無駄です。x3dの支援現場でも、最初に「既製で済む接続先」と「自作が必要な接続先」を仕分ける工程を必ず挟みます。既製と自作の使い分け基準はMCP連携で何ができるのか(ユースケースと選定基準)で詳しく整理しています。

設計の前に:2026年8月時点の仕様バージョンを確認する

MCPの仕様は日付形式(YYYY-MM-DD)でバージョン管理され、後方互換性を壊す変更があったときだけ更新されます。ここを確認せずに設計を始めると、公開直後に作り直しになります。

2026年8月5日時点の状況を、公式の versioning ページとGitHubリリース履歴で確認すると次のとおりです(出典: modelcontextprotocol.io/specification/versioning)。

リビジョン 状態(2026年8月5日時点) 設計上の意味
2024-11-05 / 2025-03-26 / 2025-06-18 Final(過去版) 2025-03-26 で Streamable HTTP を導入し HTTP+SSE を非推奨化。2025-06-18 で OAuth 2.1 などの認可要件を明文化
2025-11-25 Final(過去版・レガシー) initialize ハンドシェイク方式。互換維持が必要な既存実装向け
2026-07-28 Current(現行) ステートレス化。新規実装の基準。破壊的変更を含む

現行リビジョン 2026-07-28 は、公式ブログで「launch 以来で最大のリビジョン」と位置づけられており、サーバー設計に直接影響します(出典: The 2026-07-28 Specification)。主な変更は、initialize ハンドシェイクと Mcp-Session-Id ヘッダの廃止(ステートレス化)、Streamable HTTP での Mcp-Method / Mcp-Name ヘッダ必須化、一覧結果への ttlMs / cacheScope 付与、W3C Trace Context による分散トレース伝搬の明記、Roots / Sampling / Logging の非推奨化(削除までは最低12か月の猶予)です。

設計上の実務的な結論は2つです。第一に、アプリケーション側の状態をプロトコルのセッションに依存させないこと。状態を持ち越す必要があるなら、ツールの戻り値として明示的なID(例:basket_id)を返し、モデルに次の呼び出しで渡させる設計にします。第二に、スティッキーセッション前提のインフラ設計を避けること。ステートレス化後は、通常のラウンドロビン負荷分散で水平スケールできます。

なお、MCPは2025年12月9日にAnthropicからLinux Foundation傘下の Agentic AI Foundation(AAIF)へ移管され、Apache License 2.0 のもとで運営されています。単一ベンダーの事業判断で仕様が変わる構造ではなくなったため、社内の技術選定で「標準として長期採用できるか」を判断しやすくなっています。

設計判断①:AIに何を公開するか(tools / resources / prompts)

MCPサーバーが公開できる要素は3種類あります。切り分けを最初に決めないと「とりあえず全部ツールにする」設計になり、AIが正しいツールを選べなくなります。

要素 性質 向いているもの 設計の注意点
tools(ツール) AIが引数を組み立てて呼び出す「動作」 検索、登録、更新、集計の実行 1ツール1業務単位に絞る。汎用SQL実行のような万能ツールを作らない
resources(リソース) URIで指定して読み取る「データ」 規程文書、マスタ定義、設定ファイル 参照専用。書き込みをリソース経由にしない
prompts(プロンプト) 再利用可能な定型指示のテンプレート 定型レポート生成、レビュー観点の提示 業務ルールが変わる前提で、コードに埋め込まず管理対象にする

実装の入口としては、tools を1〜3個だけ定義した最小構成から始めるのが定石です。resources と prompts は「必要になってから足す」で問題ありません。

ツール定義で成否を分けるのは、コードよりも説明文(description)と入力スキーマの設計です。AIはツール名と説明文を読んで呼び出すかどうかを判断するため、説明文が曖昧だと呼ばれない、あるいは誤って呼ばれます。「顧客名の一部で社内DBを検索する。完全一致は不可」のように、できること・できないことを両方書くのが実務的です。この「AIに渡す情報の設計」という観点は、より広くはコンテキストエンジニアリングの領域と重なります。

設計判断②:トランスポートをstdioかStreamable HTTPで選ぶ

MCPの標準トランスポートは2種類です。HTTP+SSE は2025年3月のリビジョンで非推奨化されているため、新規実装での選択肢は実質的に stdio と Streamable HTTP の二択になります。

判断軸 stdio Streamable HTTP
接続形態 子プロセスとして起動し、標準入出力でJSON-RPC通信 単一エンドポイントを公開し、HTTP POST(任意でSSE)で通信
利用範囲 個人の端末内で完結 チーム共有・複数クライアント接続
認証情報 環境変数。OAuth認可仕様は適用されない OAuth 2.1(PKCE必須)。Resource Indicators・Protected Resource Metadata も要件
実装/運用コスト 実装は低コスト。ただし各端末に配布・更新が必要 認可・HTTPS・Origin検証が必須。更新はサーバー側だけで完結
向くケース PoC、開発者個人のローカル業務 部門横断の共通接続、社内標準として展開する場合

判断の順序としては、まず stdio でPoCを作り、使われることが確認できてから Streamable HTTP に移すのが安全です。Streamable HTTP で公開すると認可設計・監査ログ・レートリミットの実装が同時に必要になり、「そもそも使われるのか」の検証と「安全に公開する」実装を並走させることになるためです。

ただし、stdio 前提で作ったサーバーをそのままHTTPで公開するのは典型的な事故パターンです。stdio ではOrigin検証やトークン検証が不要なため、公開時にその実装が抜けたまま外部到達可能になります。移行時は認可を実装する前提でコードを分離しておきます。

設計判断③:認証・権限・監査を最初から設計に含める

MCPサーバーは「AIが業務システムを操作する経路」になるため、権限設計を後回しにすると、公開後に作り直すことになります。設計に含めるべき要素は4つです。

1. 最小権限(誰の権限で実行するか)
MCPサーバーが単一のサービスアカウントで動くと、AIを使う全員が同じ権限を持ちます。人事データや原価情報を扱う場合、これは許容できません。実行者の権限を引き継ぐ設計(利用者のトークンで下流APIを呼ぶ)か、ツール単位で参照範囲を絞る設計のいずれかを選びます。

2. 認可(Streamable HTTP の場合)
現行仕様では OAuth 2.1 + PKCE、Resource Indicators(RFC 8707)、Protected Resource Metadata(RFC 9728)が要件です。現行の 2026-07-28 リビジョンでは認可が強化され、クライアントは認可レスポンスの iss パラメータを RFC 9207 に従って検証することが求められます。1つのクライアントが多数のサーバーに接続するMCPの利用形態で起きやすい mix-up 攻撃への対策です。

3. 監査ログ(何を残すか)
「いつ・誰が・どのツールを・どの引数で呼び、何が返ったか」を残します。粒度が足りないと問題を追跡できません。引数や戻り値には機密情報が入るため、マスキング方針をログ設計と同時に決めます。

4. 破壊的操作のガード
削除・送金・外部送信などの不可逆な操作は、公開前に「人の承認を挟むか」を決めます。承認フローの設計はHuman in the Loop(HITL)が出発点になります。外部から取り込んだテキストがツールを誤発火させるプロンプトインジェクションの対策も、この段階で設計に含めます。

組織の運用ルールに落とす段階では、総務省・経済産業省の「AI事業者ガイドライン」が参照点になります。2026年3月31日に第1.2版が公表され、AIエージェントに関する定義とリスクの記述が追記されました。法的拘束力のないソフトローですが、国内で事実上の標準として機能しています。

最小実装から社内展開までの流れと、つまずく5つのポイント

公式SDKを使えば、プロトコル層(JSON-RPC 2.0)の実装はSDKが吸収します。開発者が書くのは、ツール名・説明文・入力スキーマ・実行ロジックだけです。modelcontextprotocol の GitHub Organization には、2026年7月時点で TypeScript・Python・Java・Kotlin・C#・Go・Rust・Swift・Ruby・PHP の10言語のSDKリポジトリが公開されており、既存の社内システムと同じ言語を選べるケースが多くなっています。

擬似コードで表すと、最小構成のサーバーは次の構造になります。

サーバーを生成(名前・バージョンを宣言)

ツールを1つ登録:
  名前        = "search_customers"
  説明        = "顧客名の一部で社内顧客DBを検索する(完全一致検索は不可)"
  入力スキーマ = { query: 文字列, 上限件数: 整数(既定20) }
  実行処理    = 既存の社内DB検索ロジックを呼び、結果をテキストで返す
              (実行者の権限で検索し、閲覧不可の列はマスクする)

トランスポートを選んで待ち受け開始(PoC段階では stdio)

※構造を示す擬似コードです。SDKのAPIはバージョンにより変わるため、実装時は公式SDKドキュメントを参照してください。

社内展開までの流れは、5フェーズで進めるのが現実的です。

フェーズ やること 完了の判断基準
1. 対象の絞り込み 既製で足りる接続先と自作が必要な接続先を仕分け、1ユースケースに絞る 「誰のどの作業が何分短縮されるか」が言語化できている
2. 最小実装(stdio) ツール1〜3個で動く状態を作り、開発者数名で使う 意図したツールが正しい引数で呼ばれる割合を実測できている
3. 権限・監査の実装 最小権限・監査ログ・マスキング・レートリミットを組み込む 誰が何をしたかをログから再構成できる
4. 共有化(HTTP) 認可を実装してチーム共有に移す OAuth・Origin検証・HTTPSが要件どおり実装されている
5. 運用定着 障害時の手順・スキーマ変更の周知ルール・利用状況の可視化を整備 担当者が異動しても運用が続く状態

社内展開で頻出するつまずきは、次の5つです。

  • ツールが多すぎてAIが選べない:1サーバーに20個も並べると誤選択が増えます。業務単位でサーバーを分けます
  • スキーマ変更で既存の使い方が壊れる:引数名を変えると、それを前提にしたプロンプトや手順書が動かなくなります
  • 監査ログの粒度が足りない:「呼ばれた」だけでは問題を再現できません。引数と結果の要約まで残します
  • 権限が実質的に全開になっている:サービスアカウント1つで動かすと、参照権限のない情報までAI経由で見えます
  • PoCの成功を本番の成功と誤認する:運用フェーズで必要になる観測・コスト・権限の設計はAIエージェントを本番運用するための基盤設計で解説しています

MCPサーバーの自作は、AIエージェント開発全体の一部です。エージェント側の設計を含む進め方はAIエージェントの作り方、開発フロー全体のAI化はAI駆動開発(AIDD)を参照してください。技術判断と組織設計を切り分ける枠組みとしては4層理論が指針になります。

よくある質問(FAQ)

Q1. MCPサーバーの自作とは何ですか?

MCPサーバーの自作とは、社内システムをAIから呼び出せる形に変換する接続プログラムを、自社の要件に合わせて実装することです。既製のMCPサーバーが存在しない社内DB・基幹システム・独自業務SaaSを接続する場合に必要になります。実装では、公開する要素(tools / resources / prompts)・トランスポート・権限設計の3つを最初に決めます。

Q2. MCPサーバーは自作すべきですか、既製を使うべきですか?

結論は使い分けです。GitHub・Notion・Sentry・Stripe など主要SaaSは提供元自身が first-party のMCPサーバーを公開しているため、既製を使うのが効率的です。自作が必要になるのは、社内DB・基幹システム・独自業務SaaSの3領域に限られます。既製サーバーが存在する接続先を自作するのは工数の無駄になります。

Q3. 2026年8月時点のMCP公式仕様バージョンはどれですか?

公式の versioning ページが Current(現行)として示しているのは 2026-07-28 です(2026年8月5日確認)。直前の安定版 2025-11-25 は Final(過去版)となり、レガシー互換の対象です。過去版はほかに 2024-11-05・2025-03-26・2025-06-18 があります。実装前に公式サイトで最新状態を確認してください。

Q4. 2026-07-28 のステートレス化で何が変わりますか?

initialize ハンドシェイクと Mcp-Session-Id ヘッダが廃止され、各リクエストが自己完結します。実務上の影響は2点です。第一に、スティッキーセッションや共有セッションストアが不要になり、通常のラウンドロビン負荷分散で水平スケールできます。第二に、状態を持ち越す場合はツールの戻り値として明示的なIDを返し、モデルに次の呼び出しで渡させる設計に変える必要があります。

Q5. stdio と Streamable HTTP はどう選べばよいですか?

個人の端末内で完結するなら stdio、チーム共有や複数クライアント接続なら Streamable HTTP を選びます。実務的には、まず stdio でPoCを作り、使われることを確認してから Streamable HTTP に移すのが安全です。stdio では OAuth 認可仕様が適用されず認証情報は環境変数で渡すため、HTTP公開時は認可・Origin検証・HTTPSの実装が新たに必要になります。

Q6. MCPサーバーの自作で最初に決めるべきことは何ですか?

「AIに何をさせたいか」を業務単位で1つに絞ることです。技術選定より先に、誰のどの作業が何分短縮されるかを言語化します。そのうえで公開するツールを1〜3個に限定し、resources と prompts は必要になってから追加します。ツールを最初から多数並べると、AIが誤ったツールを選ぶ確率が上がります。

Q7. ツール定義で品質を左右するのはコードですか?

コードよりも説明文(description)と入力スキーマの設計です。AIはツール名と説明文を読んで呼び出すかどうかを判断するため、説明文が曖昧だと呼ばれない、または誤って呼ばれます。「顧客名の一部で社内DBを検索する。完全一致は不可」のように、できることとできないことを両方書くのが実務的です。

Q8. 社内展開でつまずきやすいポイントは何ですか?

頻出は5つです。(1)ツールが多すぎてAIが選べない、(2)スキーマ変更で既存の使い方が壊れる、(3)監査ログの粒度が足りず問題を再現できない、(4)サービスアカウント1つで動かして権限が実質全開になる、(5)PoCの成功を本番の成功と誤認する。いずれも実装より運用設計の問題です。

Q9. MCPは特定ベンダーに依存した規格ではないのですか?

2025年12月9日に、AnthropicからLinux Foundation傘下の Agentic AI Foundation(AAIF)へ移管されました。コードと仕様への貢献は Apache License 2.0 のもとで行われ、仕様変更は SEP(Specification Enhancement Proposal)に基づくコミュニティ主導のプロセスで進みます。単一ベンダーの事業判断で仕様が変わる構造ではなくなっています。

Q10. MCPサーバーの自作をx3dに相談できますか?

可能です。x3d株式会社では、接続先の仕分けから権限・監査設計、社内エンジニアへの内製化までを支援しています。AI時代のエンジニア・PM育成研修では、AIエージェント開発マスターやRAGOps/運用保守マスターといった講座で、MCP連携を含むAIエージェント基盤の設計・運用スキルを扱っています。


参考文献・出典

本記事は2026年8月時点の公開情報に基づいています。MCPの仕様は更新が速いため、最新情報はmodelcontextprotocol.ioをご確認ください。


武石幸之助
x3d株式会社 代表取締役。2017年より企業のAI導入支援に従事し、これまで1,800社超の法人支援、5,000名超の研修登壇実績を持つ(受講満足度99%/2024年度研修アンケート)。AIエージェント・MCP連携の設計から社内定着までを一貫して支援し、技術実装と組織設計の両面から企業のAI活用を伴走している。


x3d株式会社では、本記事で解説したMCPサーバーの設計・構築・運用定着に関する企業研修・導入支援を提供しています。
まずはお気軽にご相談ください。

無料相談・お問い合わせはこちら

無料・4問・約30秒・登録不要

まずは無料のClaude Code導入診断から。

4つの質問に答えるだけで、Claude Code・AI駆動開発の現在地と、貴社に合った進め方がその場でわかります。