关于 Background Process MCP
Background Process MCP 为 LLM 和 Agent 提供长时间运行的命令行进程管理能力,并附带终端界面供人查看进程。其独立核心服务也可供 MCP 和 TUI 客户端连接。
主要功能
- 01后台启动命令行进程
- 02停止和清理进程
- 03查看进程输出
- 04列出进程及状态
- 05终端界面监控进程
适用场景
- 01让 Agent 启动长时间运行的任务
- 02检查后台命令的输出
- 03在终端查看和管理进程
MCP 相关
MCP 服务将核心进程服务的能力作为工具提供给 Agent,可连接现有服务或启动新服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
后台进程 MCP
一个提供后台进程管理功能的模型上下文协议(MCP)服务。此服务支持大模型启动、停止和监控长时间运行的命令行进程。
动机
Claude Code 等一些 AI Agent 可以原生管理后台进程,但许多其他 Agent 做不到。此项目为 Google 的 Gemini CLI 等其他 Agent 提供了这项标准工具能力。它作为独立服务运行,让更多 Agent 能够管理长时间运行的任务。我还添加了一个 TUI,因为我希望能够亲自监控进程。
截图
开始使用
要开始使用,请在你偏好的客户端中安装 Background Process MCP 服务。
标准配置
此配置适用于大多数 MCP 客户端:
{
"mcpServers": {
"backgroundProcess": {
"command": "npx",
"args": [
"@waylaidwanderer/background-process-mcp@latest"
]
}
}
}
要连接到独立服务,请将 --port 参数添加到 args 数组中(例如,...mcp@latest", "--port", "31337"])。
Claude Code
使用 Claude Code CLI 添加 Background Process MCP 服务:
claude mcp add backgroundProcess npx @waylaidwanderer/background-process-mcp@latest
Claude Desktop
参照 MCP 安装指南,使用上方的标准配置。
Codex
创建或编辑配置文件 ~/.codex/config.toml 并添加:
[mcp_servers.backgroundProcess]
command = "npx"
args = ["@waylaidwanderer/background-process-mcp@latest"]
更多信息请参阅 Codex MCP 文档。
Cursor
点击按钮进行安装:
或手动安装:
前往 Cursor Settings -> MCP -> Add new MCP Server。将名称设为 backgroundProcess,使用 command 类型,命令为 npx @waylaidwanderer/background-process-mcp@latest。
Gemini CLI
参照 MCP 安装指南,使用上方的标准配置。
Goose
点击按钮进行安装:
或手动安装:
前往 Advanced settings -> Extensions -> Add custom extension。将名称设为 backgroundProcess,类型设为 STDIO,并将 command 设为 npx @waylaidwanderer/background-process-mcp@latest。点击“Add Extension”。
opencode
参阅 MCP 服务文档。例如,在 ~/.config/opencode/opencode.json 中:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"backgroundProcess": {
"type": "local",
"command": [
"npx",
"@waylaidwanderer/background-process-mcp@latest"
],
"enabled": true
}
}
}
Qodo Gen
在 VSCode 或 IntelliJ 中打开 Qodo Gen 聊天面板 → Connect more tools → + Add new MCP → 粘贴上方的标准配置。
点击 Save。
VS Code(适用于 GitHub Copilot)
#### 点击按钮进行安装:或手动安装:
按照 MCP 安装指南操作,使用上方的标准配置。你也可以使用 VS Code CLI 安装服务:
# For VS Code
code --add-mcp '{"name":"backgroundProcess","command":"npx","args":["@waylaidwanderer/background-process-mcp@latest"]}'
Windsurf
按照 Windsurf MCP 文档操作。使用上方的标准配置。
工具
MCP 服务提供以下工具。
进程管理
-
start_process
- 描述:在后台启动新进程。
- 参数:
command(字符串):要执行的 shell 命令。
- 返回:包含新进程 ID 的确认消息。
-
stop_process
- 描述:停止正在运行的进程。
- 参数:
processId(字符串):要停止的进程的 UUID。
- 返回:确认消息。
-
clear_process
- 描述:从列表中清除已停止的进程。
- 参数:
processId(字符串):要清除的进程的 UUID。
- 返回:确认消息。
-
get_process_output
- 描述:获取进程的近期输出。可指定
head获取前 N 行,或指定tail获取最后 N 行。 - 参数:
processId(字符串):要获取输出的进程的 UUID。head(数字,可选):从输出开头获取的行数。tail(数字,可选):从输出末尾获取的行数。
- 返回:请求的进程输出,作为单个字符串。
- 描述:获取进程的近期输出。可指定
-
list_processes
- 描述:获取 Core Service 管理的所有进程列表。
- 参数:无
- 返回:表示所有进程状态数组的 JSON 字符串。
-
get_server_status
- 描述:获取 Core Service 的当前状态。
- 参数:无
- 返回:包含服务状态信息(版本、端口、PID、运行时间、进程数)的 JSON 字符串。
架构
项目包含三个组件:
-
Core Service(
src/server.ts):独立的 WebSocket 服务,使用node-pty管理子进程的生命周期。它是所有进程状态的唯一事实来源。该服务专为独立运行而设计,因此可以为其构建官方 TUI 和 MCP 之外的其他客户端。 -
MCP 客户端(
src/mcp.ts):将 Core Service 的功能作为一组工具提供给大模型 Agent。它可以连接到现有服务,也可以启动新服务。 -
TUI 客户端(
src/tui.ts):基于ink的终端 UI,连接到 Core Service 以显示进程信息并接收用户命令。
手动使用
如果你想在 MCP 客户端之外手动运行服务和 TUI,可以使用以下命令。
要使用更短的命令,可以全局安装此软件包:
pnpm add -g @waylaidwanderer/background-process-mcp
这样即可使用 bgpm 命令。
1. 运行 Core Service
手动启动后台服务:
# With npx
npx @waylaidwanderer/background-process-mcp server
# Or, if installed globally
bgpm server
服务将在可用端口上监听(默认端口为 31337),并输出包含连接详情的 JSON 握手信息。
2. 使用 TUI
通过服务器端口将 TUI 连接到正在运行的服务器:
# With npx
npx @waylaidwanderer/background-process-mcp ui --port <port_number>
# Or, if installed globally
bgpm ui --port <port_number>
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。