过程组成mcp
MCP(模型上下文协议)服务器,使Claude能够通过以下方式管理和编排流程 流程组成.
概述
该服务器将process-compose的REST API公开为MCP工具,允许Claude:
- 列出、启动、停止和重新启动进程
- 查看流程日志和状态
- 将流程扩展到多个副本
- 管理项目配置(重新加载、停止)
- 检查流程依赖关系
可用工具
| 工具 | 说明 |
|---|---|
list_processes | 列出所有进程及其当前状态、运行状况和资源使用情况 |
get_process | 获取特定流程的详细状态和资源信息 |
get_process_logs | 从进程中检索最近的日志输出(支持分页) |
start_process | 按名称启动已停止的进程 |
stop_process | 按名称停止正在运行的进程 |
restart_process | 重新启动进程(停止然后启动) |
scale_process | 将进程扩展为使用指定数量的副本运行 |
get_project_info | 获取有关当前流程组成项目的信息 |
reload_project | 从磁盘重新加载进程组合配置(热重新加载) |
stop_project | 停止所有进程并关闭项目 |
get_dependency_graph | 获取流程依赖关系图 |
health_check | 检查进程组合是否处于活动状态并响应 |
先决条件
- 流程组成 必须在启用API的情况下安装和运行(默认端口8080)
- 安装:https://f1bonacc1.github.io/process-compose/installation/ - 运行方式: process-compose up (默认情况下启用API)
- 防锈工具链 (从源头建设)
- 安装:https://rustup.rs/
从源头构建
# Clone or navigate to the project
cd process-compose-mcp
# Build release binary
cargo build --release
# Binary location
# Windows: target/release/process-compose-mcp.exe
# Linux/macOS: target/release/process-compose-mcp安装
选项1:克劳德桌面(JSON配置)
- 找到您的Claude Desktop配置文件:
- 视窗: %APPDATA%\Claude\claude_desktop_config.json - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json
- 添加MCP服务器配置:
{
"mcpServers": {
"process-compose": {
"command": "/absolute/path/to/process-compose-mcp",
"env": {
"PROCESS_COMPOSE_URL": "http://localhost:8080"
}
}
}
}Windows示例:
{
"mcpServers": {
"process-compose": {
"command": "C:\\path\\to\\process-compose-mcp.exe",
"env": {
"PROCESS_COMPOSE_URL": "http://localhost:8080"
}
}
}
}- 重新启动克劳德桌面
选项2:Claude代码命令行界面
使用Claude Code CLI添加MCP服务器:
# Add the server (use absolute path to the binary)
claude mcp add process-compose /absolute/path/to/process-compose-mcp
# Or with custom environment variables
claude mcp add process-compose /absolute/path/to/process-compose-mcp \
-e PROCESS_COMPOSE_URL=http://localhost:8080
# Verify it was added
claude mcp listWindows示例:
claude mcp add process-compose C:\path\to\process-compose-mcp.exe -e PROCESS_COMPOSE_URL=http://localhost:8080要删除服务器,请执行以下操作:
claude mcp remove process-compose选项3:项目特定配置
创建一个 .mcp.json 项目根目录中的文件:
{
"mcpServers": {
"process-compose": {
"command": "/absolute/path/to/process-compose-mcp",
"env": {
"PROCESS_COMPOSE_URL": "http://localhost:8080"
}
}
}
}只有从该项目目录运行Claude Code时,此配置才会处于活动状态。
配置
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
PROCESS_COMPOSE_URL | http://localhost:8080 | 进程组件API的URL |
RUST_LOG | (无) | 记录级别(例如。, info, debug, trace) |
进程组成安装程序
确保进程组件在启用API的情况下运行。默认情况下,API运行在端口8080上。
示例 process-compose.yaml:
version: "0.5"
processes:
web:
command: npm run dev
working_dir: ./frontend
api:
command: cargo run
working_dir: ./backend
depends_on:
db:
condition: process_healthy
db:
command: docker compose up postgres
readiness_probe:
http_get:
path: /health
port: 5432启动流程组成:
process-compose up使用示例
安装后,您可以让Claude管理您的进程:
列出所有流程:
“当前正在运行哪些进程?”
查看日志:
“显示api进程的最后50行日志”
重新启动服务:
“重新启动web进程”
扩展服务:
“将工作进程扩展到3个副本”
检查健康状况:
“进程组合是否正在运行?所有服务的状态如何?”
重新加载配置:
“重新加载进程组合配置”
MCP检验员测试
您可以使用MCP检查器在没有Claude的情况下测试服务器:
npx @modelcontextprotocol/inspector /path/to/process-compose-mcp这将打开一个web UI,您可以在其中:
- 查看所有可用工具
- 具有自定义参数的测试工具调用
- 查看请求/响应有效载荷
故障排除
服务器未连接
- 验证进程组合是否正在运行:
curl http://localhost:8080/live
# Should return: {"status":"alive"}- 通过设置检查服务器日志
RUST_LOG:
{
"mcpServers": {
"process-compose": {
"command": "/path/to/process-compose-mcp",
"env": {
"PROCESS_COMPOSE_URL": "http://localhost:8080",
"RUST_LOG": "debug"
}
}
}
}工具未出现在Claude中
- 配置更改后重新启动克劳德桌面/代码
- 验证二进制路径是否绝对正确
- 检查二进制文件是否具有执行权限(Linux/macOS):
chmod +x /path/to/process-compose-mcp连接被拒绝错误
确保 PROCESS_COMPOSE_URL 匹配进程组合实际运行的位置。如果使用Docker或WSL,您可能需要使用不同的地址(例如。, host.docker.internal).
发展
# Run in development mode
cargo run
# Run with logging
RUST_LOG=debug cargo run
# Run tests
cargo test
# Format code
cargo fmt
# Lint
cargo clippy许可证
麻省理工学院
