Dorothy MCP 服务器集成
使用说明(Markdown 格式)
-
项目简介
- Dorothy 包含若干基于 MCP 的服务器实现(如 mcp-orchestrator、mcp-kanban、mcp-vault、mcp-telegram、mcp-socialdata、mcp-x、mcp-world 等),通过标准的 MCP 协议提供资源访问、工具执行、以及提示(Prompts)的定义与渲染等能力,支持多传输通道(如 stdio、WebSocket、SSE 等)并实现会话管理与能力声明。
- 服务器之间通过 JSON-RPC 与客户端通信,核心职责包括:托管并管理 Resources(资源/数据)、注册并执行 Tools(工具)、定义与渲染 Prompts(提示模板)。
-
主要功能点
- MCP 服务器集合:实现多个 MCP 服务器(Vault、Kanban、TeleGram、SocialData、X/Twitter、World、Orchestrator 等)及其 40+ 工具,供 Claude/LLM 客户端按需挂载和调用。
- 资源与数据管理:Vault 等服务提供文档、文件、文件夹的创建、读取、更新、删除和全文检索,跨线程/跨代理共享。
- 工具注册与执行:为 LLM 提供对外部系统的接口(如发送消息、读取 tweets、创建 Jira 指令、操控 Kanban 任务等),工具具备参数校验、结果渲染和错误处理。
- 提示模板与渲染:Prompts/输出模板可自定义,支持变量替换和输出定制。
- 会话与调度能力:内置自动化、调度任务、定时执行等能力,与 Claude Code/外部事件流协同工作。
- 多传输协议支持:标准输出(stdio)为 MCP 服务器默认通讯方式,Electron/Next.js 前端也展示了 IPC 与 MCP 的耦合示例,具备可扩展传输协议的设计。
-
安装步骤(简要概述)
- 环境前提
- Node.js 18+,NPM 或 Yarn
- 相关的命令行工具(如 claude-code、gh、git 等)视具体 MCP 服务而定
- 构建与运行
- 克隆仓库并进入项目根目录
- 安装依赖(多服务子包通常分别安装或通过工作区安装)
- 将 TypeScript 源码编译成可执行 JS(多为 dist/index.js 形式,或在开发时通过 ts-node 运行)
- 以 Node 启动每一个 MCP 服务,例如以 stdio 传输启动某个服务实例
- 运行示例(命令行级别的演示,不代表最终打包脚本)
- 先将某个 MCP 服务的源码编译输出到 dist/
- 执行 node dist/mcp-kanban/index.js(或等效入口),以 stdio 作为传输
- 客户端配置
- MCP 客户端需要知道要连接的 MCP 服务器的启动命令和参数,用于以 JSON 配置的方式启动并连接
- 配置示例(以单个服务为例,客户端需要提供 serverName、command 与 args)
- serverName: claude-mgr-kanban
- command: node
- args: ["/path/to/dorothy/mcp-kanban/dist/index.js"]
- 说明:若要连接多个 MCP 服务器,请为每个服务创建独立的配置条目,客户端按需启动并逐一绑定 JSON-RPC 通道。
- 运行与调试
- 使用日志与标准输出查看服务器启动信息
- MCP 客户端通过 JSON-RPC 请求与服务器交互,进行资源读取、工具调用、以及 Prompts 获取与渲染
- 环境前提