MCPサーバーとは?何をするものか初心者向けに解説

MCPサーバーとは?何をするものか初心者向けに解説について、用途ごとの考え方と選び方のポイントを整理します。

AIものさし編集部

MCP Serverは、AIアプリへ外部のdataや機能を提供するprogramです。「server」という名称でも、必ずインターネット上の大型サーバーを指すわけではなく、自分のPC上で動くprocessの場合があります。重要なのは場所より、どのHostと接続し、どのToolやResourceを公開し、どの権限で実行するかです。

MCP Serverは何をする?

MCPの仕組みでは、AIアプリ側のHostが、ServerごとにClientを使って接続します。Serverは自分が提供する能力をMCP形式で知らせ、Hostは利用者やアプリのルールに沿ってそれを使います。ServerはAIモデルでなく、通常はモデルを呼ぶAIアプリの内部にも含まれません。外部API、file、database、社内service等へつなぐadapterとして作られることがあります。


利用者

  ↓ 質問・確認

AI Host(アプリ)

  └─ MCP Client(接続ごと)

       └─ MCP Server(Tool / Resource / Promptを公開)

            └─ file、database、service API等

MCP Serverが行うのは「外部機能を使える形で公開する」ことです。AIがどの機能を選び、結果をどう判断するか、業務上の最終承認を誰が行うかはHostや業務側の責任として残ります。

公開するものを分ける

Toolは呼び出し可能な機能です。たとえばsearch_docs、create_ticket、update_recordのような処理を提供できます。Toolは実際に状態を変える可能性があるため、名前だけでread-onlyだと思い込まず、入力・出力・副作用を確認します。

ResourceはAIへ渡すcontext dataです。文書、record、schemaなどを参照する用途に向きます。resourceを読むことと、データベースを書き換える操作は分けて設計します。

Promptは再利用できるinteraction templateです。たとえば「問い合わせから製品名・症状・期限を抽出する」指示を提供できます。Prompt自体が外部操作を実行するわけではありませんが、Toolとの組み合わせで実際の処理が進む可能性があります。

serverが公開するTool一覧は固定の単なる説明ではなく、仕様上発見・更新の対象になり得ます。利用側は、実行時点で何が提供されているかを確認する必要があります。

LocalとRemoteの選択

Localでは、Server processをHostと同じ端末で起動し、stdioで通信する構成が代表的です。ローカルfileを読む、個人の開発環境内で動かすなどに使われます。一方、実行fileや設定を信頼できないと、端末上の権限で動作する危険があります。起動command、package供給元、更新方法、local fileへのscopeを確認してください。

Remoteでは、network上のServerへStreamable HTTPで接続する構成が使われます。複数利用者が使える一方、認証・認可、transport security、rate limit、監査、tenant分離、障害対応が必要です。OAuthやAPI keyなど何を使うか、credentialの保存場所、接続先domain、利用者ごとに異なる権限を適用できるか確認します。方式の詳細はprotocol versionや提供サービスに依存します。

Localが自動的に安全、Remoteが自動的に危険ということではありません。localでも広範なfilesystemを読み書きするなら影響が大きく、remoteでも権限と監査を限定できる場合があります。配置場所ではなく、脅威とアクセス範囲を比べます。

Serverに持たせる権限を絞る

Serverの権限は業務に必要な最小範囲にします。文書検索だけなら、閲覧対象のfolderを限定し、書き込み・削除Toolを公開しません。顧客レコードを更新する必要がある場合は、更新先、可能なfield、実行前確認、監査記録を別に設計します。管理者用credentialと一般利用者のcredentialを共用しないでください。

Toolの入力も検証します。たとえば「URLを取得するTool」へ利用者が任意URLを渡せる場合、社内metadataやlocalhostにアクセスされないよう許可domainを制限します。database queryなら読取tableと行のscopeを制限し、書き込みなら更新件数や承認条件を設定します。MCP接続で認証できても、アプリのbusiness authorizationやtenant境界まで自動で決まるわけではありません。

MCP Serverを導入する前の確認票

  • 提供元: 社内開発か、第三者serverか。sourceと更新者は確認できるか。

  • 配置: local processかremote endpointか。接続先と起動方法は把握できているか。

  • 公開機能: Tool / Resource / Promptを一覧にし、read/write副作用を説明できるか。

  • 認証: どの利用者・service identityで接続するか。credentialはどこに保存するか。

  • scope: file、API、database、各workspaceの対象範囲を最小化しているか。

  • 確認: 外部送信、削除、更新、公開などに人の承認が必要か。

  • 監査: 利用・設定・失敗を追えるか。ログにsecretや顧客dataを出していないか。

  • 停止: Hostから接続解除できるか。OAuth tokenやAPI keyを失効できるか。

空欄が残る場合は、実データを接続せずsandboxで試します。Serverの説明文だけを読んで、実際の副作用を推測しないことが大切です。

小さく試す例

社内文書検索のServerなら、最初はテスト用folderとread-only権限で起動します。Hostに表示されたTool一覧、検索対象、返却されたsource linkを確認し、許可外の文書が出ないかテストします。書き込みToolをあとから追加する場合は、別の権限reviewと承認テストを行います。接続前後のログにtokenや文書本文が残らないかも確認します。

AIものさしの判断

MCP Serverの役割は、AIへ外部のdataやactionを公開することです。まずどこで動き、何を公開し、どのaccount権限を使うかを確定します。read-onlyの小さな範囲から始め、書き込みや外部送信は別の承認条件を置いてください。「serverがMCP対応」というだけでは、利用者の権限・安全性・業務適合までは分かりません。

Serverを接続した後の流れ

実装versionにより詳細は異なりますが、接続時にはHostとServerがprotocolや利用可能な機能を照合し、その後、HostがServerの提供するTool等を確認します。利用者の質問に応じてAIがTool候補を選び、Hostの安全規則や利用者確認を経て呼び出すと、Serverが実処理を行い結果を返します。Serverは結果の正しさや業務上の承認まで保証するものではありません。

MCP仕様は日付付きで更新されます。2026年10月8日時点の公式Docsは2026-07-28版を案内しており、初期化や能力発見などの細部は以前の版と異なる場合があります。古い記事の例をcopyする時は、client / serverが対応するversionとSDKを合わせてください。概念説明と実装手順は分けて読むのが安全です。

serverを自作するか、既存のものを使うか

表は横にスクロールできます

状況まず考える選択理由
一つの社内toolを一つのAIアプリから呼ぶ既存API連携も比較MCPを挟む必要がない場合がある
複数Hostに同じ機能を提供MCP Server候補共通形式で公開・発見できる
localファイルを限定して読むlocal server候補network公開なしでも提供可能。ただし端末権限を制限
複数部署がremote serviceを共有remote server候補認証、利用者別scope、監査・運用体制が必要

機能の数ではなく、接続を再利用する価値と運用責任を比べます。既存serverを使う場合は提供元と更新方法、自作する場合はcredential保管と障害対応の責任者を確認します。

問題が起きたときの切り分け

接続エラーなら、Host設定、server process、protocol version、transport、認証の順で確認します。Toolが見つからない場合は、Serverが実際に公開しているlist、Hostが対応する機能、認証userのpermissionを照合します。Toolは見えるのに実行できない場合は、入力schema、API応答、server logを確認し、secretや顧客本文が記録されないようにします。原因が分かるまでは、強い権限を追加して解決しようとせず、read-onlyの最小設定へ戻します。

引用・データ出典