云火mcp go
用于Cloudflare API的MCP(模型上下文协议)服务器,用Go编写。
先决条件
- 转到1.23+
- Cloudflare API代币
设置
go build -o cloudflare-mcp-go .用法
设置 CLOUDFLARE_API_TOKEN 环境变量并运行服务器。
export CLOUDFLARE_API_TOKEN="your-api-token"
./cloudflare-mcp-go服务器通过stdio传输进行通信,可以从任何MCP客户端连接到。
可用工具
| 工具 | 说明 |
|---|---|
list_zones | 列出Cloudflare帐户中的区域 |
get_zone | 获取特定区域的详细信息 |
list_dns_records | 列出区域的DNS记录 |
list_accounts | 列出Cloudflare帐户 |
list_kv_namespaces | 列出Workers KV命名空间 |
list_ip_access_rules | 列出区域的IP访问规则 |
list_waf_managed_rulesets | 获取WAF管理的规则集配置 |
query_security_events | 通过GraphQL Analytics API查询安全事件(不带Bot Management的区域自动回调) |
MCP客户端配置
克劳德代码
直接从存储库安装(无需手动下载):
claude mcp add cloudflare -- go run github.com/M-Yamashita01/cloudflare-mcp-go@v0.1.1或者,如果您在本地克隆了存储库:
claude mcp add cloudflare -- go run .或者手动添加到您的MCP配置中(例如。, ~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"cloudflare": {
"command": "/path/to/cloudflare-mcp-go",
"env": {
"CLOUDFLARE_API_TOKEN": "your-api-token"
}
}
}
}克劳德桌面
添加 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"cloudflare": {
"command": "/path/to/cloudflare-mcp-go",
"env": {
"CLOUDFLARE_API_TOKEN": "your-api-token"
}
}
}
}其他MCP客户端
任何兼容MCP的客户端都可以使用相同的配置模式通过stdio传输进行连接。
项目结构
main.go # Entry point
internal/
cfapi/ # Shared Cloudflare API client
tool/
zone/ # Zone management tools
dns/ # DNS record tools
account/ # Account management tools
kv/ # Workers KV tools
security/ # Firewall & WAF tools
doc/
architecture.md # Architecture documentation看 doc/architecture.md 详细的设计文档。
