返回市场
配置管理点服务器

配置管理点服务器

作者:HeyGarrison6 星标更新:2025-11-20

项目介绍

CF-MCP: REST API + MCP Server on Cloudflare Workers

一个同时提供REST API和MCP(模型上下文协议)接口的Cloudflare Worker。

架构

┌─────────────────────────────────────┐
│   Cloudflare Worker (边缘)          │
│                                      │
│  ┌────────────────────────────────┐ │
│  │  Hono 路由器                   │ │
│  │                                │ │
│  │  /api/*  ─── REST API          │ │
│  │                                │ │
│  │  /mcp    ─── MCP 协议          │ │
│  │               (封装 REST)      │ │
│  └────────────────────────────────┘ │
└─────────────────────────────────────┘

功能

REST API 端点

  • GET /api/products - 列出所有产品(支持过滤)
  • GET /api/products/:id - 获取单个产品
  • POST /api/products - 创建新商品
  • PUT /api/products/:id - 更新商品
  • DELETE /api/products/:id - 删除商品

MCP 工具

MCP 端点将所有 REST 操作封装为工具:

  • list_products - 使用过滤条件查询产品
  • get_product - 获取产品详情
  • create_product - 添加新产品
  • update_product - 修改现有产品
  • delete_product - 移除产品

快速开始

安装依赖

npm install

本地运行

npm run dev

服务器将在 http://localhost:8787 启动

测试 REST API

# 列出所有产品
curl http://localhost:8787/api/products

# 获取特定产品
curl http://localhost:8787/api/products/1

# 根据类别过滤
curl http://localhost:8787/api/products?category=电子产品

# 创建产品
curl -X POST http://localhost:8787/api/products \
  -H "Content-Type: application/json" \
  -d '{"name":"笔记本电脑","price":999,"description":"强大的笔记本电脑","category":"电子产品"}'

测试 MCP 端点

# 列出可用工具
curl -X POST http://localhost:8787/mcp \
  -H "Content-Type: application/json" \
  -d '{"method":"tools/list","params":{}}'

# 调用工具
curl -X POST http://localhost:8787/mcp \
  -H "Content-Type:  application/json" \
  -d '{"method":"tools/call","params":{"name":"list_products","arguments":{"category":"电子产品"}}}'

部署到 Cloudflare

npm run deploy

部署后,您的API将在Cloudflare的边缘网络上全球可用!

展示的关键模式

1. REST 到 MCP 的转换

每个 REST 端点映射到一个 MCP 工具:

  • REST 参数 → MCP 工具参数
  • REST 响应 → MCP 工具结果
  • REST 认证 → MCP 工具上下文

2. 边缘部署

  • 单个工作器同时服务两个接口
  • 通过 Cloudflare 网络进行全球分布
  • 对于 REST 和 MCP 调用都具有低延迟

3. 统一代码库

  • 在 REST 和 MCP 之间共享业务逻辑
  • 干净原则:定义操作一次
  • 易于维护和扩展

项目结构

cf-mcp/
├── src/
│   ├── index.ts      # 主 Hono 应用 + 路由
│   ├── api.ts        # REST API 端点
│   └── mcp.ts        # MCP 协议处理器
├── wrangler.toml     # Cloudflare 配置
├── package.json
└── tsconfig.json

下一步

  1. 添加认证(API 密钥,OAuth)
  2. 实现速率限制
  3. 使用 Cloudflare KV 添加缓存
  4. 连接到 Cloudflare D1 以实现持久存储
  5. 添加流式响应
  6. 实现分页

更多学习

课程标题

“从边缘返回:将任何 REST API 转换为 MCP 服务器”

一个实践性强、代码量大的课程,展示如何将任何 REST API 封装为 Model Context Protocol,并将其部署到 Cloudflare Workers,以实现闪电般快速且全球分布的访问。 </中文翻译>