株式会社エムニ
🐡

Azure Agent Service で作成したエージェントにMCPをツールとして持たせる際の注意点

に公開

こんにちは!株式会社エムニのインターン生の大野です。
Azure Agent Service で利用する SDK azure-ai-agents にベータ版アップデートが実施され、作成したエージェントに MCP ツールをセットできるようになりました。
現在公開されているMCPツールを利用する際に注意すべき点があるので、まとめていきます。

概要

  • Azure AI Foundry Agent Service から MCP を使うには、公開到達可能なリモートMCPサーバーが必要(server_url を指定、認証はヘッダーで都度付与)。
  • npmによるSlack MCP は stdio のみである。
  • 現時点では 公式のSlack MCP Server はないため、サードバーティ製 MCP Server 等の利用を検討した方がよい。

背景

Azure AI Foundry Agent Service では、エージェントにツールを持たせることができます。AI Search や Bing 検索など Microsoft 提供のツールは比較的容易に実装できますが、エージェントへ Slack MCP をツールとして接続する際に課題があったため、問題点と対応方針を整理します。

前提知識

用語(抜粋)

用語 エージェント利用時に該当する項目
MCP Client MCP Server と通信するアプリケーション(本ケースではエージェント本体)
MCP Server 「MCP を通じて特定機能を公開する軽量プログラム」 のこと。物理サーバー常駐を前提とする用語名に見えますが、概念としては機能提供プログラムを指します(公式ドキュメント)。
Tool MCP Server が公開するメソッド(機能)の総称。

接続方式

MCP Client と MCP Server の接続方式として、 stdioSSE、そして、Streamable HTTP の3種類が挙げられます。なお、SSEによる接続は非推奨のケースもあり、各プラットフォームの情報を確認してください。

Azure AI Agent でのMCPの利用について

公式ドキュメントによると、Agent から MCP を利用するには、公開 URL(server_url)で到達可能である必要があります[1]

You need to bring a remote MCP server (an existing MCP server endpoint) to Foundry Agent Service.

リモートMCPサーバー(既存のMCPサーバーエンドポイント)をFoundry Agent Serviceに組み込む必要があります。

また、エージェントの run 作成時には tool_resourcesheaders を設定して MCP の認証を行います。認証情報は保存されないため、run 作成のたびに指定が必要 です[1:1][2]

Slack MCPについて

npmで提供されている Slack MCP (npm)stdio MCP であり、HTTP で到達可能なエンドポイントを持ちません。そのため、Azure から利用するには、Streamable HTTP に対応した Slack MCP Server が必要です。例えば korotovsky/slack-mcp-server は、有力候補ですが、セキュリティ観点での評価・運用方針の検討が別途必要です。

考えられる実装の方針

実装の方針として以下が考えられますが、状況に合わせて検討の必要がありそうです。

  1. サードパーティ製 Streamable HTTP MCP Server の採用
  2. 自社方針に合致した MCP Server の内製

終わりに

以上、Azure Agent Service の MCP 連携で気をつけたいポイントをまとめました。MCP は毎週のようにアップデートが入るため、試行錯誤を楽しみつつ、うまく波に乗っていきたいですね。

脚注
  1. Microsoft Learn. 「モデル コンテキスト プロトコル サーバーへの接続 (プレビュー)」最終更新: 2025年10月11日 (Microsoft Learn) ↩︎ ↩︎

  2. Microsoft Learn. 「モデル コンテキスト プロトコル ツールの使用方法 (プレビュー)」最終更新: 2025年9月5日 (Microsoft Learn) ↩︎

株式会社エムニ
株式会社エムニ

Discussion