使用说明

项目简介

CF-MCP-Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端示例,它使用 Cloudflare Workers 平台部署,旨在演示如何利用 MCP 协议为 LLM 应用提供标准化的上下文信息和功能服务。该项目目前包含了图像生成和信息检索两个核心功能模块,展示了 MCP 服务器在资源管理和工具注册方面的能力。

主要功能点

  • 🖼️ 标准化服务接口: 基于 MCP 协议提供统一的服务接口,方便 LLM 客户端进行调用。
  • 🚀 开箱即用模块: 内置图像生成和 Tavily 搜索 Worker 模块,可直接部署使用。
  • 🔧 灵活扩展性: 支持快速添加自定义工具和资源,满足多样化应用需求。
  • ⚡ 边缘计算部署: 基于 Cloudflare Workers 构建,具备边缘计算的低延迟和高可用性优势。

安装步骤

  1. 环境准备: 确保已安装 Node.js 18+、Wrangler CLI 和 NPM。
  2. 安装依赖: 在本地克隆仓库后,在项目根目录下运行 'pnpm install' 安装项目依赖。
    pnpm install
  3. 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据需要配置环境变量(例如 'SHARED_SECRET',但本示例仓库中默认配置通常已足够演示)。
    cp .env.example .env
  4. 部署 Worker: 运行 'pnpm deploy' 命令将 Worker 部署到 Cloudflare Workers 平台。请确保已正确配置 Wrangler CLI 并关联 Cloudflare 账号。
    pnpm deploy
    部署成功后,会得到一个 Cloudflare Worker 的 URL,例如 'https://your-worker-name.workers.dev'。

服务器配置

以下是 MCP 客户端配置 MCP 服务器连接信息的示例 JSON 格式。您需要根据实际部署情况,将 'command' 和 'args' 字段配置为指向您部署的 Cloudflare Worker 地址。

{
  "mcpServers": {
    "imageGenerator": {
      "command": "https://your-worker-name.workers.dev",  // 替换为您的图像生成 Worker 的 URL
      "args": [], // Cloudflare Worker 通常无需额外的启动参数
      "env": {}
    },
    "informationRetriever": {
      "command": "https://your-tavily-worker-name.workers.dev", // 替换为您的信息检索 Worker 的 URL
      "args": [],
      "env": {}
    }
  }
}

配置参数说明:

  • mcpServers: 定义多个 MCP 服务器连接的配置。
    • serverName (例如 imageGenerator, informationRetriever): 自定义服务器名称,用于在 MCP 客户端中引用。
      • command: MCP 服务器的端点地址。对于 Cloudflare Worker 部署的服务,这里填写 Worker 的 URL。
      • args: 启动命令的参数列表。对于 Cloudflare Worker,通常为空数组 '[]'。
      • env: 环境变量配置,本示例中通常为空对象 '{}'。

注意: 请将 'https://your-worker-name.workers.dev' 和 'https://your-tavily-worker-name.workers.dev' 替换为您实际部署的 Cloudflare Worker 的 URL。 您可能需要为不同的功能模块 (例如图像生成和信息检索) 部署不同的 Worker,并配置不同的 'serverName'。

基本使用方法

部署完成后,您可以使用 MCP 客户端,根据上述服务器配置信息连接到 CF-MCP-Server。

示例功能调用:

  • 图像生成: 客户端可以调用 'imageGenerator' 服务器提供的 'generateImageWithFLux1Schnell' 工具,并传递 'prompt' 和 'steps' 参数来生成图像。
  • 信息检索: 客户端可以调用 'informationRetriever' 服务器提供的 'search' 或 'extract' 工具,并传递搜索关键词或 URL 以及 API 密钥等参数来获取信息。

具体的功能调用方式和参数,请参考仓库 'README.md' 文件中的 API 文档和开发指南,以及 Cloudflare Workers MCP 官方案例

信息

分类

AI与计算