Firelinks MCP 服务器
Firelinks平台的MCP(模型上下文协议)服务器,允许外部大型语言模型(LLM)与Firelinks API进行交互 - https://firelinks.cc/p/api
描述
这台服务器实现了由Anthropic开发的MCP协议,并提供了一套用于操作Firelinks平台的工具:
- 链接管理创建、检索、编辑短链接
- 统计获取详细的点击统计信息,进行时间段比较
- 领域/域名(根据上下文,"Domains" 可以翻译为“领域”或“域名”,这里提供了两种可能的翻译)管理自定义域名
- 服务器获取可用服务器列表
建筑学
LLM client → HTTPS (mcp.firelinks.cc) → Node.js MCP Server → Firelinks API Backend要求
- Node.js 版本 >= 20.0.0
- Docker 和 Docker Compose(用于容器化)
- Firelinks API令牌
安装
本地开发
- 安装依赖项:
cd mcp-server
npm install- 创造
.env基于文件的(系统/方法/程序等).env.example:
cp .env.example .env- 配置环境变量于
.env:
PORT=3000
LARAVEL_API_URL=https://firelinks.cc/api
NODE_ENV=development- 启动服务器:
npm start或者,对于具有自动重载功能的开发模式:
npm run devDocker
- 构建镜像:
docker build -t firelinks-mcp-server .- 运行容器:
docker run -d \
-p 3000:3000 \
-e LARAVEL_API_URL=https://firelinks.cc/api \
--name firelinks-mcp-server \
firelinks-mcp-serverDocker Compose
docker-compose up -d使用方法
终点(或:终点指标)
GET /health- 服务器健康检查POST /mcp- 主MCP终端(JSON-RPC 2.0)GET /sse- 用于流式传输的服务器发送事件
认证
所有请求均需提交至 /mcp 需要在头部中提供一个身份验证令牌:
Authorization: Bearer YOUR_API_TOKEN您可以在您的Firelinks账户中获取API令牌。
与大型语言模型(LLM)客户端的集成
Claude 桌面版
添加到Claude桌面配置(claude_desktop_config.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}光标
添加到光标配置中(mcp.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}其他MCP客户端
要连接到其他MCP兼容客户端,请使用:
- URL(统一资源定位符):
https://mcp.firelinks.cc/mcp - 交通HTTP
- 认证在Authorization头部中的承载令牌
可用工具
链接
firelinks_create_link- 创建短链接firelinks_get_link- 获取链接信息firelinks_list_links- 列出所有链接firelinks_update_link_url- 更新链接URLfirelinks_add_reserve_url- 添加备用URL
统计
firelinks_stat_days- 按天统计firelinks_stat_total- 该期间的总统计数字firelinks_stat_links- 所有链接的统计数据firelinks_stat_clicks- 详细的点击统计firelinks_stat_compare- 比较两个时期
域名(或领域)
firelinks_list_domains- 列出域名firelinks_create_domain- 添加域名
服务器
firelinks_list_servers- 列出可用服务器
请求示例
初始化
curl -X POST https://mcp.firelinks.cc/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "initialize",
"params": {},
"id": 1
}'列出工具
curl -X POST https://mcp.firelinks.cc/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/list",
"params": {},
"id": 1
}'创建链接
curl -X POST https://mcp.firelinks.cc/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "firelinks_create_link",
"arguments": {
"url": "https://example.com",
"type": "url",
"redirect_type": 0,
"code": "my-link"
}
},
"id": 1
}'必需参数:
url- 有效的链接,使用http或https协议type- 链接的类型(使用“url”表示网页链接)redirect_type- 重定向类型:0(301),1(302),2(303),4(META Refresh)
可选参数:
link_name- 链接名称code- 自定义链接代码(必须唯一)domain_id- 域IDsub_domain- 子域名keywords- 搜索关键词keywords_mode- 关键词搜索逻辑(1、2或3)group_id- 链接组IDoptions- 额外设置字符串
获取统计数据
curl -X POST https://mcp.firelinks.cc/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "firelinks_stat_days",
"arguments": {
"date_from": "2024-01-01",
"date_to": "2024-01-31"
}
},
"id": 1
}'项目结构
mcp-server/
├── src/
│ ├── index.js # Main Express server file
│ ├── lib/
│ │ ├── laravel-api.js # HTTP client for Laravel API
│ │ └── mcp-handler.js # MCP protocol handler
│ └── tools/
│ ├── links.js # Tools for links
│ ├── statistics.js # Tools for statistics
│ ├── domains.js # Tools for domains
│ └── servers.js # Tools for servers
├── package.json
├── Dockerfile
├── docker-compose.yml
├── .env.example
└── README.md故障排除
认证错误
问题: Missing or invalid Authorization header
解决方案确保请求头中包含一个有效的令牌:
Authorization: Bearer YOUR_API_TOKEN请求超时
问题请求Laravel API超时
解决方案:
- 检查Laravel API的可用性
- 增加超时时间
src/lib/laravel-api.js - 检查容器之间的网络连接
服务器无法启动
问题启动时出错
解决方案:
- 检查日志:
docker logs firelinks-mcp-server - 确保端口3000未被占用
- 检查环境变量是否正确
许可证
麻省理工学院(MIT)
支持
如需咨询或获取支持,请联系 support@firelinks.cc
