关于 claude-wrap-mcp
claude-wrap-mcp 是用于启动和控制 Claude Code 会话的 MCP 服务,可让 Agent 运行多个 Claude Code 子 Agent。它支持检查会话、处理权限请求,并提供非交互式 `claude -p` 会话接口。
主要功能
- 01启动并控制 Claude Code 会话
- 02发送提示词或原始输入
- 03查看会话状态和记录
- 04分页查看工具调用及结果
- 05批准或拒绝权限请求
- 06驱动非交互式 `claude -p` 会话
适用场景
- 01将任务分派给 Claude Code 子 Agent
- 02监控长时间运行的编码会话
- 03审查会话的工具调用和输出
- 04处理会话发出的权限请求
MCP 相关
该服务通过 MCP 工具启动、驱动、检查和停止 Claude Code 会话,也提供管理非交互式 `claude -p` 会话的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
claude-wrap-mcp
一个 MCP 服务,可让 Agent 启动并操控真实的 Claude Code 会话,从而使 Claude Code 能够运行一组 Claude Code 子 Agent。基于 claude-wrap 构建。
需要 Node ≥ 18,并且 claude CLI 位于你的 PATH 中。无头会话可在任何环境中运行;连接到可见终端窗口的功能则优先支持 Windows。
安装
npm install -g claude-wrap-mcp
claude mcp add claude-wrap -- claude-wrap-mcp
或者在 .mcp.json / claude_desktop_config.json 中配置:
{
"mcpServers": {
"claude-wrap": { "command": "npx", "args": ["-y", "claude-wrap-mcp"] }
}
}
工具
| 工具 | 功能 |
|---|---|
claude_spawn | 在绝对路径的 cwd 中启动会话。返回 sessionId。 |
claude_ask | 发送提示词,等待会话空闲,并返回对话记录末尾内容及解析后的状态。 |
claude_send | 发送原始输入(text / line / key),不等待返回结果——适用于长时间运行的任务。 |
claude_status | 查看运行状态、模式、令牌数、待处理的权限提示、待办事项,以及最近 5 个工具的名称。 |
claude_tool_calls | 分页查看会话的工具调用。默认只显示 ID 和名称。 |
claude_tool_result | 根据 ID 查看一次工具调用及其参数和结果。 |
claude_snapshot | 查看渲染后的对话记录行。 |
claude_list | 查看所有会话(包括在此启动或发现的会话),以及其后端、tmux 连接命令和谱系。 |
claude_resolve_permission | approve / deny 待处理的权限提示。 |
claude_stop | 关闭此服务启动或接管的会话(会终止 tmux 会话)。 |
还有第二组工具 claudep_*,用于驱动非交互式 claude -p
会话,并返回结构化 JSON、工具调用、用量和费用。
有两点值得注意:
- 权限提示会显示出来,不会被绕过。 当
claude_ask或claude_status报告permissionPrompt时,使用claude_resolve_permission进行响应。 - 工具调用采用分页方式,而非一次性全部返回。 状态轮询只携带名称,因此开销很小;
claude_tool_calls会列出其余内容,而claude_tool_result会根据 ID 获取单次调用的输出。
tmux 会话(Linux/macOS)
在服务的环境变量中设置 CLAUDE_WRAP_BACKEND=tmux(例如,在整台机器范围内设置)。
之后,claude_* 会话将在 tmux 会话中运行,无需更改 MCP
配置:
- 会话不会随此服务一起退出:服务关闭时会让会话继续运行,任何人都可以执行
tmux attach(命令见claude_spawn/claude_list)。 若要让会话随服务一起停止,请设置CLAUDE_WRAP_TMUX_ON_EXIT=kill; - 任何服务都可以接管这些会话:将 tmux 会话名称(如列表所示)作为
sessionId传入,即可在进程内连接会话,并获取完整的解析状态; - 谱系:如果在设置了
TASK_ID/AGENT_ID的 Agent 中启动会话,则会记录该任务及其父级。claude_list会显示这些信息,而注册表条目(CLAUDE_WRAP_REGISTRY;设置为目录时每个会话对应一个文件)会保留这些信息,供监管程序使用。
有关配置项和条目格式,请参阅 claude-wrap 的 README(“tmux backend”)。
开发
pnpm install
pnpm --filter claude-wrap-mcp build
pnpm --filter claude-wrap-mcp test
许可证
MIT © Alex Kaffetzakis
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。