Token导航 LogoToken导航

MCP Server · 运维云端

Supervisor MCP Server

一个使用TypeScript开发的MCP服务器,用于通过supervisord的REST API进行进程管理和监控。

未说明官方级别未说明来源级核验工具 0
进程管理配置管理TypeScript日志管理

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
masx200
提供方
masx200

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

2

仓库热度

收录来源

1 个

MCP World

选型结论

Supervisor MCP Server 属于运维云端类 MCP Server,公开资料标注 0 个工具,通过传输方式未标注接入,客户端适配情况以官方文档为准,没有现成的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

未说明

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

Supervisor MCP Server

一个使用 TypeScript 开发的 Model Context Protocol (MCP) 服务器,用于通过 supervisord 的 REST API 进行进程管理和监控。

🚀 技术特色

  • 官方 INI 解析 - 使用 npm 官方维护的 ini 库进行配置文件解析
  • HTTP 请求日志 - 集成 Morgan 中间件,记录所有 HTTP 请求(Apache combined

格式)

  • Streamable HTTP - 基于 MCP SDK 的标准 Streamable HTTP 传输协议
  • 类型安全 - 完整的 TypeScript 类型定义和验证
  • 生产就绪 - 包含错误处理、日志记录、健康检查等功能

功能特性

进程管理

  • ✅ 列出程序 - 获取所有被管理程序的状态信息
  • ✅ 启动程序 - 启动单个程序
  • ✅ 停止程序 - 停止单个程序
  • ✅ 批量操作 - 批量启动/停止多个程序
  • ✅ 状态查询 - 获取单个程序的详细状态信息

日志管理

  • ✅ 日志查看 - 读取程序 stdout/stderr 日志
  • ✅ 分页读取 - 支持指定偏移和长度的分页读取
  • ✅ 末尾读取 - 从文件末尾读取指定行数
  • ✅ 文件检查 - 自动检测可读日志文件

配置管理

  • ✅ 配置查看 - 查看完整配置文件或指定节
  • ✅ 配置更新 - 更新配置项的值
  • ✅ 配置节管理 - 添加、删除配置节
  • ✅ 配置备份 - 自动备份配置文件

系统控制

  • ✅ 配置重载 - 重载 supervisord 配置
  • ✅ 健康检查 - 监控与 supervisord 的连接状态

HTTP 日志记录

  • ✅ 请求日志 - 使用 Morgan 中间件记录所有 HTTP 请求
  • ✅ 标准格式 - Apache combined 格式,支持日志分析工具
  • ✅ 实时输出 - 日志直接输出到控制台,便于实时监控
  • ✅ 高性能 - 异步日志记录,不影响服务器响应性能

安装依赖

cd supervisor-mcp-server
npm install

配置环境变量

创建 .env 文件或设置以下环境变量:

# Supervisord 连接配置
SUPERVISORD_HOST=127.0.0.1          # supervisord 主机地址
SUPERVISORD_PORT=9001               # supervisord HTTP 端口
SUPERVISORD_USERNAME=admin          # supervisord 用户名(可选)
SUPERVISORD_PASSWORD=password       # supervisord 密码(可选)

# 配置文件路径
SUPERVISORD_CONFIG_FILE=/etc/supervisord.conf  # supervisord 配置文件路径

# Supervisord 运行目录
SUPERVISORD_COMMAND_DIR=/var/log/supervisor     # supervisord 运行命令所在目录(用于查找日志文件)

# MCP 服务器配置
MCP_PORT=3000                       # MCP 服务器监听端口

启动服务器

开发模式

npm run dev

生产模式

npm run build
npm start

supervisord 配置

确保 supervisord 已配置 HTTP 服务器:

# /etc/supervisord.conf
[inet_http_server]
port=127.0.0.1:9001
username=admin
password=password

[supervisorctl]
serverurl=http://127.0.0.1:9001

可用的 MCP 工具

