使用说明
项目简介
CF-MCP-Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端示例,它使用 Cloudflare Workers 平台部署,旨在演示如何利用 MCP 协议为 LLM 应用提供标准化的上下文信息和功能服务。该项目目前包含了图像生成和信息检索两个核心功能模块,展示了 MCP 服务器在资源管理和工具注册方面的能力。
主要功能点
- 🖼️ 标准化服务接口: 基于 MCP 协议提供统一的服务接口,方便 LLM 客户端进行调用。
- 🚀 开箱即用模块: 内置图像生成和 Tavily 搜索 Worker 模块,可直接部署使用。
- 🔧 灵活扩展性: 支持快速添加自定义工具和资源,满足多样化应用需求。
- ⚡ 边缘计算部署: 基于 Cloudflare Workers 构建,具备边缘计算的低延迟和高可用性优势。
安装步骤
- 环境准备: 确保已安装 Node.js 18+、Wrangler CLI 和 NPM。
- 安装依赖: 在本地克隆仓库后,在项目根目录下运行 'pnpm install' 安装项目依赖。
pnpm install - 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据需要配置环境变量(例如 'SHARED_SECRET',但本示例仓库中默认配置通常已足够演示)。
cp .env.example .env - 部署 Worker: 运行 'pnpm deploy' 命令将 Worker 部署到 Cloudflare Workers 平台。请确保已正确配置 Wrangler CLI 并关联 Cloudflare 账号。
部署成功后,会得到一个 Cloudflare Worker 的 URL,例如 'https://your-worker-name.workers.dev'。pnpm deploy
服务器配置
以下是 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: 环境变量配置,本示例中通常为空对象 '{}'。
- serverName (例如 imageGenerator, informationRetriever): 自定义服务器名称,用于在 MCP 客户端中引用。
注意: 请将 '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与计算