MCPとOpenAI Agents SDKを統合
🦉GPT-4oの画像生成機能と、Makiさんのグラレコプロンプトを使って生成した画像です🦉
はじめに
現地時間2025年3月26日、OpenAIがModel Context Protocol(MCP)とOpenAI Agents SDKの統合を発表しました。この統合により、開発者はAIモデルに外部ツールやデータソースを簡単に接続できるようになります。また、今後数ヶ月のうちにOpenAI APIとChatGPTデスクトップアプリにもMCPサポートが追加される予定です。
この記事では、MCPとOpenAI Agents SDKの統合が何を意味するのか見ていけたらと思います!
そしてITエンジニアにとってなぜこれが重要なのかを解説します。
Model Context Protocol (MCP)とは?
MCPは、AIモデルにコンテキスト(文脈)やツールを提供するための標準化されたプロトコルです。OpenAIの公式発表では、MCPを「AI用のUSB-C」と表現しています。
つまり、USB-Cがさまざまなデバイスと周辺機器を接続するための標準インターフェースを提供するように、MCPはAIモデルと異なるデータソースやツールを接続するための標準的な方法を提供します。
元々AnthropicによってスタートしたMCPは、AIモデルを単なるチャットボットから「相互運用可能なシステム」へと進化させる鍵となる技術です。
こちらの記事も参考にしてください!
OpenAI Agents SDKとMCPの統合:何ができるようになるのか
OpenAI Agents SDKは、AIエージェントが計画を立て、ツールを使用し、複数ステップのタスクを実行するための軽量なPythonフレームワークです。
今回の統合により:
- 外部システムとの簡単な接続:MCPサーバーを介して内部データベースやSaaSツールなどの外部システムをエージェントに簡単に接続できます。
- 統一されたツールインターフェース:異なるソースからのツール(MCPサーバー、ローカルツール、SDK組み込みツール)を一貫した方法で利用できます。
- コードの例:
async with MCPServerStdio(
params={
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", samples_dir],
}
) as server:
tools = await server.list_tools()
agent = Agent(
name="Assistant",
instructions="Use the tools to achieve the task",
mcp_servers=[mcp_server_1, mcp_server_2]
)
MCPサーバーの種類と使い方
MCPには現在、2種類のサーバーが定義されています:
-
stdio サーバー:アプリケーションのサブプロセスとして実行されるローカルサーバー。
MCPServerStdio
クラスを使用して接続します。 -
HTTP over SSEサーバー:リモートで実行され、URLを介して接続するサーバー。
MCPServerSse
クラスを使用して接続します。
MCPサーバーをAgentsに追加すると、エージェント実行時にlist_tools()
が呼び出され、LLMがサーバーのツールを認識できるようになります。LLMがMCPサーバーのツールを呼び出すと、SDKはそのサーバーのcall_tool()
を呼び出します。
パフォーマンスを向上させるために、cache_tools_list=True
パラメータを渡してツールリストをキャッシュすることもできます。ただし、ツールリストが変更されない場合に限ります。
ITエンジニアへの影響は?
- 開発効率の向上:複雑なデータ統合を個別に実装する必要がなくなり、エージェント開発の時間が短縮されます。
- 機能の拡張:単一の構文でさまざまなツールを利用できるため、エージェントの機能範囲と柔軟性が大幅に向上します。
- コミュニティ駆動の成長:MCPはオープンソースであり、開発者が再利用可能なコネクターを構築できるため、エコシステムの拡大が期待できます。
今後の展望:OpenAI APIとChatGPTデスクトップアプリへのMCPサポート
OpenAIは今後数ヶ月のうちに、OpenAI APIとChatGPTデスクトップアプリにもMCPサポートを追加すると発表しています。これにより:
- APIユーザーは、MCPを介してより多くの外部データやツールをAIに提供できるようになります。
- ChatGPTデスクトップアプリユーザーは、ローカル環境で動作するエージェントを通じて、外部サービスやローカル知識ベースにアクセスできるようになります。
これらの変更により、AIエージェントは単なるチャットボットから、業務ツールや個人アシスタントとして実用的な存在へと進化する可能性があります。
まとめ
MCPとOpenAI Agents SDKの統合は、AIエージェント開発における重要なマイルストーンと考えています。この統合により:
- AIに外部データやツールを提供するプロセスが標準化され、開発がシンプルになります
- エージェントのコンテキスト認識能力が向上し、より実用的な応答が可能になります
- オープンな標準に基づいたエコシステムが形成され、相互運用性が高まります
今後数ヶ月で、OpenAIがどのようにMCPサポートを展開し、開発者コミュニティがこれをどう活用するかが、非常に楽しみで私はワクワクしています!
AIエージェント開発に興味のあるエンジニアは、OpenAIの公式ドキュメント(https://openai.github.io/openai-agents-python/mcp/)を参照して、最新情報に触れておきましょう!
Discussion