mcp-daemonize
mcp-daemonize 是一个基于 Model Context Protocol (MCP) 的服务器,旨在为 AI 代理(如 Claude Code 和 Cline)提供无缝管理长时间运行的后台进程(如开发服务器)的能力。它通过允许 AI 代理启动、停止和监控后台进程,并实时访问其日志,从而实现了高级自动化和调试功能。
动机
虽然 AI 代理可以执行命令,但它们并不适合管理长时间运行的开发服务器(例如
vite dev
)。这是因为代理通常会等待命令执行完毕,而这对于开发过程中需要持续运行的服务器来说并不合适。作为一种变通方案,用户通常会在单独的 shell 中启动开发服务器,但这会导致 AI 代理无法直接访问服务器的日志,从而无法实现自主调试。mcp-daemonize 解决了这些问题,提供了以下功能:
- 启动后台进程而无需等待其终止的接口。
- 停止正在运行的后台进程的工具。
- 查看正在运行的后台进程的实时日志的工具。
通过这些功能,mcp-daemonize 使 AI 代理能够完全管理开发服务器、监控其输出并执行自动化调试,极大地扩展了自主编码的可能性。
使用场景
- 通过 AI 代理启动和停止开发服务器(例如 Vite、Next.js 等)。
- 查看和分析正在运行的后台进程的实时日志以进行调试。
- 自动化需要持久后台进程的开发工作流。
- 使 AI 代理能够自主管理、监控和调试长时间运行的进程。
先决条件
- 安装 Go 1.24.2 或更高版本。
- (可选)Docker,如果您希望在容器中运行 mcp-daemonize。
安装
从 GitHub Releases 下载
- 从最新版本的发布页面下载适用于您平台的压缩包。
- 解压压缩包并将二进制文件移动到您的 PATH 目录中。
从源代码构建
您可以使用
go install
(Go 1.24.2 或更高版本)安装最新版本:与 MCP Host(如 Claude Code、Cline)一起使用
在您的 MCP 主机配置(例如
mcp.json
)中添加以下配置:将
/path/to/mcp-daemonize
替换为实际构建的二进制文件路径。使用
mcp-daemonize 为 AI 代理提供了以下工具:
工具
- daemonize_start
- 启动一个长时间运行的进程(例如开发服务器)作为后台进程。
- 参数:
name
(字符串,必需):后台进程的名称。command
(字符串数组,可选):要运行的命令(例如["npm", "run", "dev"]
)。workdir
(字符串,必需):后台进程的工作目录(绝对路径)。
- daemonize_stop
- 按名称停止正在运行的后台进程。
- 参数:
name
(字符串,必需):要停止的后台进程的名称。
- daemonize_list
- 列出所有当前正在运行的后台进程。
- 参数: 无
- daemonize_logs
- 从正在运行的后台进程中检索最新的日志。
- 参数:
name
(字符串,必需):后台进程的名称。tail
(数字,必需):从日志末尾读取的行数。
示例工作流
- 使用
daemonize_start
启动一个开发服务器作为后台进程。
- 使用
daemonize_logs
实时监控服务器的输出。
- 完成后使用
daemonize_stop
停止服务器。
许可证
本项目根据 MIT 开源许可证的条款进行许可。详情请参阅 LICENSE。
- Author:waytomcp
- URL:https://www.waytomcp.com/article/mackee/mcp-daemonize
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!