返回市场
MCP服务器管理

MCP服务器管理

作者:small-tou7 星标更新:2025-06-17

项目介绍

技术文档摘要

🚀 MCP Server Manager

🔧 一个强大的模型上下文协议(MCP)服务管理平台

TypeScript React Node.js Express.js

📖 项目介绍

MCP Server Manager 是一个专门为管理多个 MCP(模型上下文协议)服务器设计的现代 Web 应用程序。它提供了一个直观的用户界面,用于创建、配置和监控 MCP 服务器,以及管理相关的工具、提示和认证令牌。

🎯 核心功能

  • 🖥️ 服务器管理 - 创建、启动、停止和监控 MCP 服务器
  • 🔧 工具管理 - 动态创建并部署 JavaScript 函数作为 MCP 工具
  • 📝 提示管理 - 参数化提示模板的管理
  • 🔑 令牌管理 - 生成并管理每个服务器的访问令牌
  • 📡 实时监控 - 通过 SSE 实现实时监控服务器状态
  • 💾 数据持久性 - 基于 SQLite 的可靠数据存储
  • 📋 配置复制 - 一键将 MCP 服务器配置复制到剪贴板

image

image

image

image

image

🎮 用户指南

📊 服务器管理

  1. 创建服务器

    • 点击“创建服务器”按钮
    • 填写服务器名称、描述和端口
    • 选择关联的工具和提示
  2. 启动服务器

    • 在服务器列表中点击“启动”按钮
    • 实时监控服务器状态变化
  3. 监控服务器

    • 检查服务器运行状态
    • 监控连接数和请求统计

🔧 工具管理

  1. 创建工具

    • 编写 JavaScript 函数代码
    • 定义工具的 JSON 模式
    • 测试工具功能
  2. 部署工具

    • 将工具关联到指定服务器
    • 自动注册到 MCP 服务器实例

📝 提示管理

  1. 创建提示

    • 编写提示模板
    • 定义参数列表
    • 预览提示效果
  2. 提示

    • 将提示关联到服务器
    • 通过 MCP 协议访问

🔑 令牌管理

  1. 生成令牌

    • 为指定服务器生成访问令牌
    • 设置令牌名称和描述
  2. 管理令牌

    • 查看所有令牌
    • 撤销不需要的令牌

📋 配置复制

  1. 复制配置

    • 在服务器列表中找到要复制配置的服务器
    • 点击橙色的“复制配置”按钮 📋
    • 选择复制内容:
      • 确认 = 复制完整的配置指令(包括代理脚本和使用说明)
      • 取消 = 只复制 Claude Desktop 配置 JSON
  2. 使用配置

    • 将配置粘贴到 Claude Desktop 配置文件中
    • 确保 MCP 服务器正在运行
    • 重启 Claude Desktop 应用程序
    • 服务器提供的工具和提示将在对话框中可用

📁 项目结构

mcp-server-manage/
├── 📦 packages/
│   ├── 🔧 backend/              # Node.js 后端
│   │   ├── 📁 src/
│   │   │   ├── 📊 models/       # 数据模型
│   │   │   ├── 🔧 services/     # 业务服务
│   │   │   ├── 🚀 mcp/          # MCP 服务器管理
│   │   │   ├── 🛣️ routes/       # API 路由
│   │   │   ├── 🛡️ middleware/   # 中间件
│   │   │   └── 🏠 index.ts      # 应用入口
│   │   └── 📦 package.json
│   └── 🎨 frontend/             # React 前端
│       ├── 📁 src/
│       │   ├── 🧩 components/   # UI 组件
│       │   ├── 📄 pages/        # 页面组件
│       │   ├── 🔗 services/     # API 服务
│       │   ├── 📘 types/        # 类型定义
│       │   └── 🏠 main.tsx      # 应用入口
│       └── 📦 package.json
├── 📦 package.json              # 根配置
├── 🚫 .gitignore               # Git 忽略规则
└── 📖 README.md                # 项目文档

🔗 API 接口

📊 服务器 API

方法路径描述
GET/api/servers📋 获取所有服务器
POST/api/servers➕ 创建新服务器
GET/api/servers/:id📄 获取指定服务器
PUT/api/servers/:id✏️ 更新服务器
DELETE/api/servers/:id❌ 删除服务器
POST/api/servers/:id/start▶️ 启动服务器
POST/api/servers/:id/stop⏹️ 停止服务器
GET/api/servers/:id/status📈 获取服务器状态
GET/api/servers/:id/mcp-config🆕 获取服务器 MCP 配置

🔧 工具 API

