Dify MCP Server

Dify MCP サーバー

英語|中国語

TypeScriptベースのMCP(Model Context Protocol)サーバーは、MCPクライアントとDifyアプリケーションを接続します。このサーバーは、DifyアプリケーションをMCPクライアント内で直接使用できるツールとして動的に公開します。

概要

このサーバーは、MCPクライアントとDifyアプリケーション間の橋渡しとして、モデルコンテキストプロトコルを実装しています。Dify APIからアプリケーション仕様を動的に取得し、MCPツールとして公開します。このサーバーにより、ユーザーはMCPクライアント内の統一されたインターフェースを通じて、複数のDifyアプリケーションと連携できます。

特徴

ダイナミックDify統合

  • APIキーを使用して複数のDifyアプリケーションに接続します
  • アプリケーションのメタデータとパラメータを自動的に取得します
  • Difyアプリケーション仕様に基づいてツールインターフェースを動的に生成します
  • テキスト、段落、選択ドロップダウンなど、さまざまな入力タイプをサポートします

リクエスト処理

  • リクエストの再試行による堅牢なエラー処理
  • ブロッキングとストリーミングの両方の応答モードをサポート
  • 大きな数値に対する JSON BigInt の処理

構成

  • 環境変数を通じて設定されたAPIキー
  • 構成可能なベース URL とタイムアウト設定
  • 環境変数が利用できない場合はデフォルト値にフォールバックする

インストール

前提条件

  • Node.js (v16 以上)
  • npmまたはyarn

設定

  1. リポジトリをクローンする
git clone https://github.com/zhuzhoulin/dify-mcp-server.git cd dify-mcp-server
  1. 依存関係をインストールする
npm install
  1. プロジェクトを構築する
npm run build

Windsurf IDEとの統合

Windsurf IDE で使用するには、MCP 設定にサーバー構成を追加します。

{ "mcpServers": { "dify-mcp-server": { "command": "node", "args": [ "/path/to/dify-mcp-server/build/index.js" ], "env": { "AGENT_API_KEYS": "key1,key2,key3", "BASE_URL": "https://api.dify.ai", "TIMEOUT": "60000" } } } }

環境変数

  • AGENT_API_KEYS : Dify APIキーのカンマ区切りリスト
  • BASE_URL : Dify API のベース URL (デフォルト: https://api.dify.ai )
  • TIMEOUT : リクエストのタイムアウト(ミリ秒)(デフォルト: 60000)

環境変数を取得する方法

API秘密钥(AGENT_API_KEYS): 多个以,分割

使用法

設定が完了すると、Dify MCP サーバーは次の動作を実行します。

  1. 提供されたAPIキーを使用して、指定されたDifyアプリケーションに接続します
  2. アプリケーションのメタデータとパラメータ仕様を取得する
  3. Dify アプリケーション構成に基づいて MCP ツール インターフェースを生成する
  4. これらのツールをWindsurf IDE内で利用できるようにする

各 Dify アプリケーションはdify_app_info_{application_name}という名前形式を持つ個別のツールとして公開されます。

発達

利用可能なスクリプト

  • npm run build : プロジェクトをビルドする
  • npm run prepare : 配布用にプロジェクトを準備する
  • npm run watch : 変更を監視して再構築する
  • npm run inspector : デバッグ用に MCP インスペクタを実行する

プロジェクト構造

  • src/index.ts : メインサーバーの実装
  • src/request.ts : Dify API通信用のHTTPクライアント
  • src/type.ts : Dify API の TypeScript インターフェース

トラブルシューティング

問題が発生した場合:

  1. APIキーが正しく、必要な権限があることを確認してください
  2. BASE_URLがあなたの環境からアクセスできることを確認してください
  3. 詳細なエラーメッセージについてはサーバーログを確認してください
  4. Difyアプリケーションが適切に構成され、アクセス可能であることを確認する

ライセンス

このプロジェクトは、LICENSE ファイルに指定された条件に基づいてライセンスされます。

-
security - not tested
-
license - not tested
-
quality - not tested

MCP クライアントを Dify アプリケーションに接続し、Dify アプリケーションを MCP クライアント内で直接使用できるツールとして動的に公開する TypeScript ベースのサーバーです。

  1. Overview
    1. Features
      1. Dynamic Dify Integration
      2. Request Handling
      3. Configuration
    2. Installation
      1. Prerequisites
      2. Setup
      3. Integration with Windsurf IDE
    3. Environment Variables
      1. How to get Environment Variables
        1. Usage
          1. Development
            1. Available Scripts
            2. Project Structure
          2. Troubleshooting
            1. License
              ID: igha6p0ztu