Model Context Protocol (MCP)の概要と活用方法:AIと外部システムの連携を標準化

Model Context Protocol (MCP)の概要と活用方法:AIと外部システムの連携を標準化

Anthropicが提唱するModel Context Protocol (MCP)について解説します。AIモデルと外部ツールやデータソースを安全かつ効率的に連携させる新しい標準プロトコルの仕組みと実装例をご紹介します。

  • #AI
  • #MCP
  • #Anthropic
  • #技術

AIモデルが外部のデータソースやツールと連携することは、実用的なAIアプリケーションを構築する上で不可欠になっています。今回は、Anthropic社がオープンソースとして公開した「Model Context Protocol (MCP)」について、その概要と実装方法を解説します。

AIと外部システム連携の課題

これまでのAIアプリケーション開発には、以下のような課題がありました:

  • ツールやデータソースごとに独自の連携処理(APIクライアントなど)を実装する必要がある
  • 複数のAIモデルやプラットフォーム間で、ツールの再利用が難しい
  • セキュリティやアクセス制御の実装が複雑になりがち
  • システムの拡張や保守に多大なコストがかかる

Model Context Protocol (MCP)とは

Model Context Protocol (MCP) は、AIモデル(クライアント)と外部のデータソースやツール(サーバー)間の通信を標準化するためのオープンなプロトコルです。

USB-Cが様々なデバイスの接続を標準化したように、MCPはAIモデルとデータソースの接続を標準化します。これにより、一度MCPサーバーとしてツールを実装すれば、MCPに対応したあらゆるAIクライアント(Claude DesktopやCursorなど)から再利用できるようになります。

MCPの主要な機能

MCPは主に以下の3つの機能を提供します:

  1. Resources(リソース): ファイルやデータベースなど、AIモデルに読み込ませたいコンテキストデータを提供します。
  2. Tools(ツール): AIモデルが実行できる関数やアクション(API呼び出しなど)を提供します。
  3. Prompts(プロンプト): ユーザーが利用できる再利用可能なプロンプトテンプレートを提供します。

実装方法

ここでは、TypeScriptを使用して簡単なMCPサーバーを実装する例をご紹介します。

1. 環境構築

まず、MCPの公式SDKをインストールします。

npm install @modelcontextprotocol/sdk

2. MCPサーバーの実装

簡単な計算機能を提供するツールを持ったMCPサーバーを実装します。

import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';

// サーバーの初期化
const server = new Server(
  {
    name: 'calculator-server',
    version: '1.0.0',
  },
  {
    capabilities: {
      tools: {},
    },
  },
);

// ツールの定義
server.setRequestHandler(ListToolsRequestSchema, async () => {
  return {
    tools: [
      {
        name: 'calculate_sum',
        description: '2つの数値の合計を計算します',
        inputSchema: {
          type: 'object',
          properties: {
            a: { type: 'number' },
            b: { type: 'number' },
          },
          required: ['a', 'b'],
        },
      },
    ],
  };
});

// ツールの実行処理
server.setRequestHandler(CallToolRequestSchema, async (request) => {
  if (request.params.name === 'calculate_sum') {
    const { a, b } = request.params.arguments as { a: number; b: number };
    const result = a + b;

    return {
      content: [
        {
          type: 'text',
          text: `計算結果: ${result}`,
        },
      ],
    };
  }
  throw new Error('Tool not found');
});

// サーバーの起動
async function main() {
  const transport = new StdioServerTransport();
  await server.connect(transport);
  console.log('Calculator MCP Server running on stdio');
}

main().catch(console.error);

このサーバーを起動し、MCP対応のクライアント(Claude Desktopなど)に設定ファイル経由で登録することで、AIが自動的にcalculate_sumツールを認識し、必要に応じて呼び出すことができるようになります。

MCP導入のメリット

MCPを導入することで、以下のような効果が期待できます:

  • 開発効率の向上: 一度作成したMCPサーバーは、様々なAIクライアントで使い回すことができます。
  • セキュアな連携: クライアントとサーバーの責務が明確に分離され、ローカル環境や社内ネットワーク内での安全なデータ連携が容易になります。
  • エコシステムの活用: コミュニティによって作成された既存のMCPサーバー(GitHub連携、データベース接続など)を簡単に自社システムに組み込むことができます。

まとめ

Model Context Protocol (MCP)は、AIと外部システムの連携における複雑さを解消し、スケーラブルで安全なAIアプリケーション開発を可能にする強力な標準規格です。今後、MCPに対応したツールやクライアントが増加することで、AIの活用範囲はさらに広がっていくでしょう。

TS Primeでは、MCPを活用したAIエージェントの開発や、社内システムとAIを連携させるセキュアなインフラ構築の支援を行っています。AIを活用した業務効率化やシステム開発にご興味がある方は、ぜひお問い合わせください。


執筆者: TS Prime AI開発チーム
公開日: 2026年6月26日