Back to MCP directory
publicPublicdnsLocal runtime

mcp-server-management-scripts

该项目提供了一套脚本工具,用于便捷地启动和管理MCP(模型上下文协议)服务器,支持前台运行和后台模式,包含日志管理、进程监控等功能。

article

README

🚀 MCP 服务器管理脚本

本仓库中的脚本可助力你轻松启动与管理开发阶段的 MCP(模型上下文协议)服务器,提升开发与维护效率。

🚀 快速开始

确保两个脚本具备可执行权限:

chmod +x start-mcp-servers.sh manage-mcp-servers.sh

✨ 主要特性

  • 启动脚本start-mcp-servers.sh 用于启动所有 MCP 服务器。
  • 管理脚本manage-mcp-servers.sh 辅助你管理运行中的 MCP 服务器,支持列出、停止、查看日志等操作。

📦 安装指南

启动 MCP 服务器

启动所有 MCP 服务器,可执行以下命令:

./start-mcp-servers.sh

默认情况下,此命令会执行以下操作:

  1. 清除现有的日志文件。
  2. 以前台模式运行所有服务器,并在当前终端显示输出。
  3. 在每一行前添加服务器名称,方便识别。

后台模式运行

若希望以后台模式运行服务器,可使用以下命令:

./start-mcp-servers.sh --background

在后台模式下,脚本会按优先级顺序尝试使用以下方法启动服务器:

  1. iTerm2 标签页(若使用 iTerm2)。
  2. Terminal.app 窗口(若使用 Terminal.app)。
  3. tmux 会话(若已安装 tmux)。
  4. 后台进程并写入日志文件(作为最后的手段)。

命令行选项

查看可用选项,可执行:

./start-mcp-servers.sh --help

可用选项如下:

  • --background, -b:以后台模式运行服务器。
  • --help, -h:显示帮助信息。

管理 MCP 服务器

管理脚本提供了多个命令,用于管理运行中的 MCP 服务器:

显示帮助

./manage-mcp-servers.sh help

列出运行中的服务器

./manage-mcp-servers.sh list

此命令将显示所有配置的服务器及其运行状态。

停止服务器

停止所有服务器:

./manage-mcp-servers.sh stop

停止特定服务器(按编号):

./manage-mcp-servers.sh stop 1  # 停止第一个服务器

查看日志

列出所有日志文件:

./manage-mcp-servers.sh logs

查看特定服务器的日志(按编号):

./manage-mcp-servers.sh logs 1  # 查看第一个服务器的日志

将服务器带到前台

./manage-mcp-servers.sh fg 1  # 将第一个服务器带到前台

若无法将服务器带到前台,会在实时更新中显示日志文件。

添加新 MCP 服务器

添加新的 MCP 服务器,只需编辑 start-mcp-servers.sh 文件:

  1. 打开 start-mcp-servers.sh
  2. 在文件顶部找到 MCP_SERVERS 数组。
  3. 将新服务器的路径添加到数组中,例如:
"/path/to/your/new/mcp_server"
  1. 保存并关闭文件。 新服务器将在下次运行脚本时启动。

日志管理

自动清理日志

默认情况下,脚本会自动删除旧的日志文件以节省空间。你可通过修改 LOG_RETENTION_DAYS 变量来控制日志保留天数:

# 在 start-mcp-servers.sh 中找到以下行:
LOG_RETENTION_DAYS=7  # 例如,保留 7 天内的日志

前台模式与后台模式

  • 前台模式:服务器在当前终端窗口运行,关闭窗口时停止。
  • 后台模式:服务器在后台持续运行,即便关闭终端窗口也不受影响。

🔧 技术细节

启动脚本(start-mcp-servers.sh)

  1. 检查所有 MCP 服务器的状态。
  2. 按需启动未运行的服务器。
  3. 提供实时输出,监控服务器状态。
  4. 自动管理后台进程和日志文件。

管理脚本(manage-mcp-servers.sh)

  • 提供多种命令控制服务器。
  • 显示实时状态和日志。
  • 支持在前台或后台模式下运行服务器。

📚 详细文档

故障排除

问题:无法启动某个 MCP 服务器

  1. 检查路径是否正确。
  2. 确保服务器文件可执行。
  3. 查看日志文件获取错误信息:
./manage-mcp-servers.sh logs <server_number>

问题:后台进程未运行

  1. 检查终端窗口是否关闭。
  2. 确保后台模式支持(iTerm2 或 Terminal.app)。
  3. 使用 tmux 或其他会话管理工具保持连接。

常见错误代码和日志信息

  • 代码 1:路径不存在或不可访问。
  • 代码 2:服务器文件不可执行。
  • 代码 3:依赖服务未运行。
  • 日志示例
[INFO] Starting MCP Server 1...
[ERROR] Failed to start server: Permission denied

总结

这些脚本极大地便利了多个 MCP 服务器的管理,支持前台和后台模式,提供详细的实时状态与日志信息。通过简单命令即可实现服务器的启动、停止和监控,有效提升开发与维护效率。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client