MCP Dust Server
镜子 (jìng zi)
MCP-Mirror
README
MCP Dust Server
本仓库包含一个模型上下文协议 (MCP) 服务器的实现,该服务器旨在与 Dust 代理进行交互。 该服务器分为两个主要组件:MCP 服务器(处理 Dust API 交互)和 MCP 测试客户端(提供用于测试的 Web 界面)。
目录
特性
- 分离的 MCP 服务器和测试客户端组件
- 通过 Dust API 与 Dust AI 代理交互
- 使用服务器发送事件 (SSE) 和 HTTP 流传输的实时流式响应
- 完整的 JSON-RPC 2.0 支持,包括 'initialize'、'message'、'terminate' 和 'run' 方法
- 通过 'run' 方法直接执行工具,简化客户端集成
- 强大的会话管理和上下文保存
- 使用日志中的 PII 掩码保护 API 密钥处理
- 用于维护持久连接的心跳机制
- 掉线自动重连
- 全面的错误处理和报告
- 支持最新的 MCP 规范 (2025-03-26)
- 用于监控和健康检查的状态端点
架构
MCP Dust Server 使用以下组件构建:
图 1: MCP 服务器架构,显示服务器和客户端组件
-
MCP 服务器 (server.ts):
- 处理与 Dust API 的 MCP 协议交互
- 管理会话状态和上下文
- 实现完整的 MCP 生命周期(initialize、message、terminate)
- 支持 SSE 和 HTTP 流传输
- 提供用于监控的状态端点
-
MCP 测试客户端 (client.ts):
- 提供用于测试的 Web 界面
- 允许与 MCP 服务器交互
- 支持实时流式传输和调试
- 包括会话管理和连接跟踪
Dust.tt Agentic AI
Dust.tt 是一个旨在帮助组织构建和部署根据其特定需求定制的自定义 AI 代理的平台。 它集成了先进的 AI 模型,例如 GPT-4、Claude、Gemini 和 Mistral,以及企业级安全功能,以简化工作流程、自动化任务并提高各种业务职能的生产力。
图 2: Dust.tt 平台界面的屏幕截图,显示代理功能
自定义 AI 代理: 个性化代理:创建具有自定义指令和工具的代理,根据团队或个人需求量身定制。
公司上下文: 将代理与内部工具(如 Notion、Slack、GitHub)或外部 API 集成,以无缝访问公司数据。
多代理工作流程: 在单个工作流程中组合和链接多个代理,每个代理都具有独特的功能。
与数据源集成: 数据连接:将代理连接到来自 SharePoint、Zendesk、Jira、Salesforce、Snowflake 等的数据。
动态查询: 使用代理通过自然语言或 SQL 查询分析电子表格、数据库和仓库。
实时更新: 持续同步公司知识以获得最新的响应。
开源: 在 GitHub 上以 MIT 许可证提供。 拥有庞大的用户和开发者社区。
托管: SaaS 或您自己的服务器上的自有托管选项
安装
先决条件
- Node.js (推荐:通过 nvm 安装的最新 LTS 版本)
- npm (随 Node.js 一起提供)
- TypeScript
步骤
-
克隆仓库:
git clone https://github.com/ma3u/mcp-dust-server.git cd mcp-dust-server
-
安装依赖:
npm install
-
配置环境变量: 在根目录中创建一个基于
.env.example
的.env
文件:# 启动模式 (server, client, or both) START_MODE=both # MCP 服务器配置 MCP_NAME=Dust MCP Server JS MCP_HOST=127.0.0.1 MCP_PORT=5001 MCP_TIMEOUT=30 # seconds # MCP 测试客户端配置 CLIENT_HOST=127.0.0.1 CLIENT_PORT=6001 # Dust API 配置 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 # 用户上下文信息 (用于 Dust API 请求) DUST_USERNAME=your_username DUST_EMAIL=your_email@example.com DUST_FULLNAME=Your Full Name DUST_TIMEZONE=Europe/Berlin
启动服务器和客户端
您可以单独或一起运行 MCP 服务器和测试客户端。 该项目为不同的场景提供了几个 npm 脚本:
开发模式
-
同时启动服务器和客户端:
npm run dev
-
仅启动 MCP 服务器:
npm run dev:server
-
仅启动测试客户端:
npm run dev:client
生产模式
-
同时启动服务器和客户端:
npm run start
-
仅启动 MCP 服务器:
npm run start:server
-
仅启动测试客户端:
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 Inspector,请参阅 开发者文档。
集成
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
}
}
}
Claude Desktop 集成
要将 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 和命令行的测试工具。 有关详细的测试信息,请参阅 开发者文档。
当您运行客户端组件时,可以通过 http://localhost:6001
访问基于 Web 的测试客户端,允许您与 Dust 代理交互并测试 MCP 服务器功能。
API 概述
服务器提供多个端点用于健康检查和 MCP 协议通信。 有关详细的 API 文档,请参阅 开发者文档。
开发者文档
有关详细的技术信息,包括项目结构、API 文档、调试工具和安全注意事项,请参阅 开发者文档。
许可证
本项目根据 MIT License 获得许可。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。