使用说明
MCP为Claude启用了Cloudflare Worker
此存储库包含一个实现模型上下文协议(MCP)的Cloudflare Worker,它允许Claude直接从您的对话中访问各种外部服务和API。
特性
工作人员为Claude提供了以下工具:
- 天气信息:获取任何城市的当前天气数据
- IP地理定位:查找有关任何IP地址的详细信息
- 网页搜索:使用可定制的结果计数执行谷歌搜索
- HTTP请求代理:向任何端点发出自定义HTTP请求,并完全控制标头、方法和正文数据
安装说明
先决条件
- 已安装Node.js和npm
- Cloudflare帐户
安装
- 安装牧马人CLI
npm install -g wrangler
- 登录Cloudflare
wrangler login
- 克隆此存储库
git clone https://github.com/anishgowda21/cf-mcp-server.git
cd cf-mcp-server
- 安装依赖项
npm install
- 设置MCP
npx workers-mcp setup
配置
您需要在Cloudflare仪表板中设置以下环境变量(出于安全考虑建议),而不是在 wrangler.toml 文件:
OPENWEATHERMAP_API_KEY(天气数据)IPINFO_API_KEY(用于IP地理定位)GOOGLE_API_KEY(用于网络搜索)GOOGLE_CX(用于网络搜索)
为此,请执行以下操作:
- 转到Cloudflare仪表板
- 导航到工作人员和页面
- 选择您的员工
- 转到“设置”>“变量”
- 在“环境变量”下添加环境变量
备注:如果您不需要特定的服务,您可以简单地不设置其API密钥。调用时,相应的函数将返回错误,但工作进程的其余部分将继续运行。
部署
将您的员工部署到Cloudflare:
npm run deploy
与Claude一起使用
部署后,您可以将MCP服务器与Claude一起使用。要做到这一点,只需让Claude将您的worker用于各种任务:
- “了解东京的天气”
- “查找有关IP地址8.8.8.8的信息”
- “在网上搜索‘最新的人工智能发展’”
- “向发出GET请求https://example.com/api/data"
Claude将根据您的请求自动使用适当的功能。
函数参考
getWeatherData(cityName: string)
获取指定城市的当前天气数据。
getIpDetails(ipAddr: string)
检索IP地址的详细地理位置信息。使用“我”获取有关客户端IP的信息。
googleWebSearch(query: string, num?: number)
使用指定的查询执行Google搜索,并返回指定数量的结果(1-10,默认值:5)。
makeRequest(url: string, method: string, params?: object)
使用指定的方法、标头和正文数据进行自定义HTTP请求。这 params 对象可以包括:
headers:HTTP标头记录body:请求体(将自动字符串化的字符串或对象)
定制
要修改worker或添加新函数,请执行以下操作:
- 编辑
src/index.ts - 向中添加新方法
MyWorker带有JSDoc注释的类,用于记录功能 - 使用部署
npm run deploy
故障排除
- 如果遇到API响应问题,请检查是否已在Cloudflare Dashboard中设置了适当的环境变量
- 如果某个特定函数不起作用,则可能需要获取相应的API密钥
- 对于不需要的函数,您可以在中注释掉相关代码
src/index.ts