MCP Dust Server

by ma3u
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Enables integration with Windsurf IDE (a Codeium product), allowing developers to interact with Dust AI agents directly from their development environment

MCPダストサーバー

このリポジトリには、Dustエージェントとのやり取りを目的としたモデルコンテキストプロトコル(MCP)サーバーの実装が含まれています。サーバーは、MCPサーバー(Dust APIとのやり取りを処理)とMCPテストクライアント(テスト用のWebインターフェースを提供)という2つの主要コンポーネントに分かれています。

目次

特徴

  • MCP サーバーとテスト クライアント コンポーネントを分離する
  • Dust API 経由で Dust AI エージェントとやり取りする
  • サーバー送信イベント(SSE)とHTTPストリームトランスポートを使用したリアルタイムストリーミング応答
  • 「initialize」、「message」、「terminate」、「run」メソッドによる完全なJSON-RPC 2.0サポート
  • 'run' メソッドによる直接ツール実行により、クライアント統合が簡素化されます。
  • 堅牢なセッション管理とコンテキスト保存
  • ログ内の個人情報をマスキングして API キーを安全に処理
  • 永続的な接続を維持するためのハートビートメカニズム
  • 接続が切断された場合の自動再接続
  • 包括的なエラー処理とレポート
  • 最新のMCP仕様のサポート(2025年3月26日)
  • 監視とヘルスチェックのためのステータスエンドポイント

建築

MCP Dust サーバーは次のコンポーネントを使用して構築されます。

**図1:**サーバーとクライアントのコンポーネントを示すMCPサーバーアーキテクチャ

  1. MCP サーバー (server.ts) :
    • Dust API との MCP プロトコルのやり取りを処理します
    • セッション状態とコンテキストを管理する
    • MCP ライフサイクル全体を実装します (初期化、メッセージ、終了)
    • SSEとHTTPストリームトランスポートの両方をサポート
    • 監視用のステータスエンドポイントを提供する
  2. MCP テストクライアント (client.ts) :
    • テスト用のWebインターフェースを提供する
    • MCPサーバーとのやり取りを可能にします
    • リアルタイムストリーミングとデバッグをサポート
    • セッション管理と接続追跡を含む

Dust.tt エージェント AI

Dust.ttは、組織がそれぞれのニーズに合わせてカスタマイズされたAIエージェントを構築・導入できるよう設計されたプラットフォームです。GPT-4、Claude、Gemini、Mistralといった高度なAIモデルとエンタープライズグレードのセキュリティ機能を統合し、ワークフローの効率化、タスクの自動化、そして様々な業務機能における生産性向上を実現します。

**図2:**エージェントの機能を示すDust.ttプラットフォームインターフェースのスクリーンショット

カスタム AI エージェント: パーソナライズされたエージェント: チームまたは個人のニーズに合わせてカスタマイズされた指示とツールを備えたエージェントを作成します。

会社のコンテキスト: エージェントを Notion、Slack、GitHub などの社内ツールや外部 API と統合し、会社のデータにシームレスにアクセスできるようにします。

マルチエージェント ワークフロー: それぞれ独自の機能を持つ複数のエージェントを 1 つのワークフローに結合して連結します。

データ ソースとの統合: データ接続: エージェントを SharePoint、Zendesk、Jira、Salesforce、Snowflake などのデータに接続します。

動的クエリ: エージェントを使用して、自然言語または SQL クエリでスプレッドシート、データベース、ウェアハウスを分析します。

リアルタイム更新: 最新の対応のために会社の知識を継続的に同期します。

オープンソース:MITライセンスに基づき、 GitHubで公開されています。大規模なユーザーと開発者のコミュニティがあります。

ホスティング: SaaS または独自のサーバーでのホスティング オプション

インストール

前提条件

  • Node.js (推奨: nvm経由で最新の LTS バージョンをインストール)
  • npm (Node.js に付属)
  • タイプスクリプト

手順

  1. リポジトリをクローンします。
    git clone https://github.com/ma3u/mcp-dust-server.git cd mcp-dust-server
  2. 依存関係をインストールします:
    npm install
  3. 環境変数を設定します.env.exampleに基づいてルート ディレクトリに.envファイルを作成します。
    # Startup Mode (server, client, or both) START_MODE=both # MCP Server Configuration MCP_NAME=Dust MCP Server JS MCP_HOST=127.0.0.1 MCP_PORT=5001 MCP_TIMEOUT=30 # seconds # MCP Test Client Configuration CLIENT_HOST=127.0.0.1 CLIENT_PORT=6001 # Dust API Configuration DUST_API_KEY=your_dust_api_key_here DUST_WORKSPACE_ID=your_workspace_id_here DUST_AGENT_ID=your_agent_id_here DUST_DOMAIN=https://dust.tt # User Context Information (used in Dust API requests) DUST_USERNAME=your_username DUST_EMAIL=your_email@example.com DUST_FULLNAME=Your Full Name DUST_TIMEZONE=Europe/Berlin

