MCP 服务器是一个配置,告诉 MetaMCP 如何启动和管理模型上下文协议服务器。这些服务器提供工具、资源和提示,可以通过 MetaMCP 端点聚合和暴露。

什么是 MCP 服务器?

MCP 服务器是 MetaMCP 的构建块。每个服务器配置定义:
  • 如何启动服务器(命令、参数、环境)
  • 服务器类型(STDIO、SSE、可流式 HTTP)
  • 身份验证要求(如果有)
  • 资源依赖(Python 包、Node 模块等)

配置示例

{
  "name": "HackerNews",
  "type": "STDIO", 
  "command": "uvx",
  "args": ["mcp-hn"],
  "description": "访问 HackerNews 故事和评论"
}

服务器类型

MetaMCP 支持三种类型的 MCP 服务器:

配置选项

基本配置

{
  "name": "unique-server-name",
  "type": "STDIO|SSE|STREAMABLE_HTTP",
  "command": "command-to-run", // 仅 STDIO
  "args": ["arg1", "arg2"],     // 仅 STDIO
  "url": "https://...",         // 仅 SSE/STREAMABLE_HTTP
}

环境变量

向 STDIO 服务器传递环境变量:
{
  "name": "TimeServer",
  "type": "STDIO",
  "command": "uvx",
  "args": ["mcp-server-time", "--local-timezone=America/New_York"],
  "env": {
    "TZ": "America/New_York"
  }
}

身份验证

对于需要身份验证的服务器:
{
  "env": {
    "API_KEY": "your-secret-key"
  }
}

管理 MCP 服务器

添加服务器

  1. 导航到 MetaMCP 仪表板中的 MCP 服务器
  2. 点击”添加服务器”
  3. 配置服务器详细信息
  4. 测试配置
  5. 保存使其可用于命名空间

批量导入/导出

MetaMCP 支持批量导入和导出 MCP 服务器配置,便于迁移和备份。

导出服务器

将所有配置的 MCP 服务器导出到 JSON 文件:
  1. 导航到仪表板中的 MCP 服务器
  2. 点击”导出 JSON”按钮
  3. 选择下载文件或复制到剪贴板

导出格式

{
  "mcpServers": {
    "HackerNews": {
      "type": "stdio",
      "command": "uvx",
      "args": ["mcp-hn"],
      "description": "访问 HackerNews 故事和评论"
    },
    "TimeServer": {
      "type": "stdio", 
      "command": "uvx",
      "args": ["mcp-server-time"],
      "env": {
        "TZ": "America/New_York"
      },
      "description": "时间和时区实用工具"
    },
    "RemoteAPI": {
      "type": "streamable_http",
      "url": "https://api.example.com/mcp",
      "bearerToken": "your-bearer-token",
      "description": "通过 HTTP 的远程 MCP 服务器"
    }
  }
}

导入服务器

从 JSON 配置导入多个 MCP 服务器:
  1. 导航到仪表板中的 MCP 服务器
  2. 点击”导入 JSON”按钮
  3. 粘贴或输入您的 JSON 配置
  4. 点击”导入”添加服务器
{
  "mcpServers": {
    "ServerName": {
      "type": "stdio",
      "command": "uvx",
      "args": ["package-name"],
      "env": {
        "API_KEY": "your-key"
      },
      "description": "可选描述"
    }
  }
}
类型值(不区分大小写):
  • "stdio", "STDIO", "std" → STDIO
  • "sse", "SSE" → SSE
  • "streamable_http", "STREAMABLE_HTTP", "streamablehttp", "http" → STREAMABLE_HTTP
导入行为:
  • 具有现有名称的服务器将使用新配置更新
  • 新服务器将被创建
  • 无效配置将被跳过并显示错误消息
  • 导入过程显示成功/失败计数
使用批量导入/导出用于:
  • 环境迁移(开发 → 测试 → 生产)
  • 团队协作(共享服务器配置)
  • 备份和恢复(配置备份)
  • 快速设置(一次部署多个服务器)

空闲会话管理

MetaMCP 预分配空闲会话以获得更好的性能:

冷启动优化

  • 默认:每个服务器 1 个空闲会话
  • 可配置:根据使用模式调整
  • 自动扩展:按需创建会话
  • 清理:超时后回收空闲会话

依赖项的自定义 Dockerfile

如果您的 MCP 服务器需要 uvxnpx 之外的额外依赖项,您可以自定义 MetaMCP Dockerfile:
FROM metamcp:latest

# 安装 Python 依赖项
RUN pip install requests beautifulsoup4

# 安装系统包
RUN apt-get update && apt-get install -y \
    curl \
    git \
    && rm -rf /var/lib/apt/lists/*

# 全局安装 Node.js 包
RUN npm install -g some-mcp-package
自定义依赖项会增加 Docker 镜像大小和启动时间。尽可能考虑使用轻量级替代方案。

故障排除

下一步