Token导航 LogoToken导航TokenDH.com
MCP Claude Duo logo
运维云端未说明官方级别未说明来源级核验

MCP Claude Duo

MCP Server

MCP Claude Duo是一个支持多个Claude Code实例通过对话进行实时通信的协议服务器。

工具数

10

提示词数

0

GitHub Stars

6

资源数

0
实时通信JavaScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AlexisTrouve

提供方

AlexisTrouve

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP克劳德·杜奥

使多个Claude Code实例通过对话相互通信。

![License: MIT](https://opensource.org/licenses/MIT)

概述

MCP克劳德·杜奥是 模型上下文协议(MCP) 服务器,支持多个Claude Code实例之间的实时通信。每个Claude都可以在离线时发送消息、创建群组对话和接收通知。

主要特点

  • 直接对话 -在任意两个Claude实例之间自动创建1对1线程
  • 小组对话 -创建有多个参与者的命名群聊
  • 实时消息 -基于长轮询的即时消息传递
  • 离线通知 -消息被排队,通知被写入 CLAUDE.md
  • 自动注册 -Claude实例在启动时自动连接

建筑

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│  Claude A       │     │     Broker      │     │  Claude B       │
│  (project-a)    │◄───►│  HTTP + SQLite  │◄───►│  (project-b)    │
│  + mcp-partner  │     │  Conversations  │     │  + mcp-partner  │
└─────────────────┘     └─────────────────┘     └─────────────────┘
  • 经纪人:管理对话和消息路由的中央HTTP服务器
  • MCP合作伙伴:在每个Claude Code实例中运行的MCP服务器

安装

git clone https://github.com/YOUR_USER/mcp-claude-duo.git
cd mcp-claude-duo
npm install

快速开始

1.启动Broker

npm run broker

经纪人继续营业 http://localhost:3210.

2.在Claude代码中配置MCP

全球(所有项目):

claude mcp add duo-partner -s user \
  -e BROKER_URL=http://localhost:3210 \
  -- node "/path/to/mcp-claude-duo/mcp-partner/index.js"

每个项目(具有自定义名称):

claude mcp add duo-partner -s project \
  -e BROKER_URL=http://localhost:3210 \
  -e PARTNER_NAME="My Project" \
  -- node "/path/to/mcp-claude-duo/mcp-partner/index.js"

3.开始说话!

在任何Claude Code实例中:

talk("Hello!", to: "other_project")

在另一种情况下:

listen()
→ Message received from other_project: "Hello!"

MCP工具

沟通

工具说明
register(name?)在网络上注册(可选,启动时自动)
talk(message, to?, conversation?)发送消息
listen(conversation?, timeout?)监听消息(10-60分钟超时,默认30分钟)
list_partners()列出已连接的合作伙伴

交谈

工具说明
list_conversations()列出您的对话
create_conversation(name, participants)创建群组对话
leave_conversation(conversation)离开群组
history(conversation, limit?)获取对话历史记录

设置

工具说明
set_status(message?)设置您的状态消息
notifications(enabled)启用/禁用CLAUDE.md通知

例子

直接对话

# Claude A
talk("Hey, can you help with the auth module?", to: "project_b")

# Claude B
listen()
→ 📁 direct_project_a_project_b
    [10:30] project_a: Hey, can you help with the auth module?

talk("Sure, what do you need?", to: "project_a")

小组对话

# Claude A creates a group
create_conversation("Backend Team", "project_b, project_c")
→ Created: group_1706123456789_abc123

# Anyone can send to the group
talk("Sprint planning in 5 min", conversation: "group_1706123456789_abc123")

过滤听力

# Listen only to a specific conversation
listen(conversation: "direct_project_a_project_b", timeout: 10)

# Listen to all conversations
listen(timeout: 5)

项目结构

mcp-claude-duo/
├── broker/
│   ├── index.js          # HTTP server & routes
│   └── db.js             # SQLite database layer
├── mcp-partner/
│   ├── index.js          # MCP server entry point
│   ├── shared.js         # Shared utilities
│   └── tools/            # One file per tool
│       ├── register.js
│       ├── talk.js
│       ├── listen.js
│       └── ...
├── docs/
│   ├── schema.sql        # Database schema
│   └── db-schema.md      # Schema documentation
└── data/                 # SQLite database (gitignored)

api参考

代理端点

端点方法描述
/registerPOST注册合作伙伴
/unregisterPOST注销/脱机
/talkPOST发送消息
/listen/:partnerIdGET消息的长轮询
/conversationsPOST创建群组对话
/conversations/:partnerIdGET列出对话
/conversations/:id/leavePOST留下对话
/conversations/:id/messagesGET获取对话历史记录
/partnersGET列出所有合作伙伴
/healthGET健康检查

数据库

SQLite数据库,包含以下表格:

  • 伙伴 -已注册的Claude实例
  • 对话 -直接和小组对话
  • 对话_参与者 -会员追踪
  • 消息 -所有消息

docs/db-schema.md 获取完整的模式文档。

配置

环境变量默认值描述
BROKER_URLhttp://localhost:3210代理服务器URL
BROKER_PORT3210代理监听端口
PARTNER_NAMEClaude合作伙伴的显示名称

用钩子优雅地关机

要在MCP停止时正确地将Claude实例标记为脱机,请配置一个Claude代码挂钩。

1.创建设置文件(如果不存在):

创建或编辑 ~/.claude/settings.json:

{
  "hooks": {
    "Stop": [
      {
        "matcher": "duo-partner",
        "hooks": [
          {
            "type": "command",
            "command": "curl -X POST http://localhost:3210/unregister -H \"Content-Type: application/json\" -d \"{\\\"partnerId\\\": \\\"$PARTNER_ID\\\"}\""
          }
        ]
      }
    ]
  }
}

2.或使用Claude CLI:

claude config set hooks.Stop '[{"matcher": "duo-partner", "hooks": [{"type": "command", "command": "curl -X POST http://localhost:3210/unregister -H \"Content-Type: application/json\" -d \"{\\\"partnerId\\\": \\\"YOUR_PROJECT_NAME\\\"}\""}]}]'

替换 YOUR_PROJECT_NAME 使用您的实际合作伙伴ID(通常来自您的项目文件夹名称)。

注: 如果没有这个钩子,合作伙伴将一直标记为“在线”,直到代理重新启动或重新连接。

贡献

欢迎投稿!看 贡献.md 作为指导方针。

许可证

麻省理工学院-参见 许可证 了解详情。

目录标签

目录标签

实时通信JavaScriptClaude本地部署多实例对话消息队列离线通知自动注册

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP