ChatGPTやClaudeなどのAIを使っていて、「このAIが社内のマニュアルやデータベースも調べてくれたら、もっと便利なのに・・・」と思ったことはありませんか?
AIはさまざまな質問に答えてくれますが、そのままでは社内システムの情報を自由に利用できません。
そこで今、AIと外部システムをつなぐ「MCPサーバー」という新しい技術が大きな注目を集めています。
MCPサーバーは、AIが社内の情報や機能を利用するための「窓口」のようなものです。
例えば、ChatGPTから社内マニュアルを検索できる仕組みを作った場合、MCPに対応したClaudeでも同じ検索機能を利用できるように設定できます。AIごとに連携の仕組みを一から作り直す負担を減らせるのが大きなメリットです。
その一方で、実際に利用するには接続設定やアクセス権限などの確認が必要です。そのため、「便利そうだけど、構築するのは難しそう・・・」と感じる方もいるかもしれません。
この記事では、MCPサーバーの仕組みから具体的な構築手順、社内システムと安全につなぐためのポイントまで、初心者の方にも分かりやすく解説します。
MCPとは? AIと外部システムをつなぐ共通のルール
MCP(Model Context Protocol)とは、AIと社内システムなどをつなぐためのプロトコルです。プロトコルとは、異なるソフトウェア同士が情報をやり取りするための「共通の約束事」です。AIアプリの中にある「MCPクライアント」がサーバーと通信し、サーバーが用意した検索などの機能を呼び出します。
例えば、社内文書を検索する機能をAIから使いたい場合、MCPサーバーに「文書検索」という機能を用意しておけば、AIはそれを通じて必要な文書を探せるようになります。ただし、社内の情報を何でも自由に見られるわけではなく、誰がどの文書を見られるかはサーバーや社内システム側できちんと制限します。
API連携との違いは「役割」にある
APIとは、社内システムの機能やデータを別のソフトウェアから利用するための仕組みです。例えば、文書管理システムに「検索用API」があれば、それを使ってシステムの外部から文書を検索できます。
一方、MCPサーバーは、その検索機能をAIアプリから使えるようにする「通訳係」のような存在です。AIアプリから「文書を探して」という依頼が届くと、MCPサーバーは裏側で文書管理システムのAPIを利用し、検索結果をAIアプリへ返します。
つまり、APIとMCPサーバーは、どちらか一方を選ぶものではなく、役割が異なります。MCPサーバーを導入する場合でも、接続先システムのアクセス権限の確認など、基本的なセキュリティ対策は引き続き必要です。
| 比較項目 | 既存のAPI連携 | MCPサーバー経由 |
|---|---|---|
| 主な目的 | システムが公開するAPIの仕様に沿って、情報や処理をやり取りする | AIが共通の方法で外部機能を使えるようにする |
| 機能の説明 | システムごとに使い方を確認 | 機能名・説明・必要な入力を登録 |
| 権限管理 | 接続先のシステムで許可・禁止を判断 | MCPサーバーと接続先の両方で権限を確認 |
| 導入時の確認 | 接続方法・利用者の確認・データの形式 | 左記に加えてAIの対応状況と人の承認方法 |
MCPサーバーでできること|機能と仕組み
社内マニュアルの検索や問い合わせの登録など、AIに任せたい業務に合わせて、必要な機能をあらかじめMCPサーバーに登録しておきます。これにより、AIはMCPサーバーを通じて社内システムと連携できるようになります。
MCPサーバーが提供するものは、主に次の3種類です。
-
・Tools(ツール):「AIが実行する操作」AIが社内システムの検索や登録などを行うための機能です。例)社内マニュアルを検索する、問い合わせを登録する など
-
・Resources(リソース):「AIが参考にする情報」AIアプリが読み込み、回答を作る際に参考として使う文書やデータです。例)業務マニュアルの本文、社内規程、案内資料 など
-
・Prompts(プロンプト):「よく使う指示のひな形」AIへの指示をあらかじめまとめ、繰り返し使えるようにしたものです。例)「会議メモを要約して、決定事項を整理する」など
3種類の詳しい仕組みはMCP公式仕様で確認できます。導入時は、まず社内文書の検索など、情報を書き換えない機能から試すと、誤った更新や削除のリスクを抑えられます。
MCPサーバーの活用例|社内業務での3つの使い方
ここからは、MCPサーバーを社内業務で使う3つの活用例を紹介します。
活用例1|社内文書を検索する
AIに「最新の出張申請の手順を探して」と頼むと、利用者が閲覧できる社内文書から関連する資料を検索し、候補を示す仕組みを作れます。回答の根拠となる文書名や更新日も表示すれば、情報を確認しやすくなります。ただし、閲覧権限のない文書が検索結果に表示されないよう、アクセス制御を設計する必要があります。
活用例2|チケットや問い合わせ履歴を参照する
社内の問い合わせを記録する「チケット管理システム」とつなぎ、過去の対応履歴をAIから検索・参照できるようにします。チケットとは、問い合わせ1件ごとの記録のことです。最初は「一覧を見る」「内容を読む」といった操作に限定すると、誤った更新のリスクを抑えられます。担当者によって見られる記録が異なる場合は、その閲覧権限をMCPサーバー側でも守る必要があります。
活用例3|データ参照から更新操作へ広げる
在庫数や注文状況を確認するなど、情報を見る操作から始め、必要に応じて「問い合わせを登録する」「申請を承認する」といった更新操作へ利用を広げられます。ただし、システムの内容を変更する操作には慎重な設計が必要です。問い合わせを登録する場合は、AIが内容を提案し、担当者が画面で確認してから確定する流れにすると、誤登録のリスクを抑えられます。情報を「見る」操作と「変更する」操作は分けて設計しましょう。
作る前に決めること|つなぐシステム・許可する操作・認証と権限
作り始める前に、「どのシステムにつなぐか」「AIに何をさせるか」「誰が使うか」を整理しましょう。例えば、最初の目標を「担当者が社内規程を検索できるようにする」の一つに絞ります。目的が決まると、必要なデータや権限、テスト方法を考えやすくなります。
1. 何につなぐかを決める
まず、使いたい情報がどこにあり、既に利用できるAPIがあるかを確かめます。個人情報や社外秘の文書が含まれるかも重要です。データベース全体をAIにつなぐのではなく、必要な情報だけを取得できる専用の機能を用意すると、使える範囲を管理しやすくなります。試す段階では、実際の顧客情報ではなく、テスト用のデータを使いましょう。
2. AIに許可する操作を決める
AIに許可する操作は「見るだけ」「新しく登録する」「書き換える」「削除する」に分けましょう。例えば社内マニュアルの検索は「見るだけ」、問い合わせの登録は「新しく登録する」に当たります。最初は「見るだけ」に絞り、必要に応じてほかの操作を追加するのがおすすめです。機能の説明文に「操作禁止」と書くだけでは不十分なので、サーバー側で実際に操作を制限します。
3. 利用者の認証とアクセス権限を決める
重要なのは「誰が使うか」と「その人に何が許されているか」です。認証は「本人かどうかの確認」、認可は「何をしてよいかの判断」を意味します。全員が同じ管理者権限で接続すると、本来は閲覧を許可されていない情報まで、AIを通じて見られるようになるおそれがあります。利用者ごとの閲覧範囲を守る設計が必要です。ネットワーク経由の接続についてはMCP公式仕様:Authorizationも参考になります。なお、同じパソコン内で接続する方式とは、認証情報の扱いが異なります。
- 対象業務:何の判断や作業を補助するか
- 接続先:どのAPI・データを使い、どの環境で動かすか
- 許可操作:読み取り・登録・変更・削除の範囲
- 認証と認可:誰の権限で接続し、何をチェックするか
- 記録と承認:誰がいつ何を呼び出したか、どこで人が承認するか
MCPサーバー構築の手順|小さく作って検証する4ステップ
ここからは、MCPサーバーを作る流れを4つのステップで見ていきます。SDKとは、開発に必要な機能をまとめた「開発者向けの道具セット」です。MCPにも公式SDKがあり、接続処理などを一から作らずに開発できます。具体的な書き方はMCP公式TypeScript SDK v2ガイドを参考にしてください。以前のv1のサンプルとは書き方が異なるため、利用する版に合った資料を選ぶことが大切です。
ステップ1:言語とSDKを選ぶ
まずは、社内の担当者が使い慣れているプログラミング言語を選びます。MCPにはTypeScriptやPythonなどの公式SDKがあります。大切なのは、作った後も修正できる言語を選ぶことです。接続方法は、利用する場面によって選びます。例えば、Claude DesktopなどのAIアプリが、同じパソコン内でMCPサーバーを起動して使う場合は「stdio(標準入出力)」が適しています。一方、社内の複数人や離れた場所のAIアプリから利用する場合には、ネットワーク経由で接続する「Streamable HTTP」を検討します。利用するAI製品の対応状況や、社内のセキュリティ要件を確認して選びましょう。
ステップ2:ツール名・入力・返却内容を定義する
ここでは「社内規程を検索する」機能を例にします。AIから受け取るのは「検索する言葉」、返すのは「文書名と参照先」です。SDKでは、機能の名前や説明に加え、「検索する言葉は文字列で受け取る」といった入力のルール(入力スキーマ)を設定できます。ただし、入力形式が正しいだけでは安全とは言えません。利用者が見てよい文書だけを検索し、機密情報を返さない仕組みも必要です。
ここからは、開発担当者向けの参考コードです。MCPサーバーに検索機能を登録する方法を示しています。(サンプルコードであり、実際の社内文書を検索するものではありません。)プログラミングに慣れていない方は、このコードを読み飛ばしても問題ありません。
// 参考:検索機能を登録する練習用コード(SDK v2)
import { McpServer } from '@modelcontextprotocol/server';
import { serveStdio } from '@modelcontextprotocol/server/stdio';
import * as z from 'zod/v4';
serveStdio(() => {
const server = new McpServer({ name: 'policy-demo', version: '1.0.0' });
server.registerTool('find_policy', {
description: '検証用の社内規程を検索するデモ',
inputSchema: z.object({ keyword: z.string().min(1).max(40) })
}, async ({ keyword }) => ({
content: [{ type: 'text', text: `デモ回答:${keyword} の検索処理は未接続です` }]
}));
return server;
});
上のプログラムは、機能の登録方法を示す練習用の例です。社内データの検索は行わず、実際の業務に使うための安全対策も含まれていません。業務システムと接続する際は、認証・権限確認、エラーへの対応、処理が長引いたときの中断などを追加してください。実装例はTypeScript SDK v2の公式構築ガイドを参照できます。
ステップ3:ローカルで正常系・異常系を確認する
作った機能は、まず自分のパソコンなどのテスト環境で試します。MCP Inspectorは、サーバーに接続して機能を確認するための検証ツールです。正しい検索語で結果が返るかだけでなく、空欄のまま検索した場合や、権限のない人が使おうとした場合も確認します。「使えること」と「見せてはいけない情報を見せないこと」の両方が大切です。失敗したときの記録も残しますが、パスワードや文書全文まで保存しないようにしましょう。
ステップ4:社内に公開し、運用の責任者を決める
社内の人が使えるようにする前に、「誰が接続できるか」「通信をどう保護するか」「何を記録するか」「問題が起きたらどう止めるか」を決めます。つないだ先のシステムが更新されたり、社員の担当が変わったりすると、必要な権限も変わります。公開して終わりにせず、定期的に設定と利用記録を確認する担当者を決めておきましょう。
MCPサーバーを接続するAI製品やAPIごとに、利用条件や設定方法も確認しましょう。具体的な手順は、ChatGPTのMCP接続やClaude APIのMCPコネクターなど、それぞれの公式資料で確認できます。
安全に運用するポイント|最小権限・承認・ログ・プロンプトインジェクション
MCPでAIが社内システムを使えるようになると、便利になる一方で、誤った操作や情報の流出に備える必要があります。対策はMCPサーバーだけでなく、AIアプリと社内システムの両方で行います。公式のMCPセキュリティの推奨事項も参考になります。
最小権限と実行前の承認
最小権限とは「仕事に必要なことだけを許可する」考え方です。例えば、マニュアルを探すだけの人に、文書の削除まで許可する必要はありません。登録・変更・削除・外部への送信では、実行前に対象と内容を人が確認できる方法を検討しましょう。許可されていない操作は、サーバー側で確実に止める必要があります。
何が起きたか分かる監査ログ
問題が起きたときに確認できるよう、「誰が・いつ・どの機能を使い・許可されたか」を記録します。こうした記録を「監査ログ」と呼びます。複数の処理を結び付けて調べるための番号(相関ID)を残すこともあります。ただし、パスワードや機密文書の全文など、不要な秘密情報は記録しません。不自然な利用が増えたときに気づき、必要なら接続を止められるようにします。
プロンプトインジェクションは「文章」だけで防がない
例えば、AIが読み取った文書に「この内容を外部へ送信して」といった不正な指示が紛れていたらどうでしょうか。AIがそれを本来の依頼だと勘違いし、望まない操作につながる恐れがあります。これを「プロンプトインジェクション」と呼びます。文書に書かれた文章は、あくまで調べるための情報です。AIが従うべき指示と混同しないことが重要です。さらに、サーバー側での権限制限や、重要な操作の人による承認を組み合わせて対策します。
社内で作るか、一緒に作るか|判断のためのチェック
小さな検索機能なら社内で試作しやすい場合もあります。ただし、社員ごとの閲覧制限や、情報を書き換える機能まで扱うなら、安全性の確認や日々の管理も必要です。「開発できるか」だけではなく、作った後も社内で管理できるかを考えましょう。
| 判断の観点 | 社内主導が向く状況 | 外部と進める価値がある状況 |
|---|---|---|
| 接続先の理解 | つなぐシステムや権限を社内で把握している | 複数部門のシステム調整が必要 |
| 実装体制 | 開発・利用者確認・テストの担当者がいる | 設計の確認や担当者の育成も必要 |
| 運用体制 | トラブル対応・利用記録の確認・更新の担当が明確 | 運用設計や体制づくりから整理したい |
| リスク | 読み取り中心の限定した試作 | 情報の変更や機密データを扱う |
まずは「社内マニュアルを検索する」など、業務を一つ選びましょう。そのうえで、「どの機能を使うか」「誰に利用を許すか」「利用記録をどう残すか」「うまく動いたとどう判断するか」を整理します。外部の開発会社に依頼する場合も、運用ルールや判断基準は社内に残しておくと、その後の改善に役立ちます。
社内システムとAIをどうつなぐか迷ったときは、まず目的と対象業務を整理することが大切です。ORLABが公開しているAI・システム開発の支援内容も、検討する際の参考になります。
MCPサーバー構築でよくある質問(FAQ)
Q1. MCPサーバーを使えば、既存APIの開発は不要になりますか?
いいえ。MCPはAIと外部機能をつなぐための共通ルールです。社内システムからデータを取り出す機能そのものは、既存のAPIを使ったり、必要に応じて新しく作ったりする必要があります。
Q2. ローカルで動いたら、そのまま社内公開できますか?
そのまま公開するのは避けましょう。自分のパソコンだけで動かす場合と、社内の複数人がネットワーク経由で使う場合では、必要な安全対策が異なります。利用者の確認、権限の制限、利用記録の保存、問題発生時の対応を整えてから公開しましょう。
Q3. AIにチケット登録まで任せても安全ですか?
何も対策をせずに任せるのは危険です。例えば、AIが同じ問い合わせを2回登録しないようにする仕組みや、登録前に人が内容を確認する手順が必要です。まずは検索などの「見るだけ」の機能で試し、登録や更新は慎重に追加しましょう。
まとめ|MCPサーバー構築は「つなぐ前の設計」から
MCPサーバーは、AIが社内のデータや業務機能を共通の方法で利用するための窓口です。構築するときは、プログラムを書き始める前に「何につなぐか」「誰が使うか」「何を許可するか」を決めましょう。小さな検索機能から試し、利用者の確認、権限、操作前の承認、利用記録を整えてから利用範囲を広げるのがおすすめです。
ORLABでは、MCPサーバーを含むAIと社内システムの連携を、設計から一緒に進める開発支援を提供しています。 MCPサーバーの導入を検討する際も、まずは対象業務と必要な安全対策を整理することが大切です。
AIエージェントの全体像から整理したい場合は、関連記事「AIエージェントの作り方」も参考になります。MCPはエージェントの目的や判断基準を決める代わりではなく、必要なデータや機能に接続するための部品として位置づけると理解しやすくなります。
社内システムとAIの連携を、安全な設計から。
社内の仕組みをAIから利用したいものの、何を公開し、どの操作を人の承認に残すべきか判断が難しい場合は、まず対象業務と権限の棚卸しからご相談ください。
参考資料(2026年11月9日確認)
- MCP公式仕様
- MCP公式仕様:Authorization
- MCP公式TypeScript SDK v2ガイド
- TypeScript SDK v2の公式構築ガイド
- ChatGPTのMCP接続
- Claude APIのMCPコネクター
- MCPセキュリティの推奨事項
執筆:ORLAB編集部/監修:鹿間康文(代表取締役)

