Skip to content

MCP over MQTT

MCP over MQTTは、MQTTプロトコル上で動作するModel Context Protocol(MCP)の実装です。

MQTTの軽量で効率的かつ広く採用されている特性を活用することで、MCPのコンテキストおよびツール呼び出し機能をIoTおよびエッジコンピューティングのシナリオに拡張し、デバイスとAIサービス間の低レイテンシでシームレスな連携を実現します。

なぜMCPにMQTTを使うのか

MQTTは、IoTやエッジコンピューティングで広く使われている軽量なパブリッシュ/サブスクライブ型メッセージングプロトコルです。信頼性の低いネットワークや低帯域環境での通信を想定して設計されており、エッジデバイスとクラウドサービス間の通信に最適です。

MCPのトランスポート層としてMQTTを利用することで、エッジコンピューティング、IoT、クラウドサービスなど、MQTTが既に利用されている幅広いシナリオにMCPの適用範囲を拡大します。

主な特徴

標準のMCP機能を維持しつつ、MCP over MQTTは以下の機能を強化・拡張しています。

  • 組み込みのサービス登録とディスカバリー
    MCPクライアントはMQTTブローカーを介して利用可能なMCPサーバーを自動的に検出でき、サービス統合を簡素化します。
  • ロードバランシングと水平スケーラビリティ
    複数のMCPサーバーインスタンスをデプロイして水平スケールが可能であり、状態の一貫性を保ちながら可用性とスループットを向上させます。
  • 集中認証と認可
    MQTTブローカーの認証およびアクセス制御機構を活用することで、MCP over MQTTは認可されたクライアントのみが指定されたMCPサービスにアクセスできるようにします。
  • サービス名の管理と配布
    標準MCPプロトコルの上に、EMQXはサービス識別および分類のためのMCPサービス名の概念を導入しています。管理者はEMQX上でサービス名を集中管理および配布でき、マルチサービス環境での統一的な管理と保守を簡素化します。