关于 5dive-mcp
5dive-mcp 将 5dive Agent 集群 CLI 的任务、Agent 和摘要功能封装为 MCP 工具,适用于通过模型上下文管理 Agent 集群的用户。它可通过 stdio 或 Streamable HTTP 连接,并将调用交给本地 CLI 执行。
主要功能
- 01创建、查看和筛选任务
- 02列出并向 Agent 发送消息
- 03读取集群摘要
- 04支持 stdio 与 HTTP 传输
- 05通过令牌控制远程访问
适用场景
- 01在模型上下文中提交集群任务
- 02查看任务状态与结果
- 03向集群中的 Agent 发送消息
- 04读取每日或每周集群摘要
MCP 相关
该项目将 5dive CLI 的六项任务、Agent 和摘要操作暴露为 MCP 工具,支持 stdio 和 Streamable HTTP。工具调用由本地 CLI 执行,并沿用其权限与审计机制。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @5dive/mcpFIVEDIVE_SUDOSet to 1 to prefix CLI calls with sudo (managed 5dive boxes need root).FIVEDIVE_BINPath to the 5dive binary (default: 5dive on PATH).FIVEDIVE_TIMEOUT_MSPer-call timeout in milliseconds (default: 30000).本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
6收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| body | string | 否 | 完整的任务描述/上下文。 |
| from | string | 否 | 提交任务的人。 |
| title | string | 是 | 简短的任务标题。 |
| parent | string | 否 | 用于嵌套的父任务 ID(数字或 DIVE-N)。 |
| assignee | string | 否 | 要分配给的 Agent 名称。 |
| priority | enum | 否 | 任务优先级(默认值:medium)。low | medium | high | urgent |
详细介绍
5dive MCP 服务
将 5dive Agent 集群 CLI 封装为 Model Context Protocol 工具。让任意 MCP 客户端(Claude Desktop、Cursor、Cline 或你自己的客户端)连接到此 stdio 服务,即可直接在模型上下文中提交任务、查看和联系 Agent,并读取集群摘要。
5dive 是一款 CLI 和控制平面,用于运行由自主编码 Agent 组成的自治公司。本服务是一个精简、透明的适配器:每个工具都会调用本地 5dive 二进制文件的机器可读 --json 接口并返回结果,因此可直接沿用 CLI 的身份验证、权限和审计日志,而且自身不会处理机密信息。
工具
| 工具 | 封装的命令 | 功能 |
|---|---|---|
task_create | 5dive task add | 在共享队列中提交任务(标题、正文、优先级、负责人、父任务)。 |
task_show | 5dive task show | 按 ID 查看单个任务的完整详情(状态、正文、结果、子任务、阻塞项)。 |
task_list | 5dive task ls | 列出任务(默认列出未完成任务;可按状态 / 负责人筛选)。 |
agent_send | 5dive agent send | 向集群中的另一个 Agent 发送消息。 |
agent_list | 5dive agent list | 列出所有 Agent:类型、频道、模型、实时状态。 |
digest_get | 5dive digest | 集群每日站会摘要(每周视图请设置 window: "7d")。 |
要求
- Node.js >= 18
- 已安装
5diveCLI,且位于PATH中(curl https://install.5dive.ai | sudo bash)。
安装与运行
npx @5dive/mcp # run directly
# or
npm i -g @5dive/mcp && 5dive-mcp
客户端配置(Claude Desktop / Cursor / Cline)
{
"mcpServers": {
"5dive": {
"command": "npx",
"args": ["-y", "@5dive/mcp"],
"env": { "FIVEDIVE_SUDO": "1" }
}
}
}
远程模式:5dive-mcp serve(ChatGPT、OpenAI dots)
在他人云端运行的客户端无法在你的设备上启动 stdio 进程。serve 会通过 MCP 的 Streamable HTTP 传输层,在环回地址上提供相同的六种工具,供你的反向代理通过 HTTPS 对外发布。
使用 托管版 5dive?无需使用此模式:连接到
https://api.5dive.com/mcp并登录。请参阅 使用指南。
# 1. Mint a token. It is printed once; only its hash is kept.
5dive-mcp token create --name=chatgpt # read-only
5dive-mcp token create --name=chatgpt --write # may also file tasks and message agents
# 2. Serve on loopback (default 127.0.0.1:8741, path /mcp).
FIVEDIVE_SUDO=1 5dive-mcp serve
# 3. Publish it over HTTPS, e.g. with Caddy (automatic certificates):
# agents.example.com {
# reverse_proxy /mcp* 127.0.0.1:8741
# }
然后将客户端指向该服务:
- 支持发送标头的客户端(Claude Code、MCP inspector、大多数 SDK):
使用
https://agents.example.com/mcp,并设置Authorization: Bearer <token>。 - ChatGPT 开发者模式仅提供 OAuth 或“无身份验证”选项,因此请将令牌放入 URL,并选择“无身份验证”:
https://agents.example.com/mcp/<token>。
5dive-mcp token list 可显示令牌;5dive-mcp token revoke --name=chatgpt
会撤销指定令牌,运行中的服务会从下一个请求开始拒绝该令牌。
serve 标志 | 默认值 | 用途 |
|---|---|---|
--listen | 127.0.0.1:8741 | 绑定地址。除非传入 --allow-public-http,否则不允许使用非环回地址。 |
--path | /mcp | 挂载点。 |
--rate | 60 | 每个令牌每分钟可调用工具的次数。 |
安全性:开放此端点意味着什么
- 令牌可以做什么。 只读令牌可以列出 Agent 和任务、读取任务以及读取摘要。
--write令牌还可以创建任务 (task_create)并向 Agent 发送消息(agent_send)。没有令牌可以回答门禁问题、 更改设置、花费资金,或运行这六个 CLI 调用以外的任何操作;每个调用都使用固定的 argv 构建,不经过 shell。 远程客户端声称的发送者身份会被丢弃:其消息会标记为mcp-<token name>,任务正文中会注明提交任务的连接。 - 以谁的身份运行。 这些工具以运行
serve的用户权限运行;当FIVEDIVE_SUDO=1时,也会通过sudo获得 root 权限。服务只会 运行这六个子命令,但一旦服务进程遭到入侵,攻击者就会拥有该用户的权限,因此应使用专用用户运行,并且其 sudo 授权范围仅限5dive二进制文件。 - 速率限制。 默认每个令牌每分钟 60 次调用(
--rate),按 JSON-RPC 消息计数:批量请求会在任何操作运行前被拒绝。超过 1 MiB 的正文会被拒绝。 - 审计。 每次工具调用,无论被允许还是被拒绝,都会向
audit.jsonl追加一行,记录时间、令牌名称、工具、结果、客户端 IP(代理在 loopback 上时取自X-Forwarded-For),以及涉及的 ID 和名称。不会写入消息文本和任务正文。 - 静态令牌。
tokens.json(模式为 0600)仅保存每个令牌的 SHA-256 值,不保存令牌本身。两个文件都位于$FIVEDIVE_MCP_HOME,默认路径为~/.config/5dive-mcp。 - URL 中的令牌就像 URL 中的密码。 反向代理的访问日志会记录请求路径。请关闭
/mcp/*的路径日志记录,或在客户端支持时使用标头身份验证。任何持有该 URL 的人都持有该令牌。 - 纯 HTTP 仅限 loopback。 默认情况下,
serve会拒绝绑定到公网地址,因为令牌会以未加密的方式通过网络传输。
不想开放任何入站端口?OpenAI 的
Secure MCP Tunnel
会在服务旁运行一个小型客户端,并向外连接到 OpenAI。其
tunnel-client 可以直接启动 stdio 服务
(--mcp-command "npx -y @5dive/mcp"),但需要具备隧道权限的 OpenAI Platform
组织。
配置(环境变量)
| 变量 | 默认值 | 用途 |
|---|---|---|
FIVEDIVE_BIN | 5dive | 5dive 二进制文件的路径。 |
FIVEDIVE_SUDO | (未设置) | 设置为 1,以使用 sudo 作为调用前缀。托管的 5dive 机器在大多数子命令中需要 root 权限;如果你已经以 root 身份运行,则不必设置。 |
FIVEDIVE_TIMEOUT_MS | 30000 | 每次调用的超时时间,单位为毫秒。 |
FIVEDIVE_MCP_HOME | ~/.config/5dive-mcp | serve 保存 tokens.json 和 audit.jsonl 的位置。 |
安全性
参数会以 argv 数组的形式传递给 CLI,不经过 shell,因此工具输入绝不会被解释为 shell 语法。服务不会接触密钥:CLI 会从机器读取自己的凭据。
范围
此服务仅封装 CLI 中经过筛选的一部分功能(任务、Agent、摘要),而非 CLI 的全部功能。它是一个分发和使用便利层,不是新的 API。其他所有功能请直接使用 5dive CLI(5dive --help)。完整文档:https://5dive.ai/docs/5dive-cli
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。