Morph Cloud MCP 开发工具箱示例

项目简介

'morphcloud-examples-public' 仓库中的 'mcp-devbox' 示例,旨在帮助开发者快速搭建 MCP 服务器的开发环境。它提供了一键部署脚本,可以将预配置的 MCP 服务器运行在 Morph Cloud 虚拟机上,并包含了一个简单的 SSE 客户端示例,方便开发者进行 MCP 服务器的开发、测试和集成。

主要功能点

  • 快速部署 MCP 服务器开发环境: 通过脚本自动化完成虚拟机创建、MCP 服务器配置和部署,简化环境搭建流程。
  • 支持多种 MCP 服务器: 可以根据预定义的 MCP 包列表,选择并部署不同的 MCP 服务器实现。
  • 集成 Supergateway: 使用 Supergateway 将 MCP 服务器的输出转换为 SSE (Server-Sent Events) 协议,方便客户端通过 SSE 与服务器通信。
  • 提供 SSE 客户端示例: 包含 'client_sse.py' 示例客户端,演示如何通过 SSE 连接和使用 MCP 服务器。
  • 支持 API Key 认证: 部署的 MCP 服务器可以选择启用 API Key 认证,增强安全性。
  • 可定制服务器配置: 允许用户在部署前自定义 MCP 服务器的启动参数和环境变量。

安装步骤

  1. 前提条件:

  2. 克隆仓库:

    git clone https://github.com/morph-labs/morphcloud-examples-public
    cd morphcloud-examples-public/mcp-devbox
  3. 运行安装脚本: 执行 'setup_mcp.py' 脚本来创建和配置 Morph Cloud 虚拟机,并部署 MCP 服务器。

    python setup_mcp.py

    脚本会引导您选择要部署的 MCP 服务器,并配置相关参数。您也可以通过 '--config' 参数指定预先配置好的 JSON 文件。

  4. 连接到 MCP 服务器: 脚本成功运行后,会输出 MCP 服务器的 SSE Endpoint URL 和一个配置文件 'mcp_config_{instance_id}.json'。您可以使用 'client_sse.py' 客户端示例连接到部署的 MCP 服务器。

服务器配置

MCP 客户端需要 MCP 服务器的启动命令 (command) 及其参数 (args) 才能与之建立连接。'setup_mcp.py' 脚本会自动生成一个配置文件 'mcp_config_{instance_id}.json',其中包含了连接到已部署 MCP 服务器所需的配置信息。

以下是一个典型的 MCP 服务器配置示例 (JSON 格式,无需用户手动配置,由 'setup_mcp.py' 自动生成):

{
  "mcpServers": {
    "brave-search-sse": {
      "url": "https://remote-brave-search-xxxxxxxxxxxxx.http.cloud.morph.so/sse"
    },
    "brave-search-stdio": {
      "command": "npx",
      "args": [
        "-y",
        "supergateway",
        "--sse",
        "https://remote-brave-search-xxxxxxxxxxxxx.http.cloud.morph.so/sse"
      ]
    }
  }
}
  • server name: 例如 '"brave-search-sse"' 或 '"brave-search-stdio"',用于在客户端配置中标识不同的 MCP 服务器。
  • url: (仅 SSE 客户端需要) MCP 服务器的 SSE Endpoint URL,客户端通过此 URL 建立 SSE 连接。
  • command: (仅 stdio 客户端需要) 启动 MCP 服务器的命令,通常为 'npx'。
  • args: (仅 stdio 客户端需要) 传递给启动命令的参数,包括 'supergateway' 和 '--sse' 参数以及 SSE Endpoint URL。

基本使用方法

  1. 部署 MCP 服务器: 运行 'setup_mcp.py' 脚本,按照提示选择和配置 MCP 服务器。

  2. 运行客户端示例: 使用 'client_sse.py' 客户端连接到部署的 MCP 服务器,并进行交互。

    python client_sse.py <server_url> [api_key]

    其中 '<server_url>' 是 'setup_mcp.py' 脚本输出的 SSE Endpoint URL,'[api_key]' 是可选的 API Key (如果服务器启用了 API Key 认证)。

  3. 与 Claude 集成: 将 'setup_mcp.py' 脚本输出的 Claude 兼容的 MCP 服务器配置添加到 Claude 客户端配置中,即可在 Claude 对话中使用部署的 MCP 服务器。

注意事项

  • 'setup_mcp.py' 脚本依赖 'morphcloud-examples-public' 仓库中的其他脚本和资源,请确保在克隆仓库后在 'mcp-devbox' 目录下运行脚本。
  • 'client_sse.py' 客户端示例仅为演示目的,可能需要根据实际 MCP 服务器的功能进行扩展和修改。
  • 部署 MCP 服务器会消耗 Morph Cloud 资源,请注意资源使用情况。

信息

分类

开发者工具