Firelinks MCP Server
Enables interaction with the Firelinks link shortening platform to create and manage short links, track click statistics, manage custom domains, and compare analytics periods through natural language.
README
Firelinks MCP Server
MCP (Model Context Protocol) server for the Firelinks platform, allowing external LLMs (Large Language Models) to interact with the Firelinks API - https://firelinks.cc/p/api
Description
This server implements the MCP protocol developed by Anthropic and provides a set of tools for working with the Firelinks platform:
- Link Management: create, retrieve, edit short links
- Statistics: get detailed click statistics, compare periods
- Domains: manage custom domains
- Servers: get list of available servers
Architecture
LLM client → HTTPS (mcp.firelinks.cc) → Node.js MCP Server → Firelinks API Backend
Requirements
- Node.js >= 20.0.0
- Docker and Docker Compose (for containerization)
- Firelinks API token
Installation
Local Development
- Install dependencies:
cd mcp-server
npm install
- Create
.envfile based on.env.example:
cp .env.example .env
- Configure environment variables in
.env:
PORT=3000
LARAVEL_API_URL=https://firelinks.cc/api
NODE_ENV=development
- Start the server:
npm start
Or for development mode with auto-reload:
npm run dev
Docker
- Build the image:
docker build -t firelinks-mcp-server .
- Run the container:
docker run -d \
-p 3000:3000 \
-e LARAVEL_API_URL=https://firelinks.cc/api \
--name firelinks-mcp-server \
firelinks-mcp-server
Docker Compose
docker-compose up -d
Usage
Endpoints
GET /health- server health checkPOST /mcp- main MCP endpoint (JSON-RPC 2.0)GET /sse- Server-Sent Events for streaming
Authentication
All requests to /mcp require an authentication token in the header:
Authorization: Bearer YOUR_API_TOKEN
You can get an API token in your Firelinks account.
Integration with LLM Clients
Claude Desktop
Add to Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Cursor
Add to Cursor configuration (mcp.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Other MCP Clients
For connecting to other MCP-compatible clients use:
- URL:
https://mcp.firelinks.cc/mcp - Transport: HTTP
- Authentication: Bearer token in Authorization header
Available Tools
Links
firelinks_create_link- create short linkfirelinks_get_link- get link informationfirelinks_list_links- list all linksfirelinks_update_link_url- update link URLfirelinks_add_reserve_url- add reserve URL
Statistics
firelinks_stat_days- statistics by daysfirelinks_stat_total- total statistics for periodfirelinks_stat_links- statistics for all linksfirelinks_stat_clicks- detailed click statisticsfirelinks_stat_compare- compare two periods
Domains
firelinks_list_domains- list domainsfirelinks_create_domain- add domain
Servers
firelinks_list_servers- list available servers
Request Examples
Initialize
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
}'
List Tools
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
}'
Create Link
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
}'
Required parameters:
url- Valid link with http or httpstype- The type of link (use "url" for web links)redirect_type- Redirect type: 0 (301), 1 (302), 2 (303), 4 (META Refresh)
Optional parameters:
link_name- Link namecode- Custom link code (must be unique)domain_id- Domain IDsub_domain- Subdomainkeywords- Keywords for searchkeywords_mode- Keyword search logic (1, 2, or 3)group_id- Link group IDoptions- Additional settings string
Get Statistics
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
}'
Project Structure
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
Troubleshooting
Authentication Error
Problem: Missing or invalid Authorization header
Solution: Make sure the request header contains a valid token:
Authorization: Bearer YOUR_API_TOKEN
Request Timeout
Problem: Requests to Laravel API timeout
Solution:
- Check Laravel API availability
- Increase timeout in
src/lib/laravel-api.js - Check network connectivity between containers
Server Won't Start
Problem: Error on startup
Solution:
- Check logs:
docker logs firelinks-mcp-server - Make sure port 3000 is not in use
- Check environment variables are correct
License
MIT
Support
For questions and support contact support@firelinks.cc
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。