进程管理

1. list_programs

列出所有程序及其状态。

// 使用示例
const programs = await callTool("list_programs", {});
2. start_program

启动指定程序。

const result = await callTool("start_program", {
  name: "my_program",
});
3. stop_program

停止指定程序。

const result = await callTool("stop_program", {
  name: "my_program",
});
4. start_programs

批量启动程序。

const result = await callTool("start_programs", {
  names: ["program1", "program2", "program3"],
});
5. stop_programs

批量停止程序。

const result = await callTool("stop_programs", {
  names: ["program1", "program2", "program3"],
});
6. get_program_status

获取单个程序的详细状态。

const status = await callTool("get_program_status", {
  name: "my_program",
});

日志管理

7. read_log

读取程序日志。

// 读取完整日志
const fullLog = await callTool("read_log", {
  name: "my_program",
  type: "stdout",
});

// 从文件末尾读取最近 50 行
const recentLog = await callTool("read_log", {
  name: "my_program",
  type: "stdout",
  tail: true,
  lines: 50,
});

// 从指定位置读取 1KB 数据
const partialLog = await callTool("read_log", {
  name: "my_program",
  type: "stdout",
  offset: 1024,
  length: 1024,
});

参数说明:

  • name: 程序名称
  • type: 日志类型 ('stdout' | 'stderr')
  • offset: 字节偏移(可选)
  • length: 读取字节数(可选)
  • lines: 读取行数(可选)
  • tail: 是否从文件末尾读取(默认 false)

配置管理

8. get_config

获取配置文件。

// 获取完整配置
const fullConfig = await callTool("get_config", {});

// 获取指定节
const programSection = await callTool("get_config", {
  section: "program:my_program",
});
9. update_config

更新配置项。

const result = await callTool("update_config", {
  section: "program:my_program",
  key: "command",
  value: "/usr/bin/myapp --flag value",
});

系统控制

10. reload_supervisor

重载 supervisord 配置。

const result = await callTool("reload_supervisor", {});

API 接口

服务器还提供了一些 HTTP API 端点:

健康检查

GET /health

返回 supervisord 连接状态和服务器健康状况。

项目结构

supervisor-mcp-server/
├── src/
│   ├── supervisordClient.ts    # supervisord REST API 客户端
│   ├── logReader.ts            # 日志文件读取器
│   ├── configManager.ts        # 配置文件管理器
│   └── server.ts               # 主服务器文件
├── package.json
├── tsconfig.json
├── .gitignore
└── README.md

开发说明

架构设计

  1. supervisordClient.ts - 封装 supervisord REST API 调用
  2. logReader.ts - 处理日志文件的分页读取和文件系统操作
  3. configManager.ts - 管理 INI 格式配置文件的解析和修改
  4. server.ts - 主 MCP 服务器,整合所有功能

技术栈

  • MCP SDK - Model Context Protocol TypeScript SDK
  • Express - HTTP 服务器框架
  • Axios - HTTP 客户端
  • TypeScript - 类型安全的 JavaScript

错误处理

所有工具都包含完整的错误处理,会返回详细的错误信息而不是崩溃。

日志记录

服务器会记录:

  • MCP 请求处理
  • supervisord 连接状态
  • 错误和异常情况

安全考虑

  1. 认证 - 支持 supervisord 的用户名/密码认证
  2. 权限 - 依赖 supervisord 的访问控制
  3. 配置保护 - 配置文件修改前自动备份
  4. 输入验证 - 所有输入参数都经过 zod 验证

许可证

MIT License

贡献

欢迎提交 Issue 和 Pull Request!

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

进程管理TypeScript本地部署日志管理配置管理系统控制HTTP日志记录

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Supervisor MCP Server

MCP World · 本页

0未说明未标注1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Supervisor MCP Server 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Supervisor MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Supervisor MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Supervisor MCP Server 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Supervisor MCP Server 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP