大規模な言語モデリング(LLM)アプリケーション開発では、モデルが外部のツールやデータソースと安全かつ効率的にやり取りできるようにする方法が中心的な課題となっている。モデル・コンテキスト・プロトコル(MCP)は、この目的のために作成され、LLMと外部との間の通信仕様の標準セットを確立することを目的としている。本論文では、まず MCP
そして、オープンソースのLLMアプリケーション開発プラットフォームのコアとなる原則を掘り下げる。 Dify
その豊かさをどう生かすか。 MCP
パワフルなAIアプリを構築するためのプラグインエコシステム。
コーナーストーンを理解する:MCPとFastMCP
深い Dify
プラグインの前に、まず以下のことを理解する必要がある。 MCP
それは何なのか? FastMCP
どのように実装を簡素化するか。
MCPサービス実施原則
MCP
は、クライアント・サーバー・アーキテクチャに基づくプロトコルで、大規模な言語モデルが標準化されたメッセージフォーマットを通じて外部ツールを発見し、呼び出すことを可能にする。コアとなるアーキテクチャは3つの部分から構成されている:
- MCPホストAIアプリケーション
Claude Desktop
もしかしたらCursor IDE
は、ユーザーのコマンドを受信し、LLMを調整する責任を負う。 - MCPクライアントに組み込まれている。
Host
のミドルウェアはMCP Server
コネクションとコミュニケーションを確立する。 - MCPサーバーデータベースやAPIなど、実世界のデータやツールに接続する特定の機能を提供する軽量なサービス。
コミュニケーションレベル。MCP
プロトコルは JSON-RPC 2.0
メッセージをカプセル化し、ローカル・プロセス通信など、さまざまなトランスポート・モードをサポートする。 Stdio
および遠隔通信用 HTTP with SSE
歌で応える Streamable HTTP
.現在。Streamable HTTP
柔軟性があり、最新のネットワーク・プロトコルとの互換性が高いため、主流の伝送方式として推奨されている。
機能的には。MCP
サーバーは主に3種類の機能を提供する:
- ツールファイル操作やAPIリクエストなど、呼び出し可能な関数。
- リソース: URIで識別されるデータベースレコードのようなクラスファイル形式のデータ。
- プロンプトLLMの出力を標準化するための、定義済みの相互作用テンプレート。
FastMCP: PythonicのMCPフレームワーク
FastMCP
効率的である。 MCP
Python プロトコル実装フレームワーク。これは JSON-RPC
詳細、スキーマ構成、通信管理は高度に抽象化され、カプセル化されている。開発者は、複雑なプロトコルの詳細を気にする必要がなく、素早く構築することができる。 MCP
サービス
例えば @mcp.tool
デコレーターを使えば、ツールを簡単に定義できる:
@mcp.tool
def multiply(a: float, b: float) -> float:
"""This tool multiplies two numbers."""
return a * b
FastMCP
また、サービス・ポートフォリオやミドルウェアなどの高度な機能もサポートし、AIツールチェーンの開発を大幅に簡素化する。
DifyのMCPプラグインエコロジー
Dify
を深く統合したオープンソースのLLMアプリケーション開発プラットフォームです。 MCP
プロトコルに接続し、構築するための一連のプラグインを提供する。 MCP
サービス。これらのプラグインは大きく分けて、サーバーサイド、クライアントサイド、そして Agent
戦略の3つのカテゴリー
プラグイン | 挙げる | 類型論 | GitHubリポジトリ |
---|---|---|---|
エージェントポリシー(MCPツール対応) | 提供 Function Calling 歌で応える ReAct 支援する戦略 MCP ツールの発見と呼び出し。 |
インフラ | dify-plugin-agent-mcp_sse |
MCP SSE / StreamableHTTP | する MCP クライアントは HTTP with SSE もしかしたら Streamable HTTP ディスカバリーと呼び出しツール。 |
インフラ | – |
MCPエージェントポリシー | サポートのみ Function Calling 戦略的 Agent を呼び出す。 MCP 道具だ。 |
インフラ | – |
MCPサーバー | そうしれいかん Dify ワークフローまたはダイアログフローは MCP サーバー |
インフラ | dify-plugin-mcp_server |
MCP対応ディファイツール | そうしれいかん Dify 内蔵ツールのAPIは、以下のように変換される。 MCP 互換API。 |
インフラ | dify-plugin-mcp_compat_dify_tools |
使用時に設定されるMCPツール | アン MCP クライアントのサービスアドレスは、使用時に動的に設定される。 |
インフラ | – |
ナコス MCP | をとおして Nacos レジストリの発見と呼び出し MCP サービス |
アプライアンス | nacos-dify-plugins |
AntV可視化チャート | に基づいている。 AntV チャート作成 MCP サービス |
アプライアンス | mcpサーバーチャート |
ハローDB | としてデータベース機能をカプセル化するデータベースクエリヘルパーです。 MCP サービス |
アプライアンス | HelloDB Wiki |
データフォーカス | イリュージョン提供制御 Text2SQL 歌で応える ChatBI プラグイン。 |
アプライアンス | – |
コアプラグイン・ユーザーガイド
プラグインタイプ I: Dify アプリケーションを MCP サービスとして公開する
この種のプラグインの目的は、あなたが持っている情報を Dify
ワークフロー、ダイアログフロー、個々のツールなど)で作成された機能は、標準として公開される。 MCP
その他のサービス MCP
クライアント・コール
- MCPサーバーこのプラグインを使えば
Dify
ワークフローやダイアログフローはMCP
サーバー。いったんエンドポイントが設定されると、外部アプリケーションはそれをネイティブなMCP
を提供する。Dify
アプリケーション・インタラクション。
- MCP対応ディファイツールもし、ワークフロー全体を公開せず、単に
Dify
としてリリースされる。MCP
サービスには、このプラグインが最適です。
プラグインタイプ II: Difyで外部のMCPサービスを呼び出す
このタイプのプラグインは MCP
クライアントロールでは、以下のことが可能です。 Dify
アプリケーションは外部の MCP
サービス
- MCP SSE / StreamableHTTPスタンダードだ
MCP
クライアントツール。必要なのはMCP
サービスのアドレスから、そのサービスが提供するすべてのツールを自動的に発見する。Dify
ワークフローで直接 - 使用時に設定されるMCPツール前のプラグインと似たような機能だが、より柔軟性がある。
MCP
サービス住所
プラグインタイプ III: エージェント戦略
Agent
であります Dify
ワークフローの頭脳で、マルチステップのタスクがどのように計画され、実行されるかを決定する。MCP
ストラテジープラグインは Agent
各論 MCP
ツールの容量。
- エージェントポリシー(MCPツール対応)これは最も汎用性が高い。
Agent
戦略プラグイン。またFunction Calling
歌で応えるReAct
2つのモデル。- 関数呼び出しどのツールが呼び出され、実行されるかは、モデルが直接決定する。
- リ・アクト思考-行動-観察サイクルを実行するモデルは、多段階の推論を必要とする複雑なタスクに適している。
- MCPエージェントポリシーこれはもっと軽い。
Agent
のみをサポートする。Function Calling
モード。タスクロジックが比較的単純で、ツールを直接呼び出すことで達成できる場合は、このプラグインを使用する方が効率的です。
技術的詳細:SSE対ストリーマブルHTTPの決定
MCP
このプロトコルは様々な伝送方式をサポートしている。 HTTP with SSE
歌で応える Streamable HTTP
の2つが遠隔通信の主なオプションである。
比較寸法 | SSE(サーバー送信イベント)付きHTTP | ストリーミング可能なHTTP(ストリーミング可能な通常のHTTP/フェッチ) |
---|---|---|
プロトコル層 | HTTP/1.1 ロングコネクションに基づいたイベントフレーム構文をカプセル化します。 | 標準的なHTTP、チャンク転送エンコーディングに依存し、固定フレームフォーマットはない。 |
コミュニケーション・ディレクション | 一方通行(サーバー → クライアント)。 | 両方向で利用可能。 |
ブラウザAPI | EventSource オブジェクトに自動再接続機能が組み込まれています。 |
fetch() + ReadableStream リコネクションには自作のロジックが必要だ。 |
フレーム/メッセージ形式 | テキスト形式で、イベントのグループ化とIDをサポート。 | フリーフォーマット、譲渡可能 NDJSON バイナリー・スライシングなど |
ハートビートとリコネクト | 内部サポート。 | 自力で実現する必要がある。 |
典型的なシナリオ | リアルタイム通知、ログプッシュ。 | AIトークン ストリーミングリターン、大容量ファイルのダウンロード。 |
長所と短所を一言で | 実装は簡単だが、一方通行/プレーンテキストのみ。 | 柔軟で効率的だが、エラーリカバリーを自分で処理する必要がある。 |
選考アドバイス古い実装との互換性が必要な場合を除き、好ましい。 ストリーミング可能なHTTP.より柔軟で、より有効に活用できる。 HTTP/2
歌で応える HTTP/3
最新のマルチプレックスの利点 MCP
アプリケーションに最適な伝送ソリューション。
MCPエコシステム:サービスとプラットフォーム
MCP
その価値は生態系にある。さらに Dify
のためのプラットフォームやサービスも数多くある。 MCP
サポートを提供した。
アリユンとモデルスコープ
アリユンとその周辺 ModelScope
この地域には、以下のようなものがある。 MCP
などのリソースがある:
- モードスコープMCPスクエア高品質なものを大量に集める
MCP
モデルの能力の限界を拡大するためのリソース。
- モデルスコープMCPラボラトリーオープンソースモデルとの関係を探求するためのオンライン環境を提供。
MCP Server
自由な組み合わせの
- PYREX MCPサービスAliCloud Hundred Refinement Platformは、フルサイクルリファインメントを提供します。
MCP
カストーディアル・サービスとマーケティング・サービス。
サードパーティのMCPホスティング・プラットフォーム
自前でデプロイやメンテナンスをしたくない場合 MCP
サーバーを使用する場合は、サードパーティのホスティングプラットフォームを使用することを検討してください。
プラットフォーム名 | 挙げる | リンク |
---|---|---|
コンポジオ | 開発者のための専門化 MCP 数百の統合済みツールとエンタープライズグレードの機能を備えたホスティングプラットフォーム。 |
https://mcp.composio.dev/ |
Zapier MCP | そうしれいかん MCP 7,000以上のアプリからなる膨大なエコシステムへのアクセスは、あらゆる種類のオフィス・ソフトウェアや企業向けソフトウェアに素早く接続するのに理想的だ。 |
https://zapier.com/mcp |
MCP.so | 地域主導 MCP 豊富な事例と、学習と実験のためのプレイグラウンドを備えた集計プラットフォーム。 |
https://mcp.so/playground |
この3つは位置づけが違う:Composio
プロフェッショナル・ホスティングとプロダクション・グレードのアプリケーションに重点を置く;Zapier MCP
は、ローコード自動化のための膨大なアプリのエコシステムの接続に重点を置いている。 MCP.so
そして、学習とプロトタイプのための素晴らしいコミュニティ・リソースとなる。