サーバーとクライアントの起動

MCPサーバーとテストクライアントは別々に実行することも、一緒に実行することもできます。プロジェクトでは、さまざまなシナリオに対応する複数のnpmスクリプトを提供しています。

  1. サーバーとクライアントの両方を起動します
    npm run start
  2. MCP サーバーのみを起動します:
    npm run start:server
  3. テストクライアントのみを起動:
    npm run start:client

期待される出力

すべてが正しく構成されている場合、次のような出力が表示されます。

MCP サーバーの場合:

MCP Server running on http://127.0.0.1:5001 (timeout: 30s) Server name: Dust MCP Bridge Dust workspace: your_workspace_id Dust agent: your_agent_id

テストクライアントの場合:

MCP Test Client running on http://127.0.0.1:6001

APIエンドポイント

サーバーは、ヘルスチェックとMCPプロトコル通信用のエンドポイントを複数提供しています。詳細なAPIドキュメントについては、開発者向けドキュメントをご覧ください。

主なエンドポイントは次のとおりです。

  • ヘルスチェック: /health/ready/live
  • MCP プロトコル: /sse (サーバー送信イベント)、 /stream (HTTP ストリーム トランスポート)

デバッグ

MCP インスペクターを含むデバッグ ツールとテクニックの詳細については、開発者ドキュメントを参照してください。

接続の問題のトラブルシューティング

MCP Inspector またはその他のクライアントで接続の問題が発生している場合は、次の一般的な問題を確認してください。

  1. ポート設定の不一致: .envファイルに一貫したポート設定 (MCP_PORT、MCP_MIN_PORT、MCP_MAX_PORT) があることを確認してください
  2. トランスポートモード: stdioトランスポートを使用するClaude DesktopまたはMCP Inspectorの場合は、 .envTRANSPORT_MODE=stdioを設定します。
  3. 複数のレスポンスヘッダー:「ERR_HTTP_HEADERS_SENT」エラーが表示される場合は、ミドルウェアが複数のレスポンスを送信していないか確認してください。

包括的なトラブルシューティング ガイドについては、開発者ドキュメントの「一般的な問題のトラブルシューティング」セクションを参照してください。

統合

Windsurf IDE の設定

Dust MCP Server を Windsurf IDE と統合するには、構成ファイル~/.codeium/windsurf/mcp_config.jsonを更新します。

{ "mcpServers": { "dust-mcp": { "command": "npm", "args": [ "run", "start:server" ], "env": { "DUST_API_KEY": "${YOUR_API_KEY}", "DUST_WORKSPACE_ID": "${YOUR_WORKSPACE_ID}", "DUST_AGENT_ID": "${YOUR_AGENT_ID}" }, "host": "127.0.0.1", "port": 5001, "timeout": 30000 } } }

クロードデスクトップ統合

Dust MCP Server を Claude Desktop と統合するには、構成ファイルを更新します。

{ "mcpServers": { "dust-agent": { "command": "npm", "args": [ "run", "start:server" ], "cwd": "path/to/mcp-dust-server", "host": "127.0.0.1", "port": 5001, "timeout": 30000, "env": { "DUST_API_KEY": "${YOUR_API_KEY}", "DUST_WORKSPACE_ID": "${YOUR_WORKSPACE_ID}", "DUST_AGENT_ID": "${YOUR_AGENT_ID}" } } } }

テスト

このプロジェクトには、Webベースとコマンドラインの両方のテストツールが含まれています。詳細なテスト情報については、開発者ドキュメントをご覧ください。

クライアント コンポーネントを実行すると、Web ベースのテスト クライアントにhttp://localhost:6001からアクセスできるようになり、Dust エージェントと対話して MCP サーバーの機能をテストできるようになります。

APIの概要

サーバーは、ヘルスチェックとMCPプロトコル通信用のエンドポイントを複数提供しています。詳細なAPIドキュメントについては、開発者向けドキュメントをご覧ください。

開発者向けドキュメント

プロジェクト構造、API ドキュメント、デバッグ ツール、セキュリティに関する考慮事項などの詳細な技術情報については、開発者ドキュメントを参照してください。


ライセンス

このプロジェクトはMIT ライセンスの下でライセンスされています。

-
security - not tested
A
license - permissive license
-
quality - not tested

Dust AI エージェントとの対話を可能にし、Windsurf IDE や Claude Desktop などの開発環境との統合を可能にするモデル コンテキスト プロトコル サーバー。

  1. Table of Contents
    1. Features
      1. Architecture
        1. Dust.tt Agentic AI
          1. Installation
            1. Prerequisites
            2. Steps
          2. Starting the Server and Client
            1. Expected Output
          3. API Endpoints
            1. Debugging
              1. Troubleshooting Connection Issues
            2. Integration
              1. Windsurf IDE Configuration
              2. Claude Desktop Integration
            3. Testing
              1. API Overview
                1. Developer Documentation
                  1. License
                    ID: rm9zqiabpk