方法路径描述
GET/api/tools📋 获取所有工具
POST/api/tools➕ 创建新工具
GET/api/tools/:id📄 获取指定工具
PUT/api/tools/:id✏️ 更新工具
DELETE/api/tools/:id❌ 删除工具

📝 提示 API

方法路径描述
GET/api/prompts📋 获取所有提示
POST/api/prompts➕ 创建新提示
GET/api/prompts/:id📄 获取指定提示
PUT/api/prompts/:id✏️ 更新提示
DELETE/api/prompts/:id❌ 删除提示

🔑 令牌 API

方法路径描述
GET/api/tokens📋 获取所有令牌
POST/api/tokens➕ 创建新令牌
DELETE/api/tokens/:id❌ 删除令牌

🛠️ 开发指南

🔧 开发环境设置

  1. 安装依赖

    npm run install:all
    
  2. 启动开发模式

    npm run dev
    
  3. 运行测试

    npm run test
    
  4. 代码审查

    npm run lint
    

📦 构建生产版本

# 构建后端
cd packages/backend
npm run build

# 构建前端
cd packages/frontend
npm run build

🐛 调试技巧

  • 🔍 使用浏览器开发者工具调试前端
  • 📊 查看后端日志:packages/backend/logs/
  • 🗃️ 数据库文件位置:packages/backend/database.db

🤝 贡献指南

我们欢迎任何形式的贡献!🎉

  1. 🍴 分叉项目
  2. 🌿 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 💾 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 📤 推送分支 (git push origin feature/AmazingFeature)
  5. 🔄 创建拉取请求

📋 开发规范

  • 📘 使用 TypeScript 编写代码
  • 🧪 为新功能编写测试
  • 📝 保持代码注释清晰
  • 🎨 遵循现有的代码风格

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详细信息。

🙏 致谢

📞 联系我们


⭐ 如果这个项目对你有帮助,请给我们一个星!

新特性:MCP 配置复制

现在你可以轻松地复制 MCP 服务器的配置给 Claude Desktop 或其他 MCP 客户端:

✨ 关键特性

我们的 MCP 服务器支持 SSE(服务器发送事件) 传输协议,Claude Desktop 原生支持 此协议,无需额外的代理脚本或工具。

使用说明

  1. 在服务器列表中找到要复制配置的服务器
  2. 点击橙色的“复制配置”按钮 📋
  3. 根据服务器状态选择复制的内容:
    • 当存在认证令牌 时,选择认证配置(推荐)或基本配置
    • 当不存在认证令牌 时,选择完整说明或仅 JSON 配置

配置格式

1. 基本 SSE 配置

{
  "mcpServers": {
    "your-server": {
      "url": "http://localhost:3001/sse"
    }
  }
}

2. 包含认证的配置(推荐)

{
  "mcpServers": {
    "your-server": {
      "url": "http://localhost:3001/sse",
      "headers": {
        "Authorization": "Bearer your-token-here"
      }
    }
  }
}

🔧 工作原理

  • 直接连接 Claude Desktop 直接连接到服务器的 SSE 端点
  • 实时通信 通过 SSE 协议实现实时双向通信
  • 标准协议 完全符合 MCP(模型上下文协议)标准
  • 无需代理 不需要任何中间脚本或工具

Claude Desktop 集成步骤

  1. 复制配置后,打开 Claude Desktop 配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 将复制的配置粘贴到文件中

  3. 确保服务器正在运行(在我们的管理界面中启动)

  4. 重启 Claude Desktop 应用程序

  5. 在聊天界面左下角应出现 🔨 图标,表示工具可用

🔍 故障排除

连接问题

  • 检查服务器状态:确保在管理界面中显示为“运行”
  • 测试 SSE 端点:curl http://localhost:端口/sse
  • 查看健康检查:curl http://localhost:端口/health

Claude Desktop 日志

  • macOS: ~/Library/Logs/Claude/mcp*.log
  • Windows: %APPDATA%\Claude\logs\mcp*.log

常见解决方案

  1. 确保 JSON 配置格式正确(可以使用在线 JSON 验证器)
  2. 重启 Claude Desktop 后等待一段时间以建立连接
  3. 检查防火墙是否阻止了本地端口访问
  4. 确认服务器端口与配置中的端口匹配

🚀 优势

  • 🔌 即插即用 无需安装额外依赖
  • 🔒 安全认证 支持 Bearer Token 认证
  • ⚡ 高性能 直接 SSE 连接,低延迟
  • 📱 跨平台 支持 Claude Desktop 所有平台
  • 🛠️ 易维护 标准协议便于调试和监控