Firelinks.cc MCP
Crie e gerencie links curtos para rastrear e distribuir tráfego.
Documentação
Firelinks MCP Server
Servidor MCP (Model Context Protocol) para a plataforma Firelinks, permitindo que LLMs externos (Large Language Models) interajam com a API Firelinks - https://firelinks.cc/p/api
Descrição
Este servidor implementa o protocolo MCP desenvolvido pela Anthropic e fornece um conjunto de ferramentas para trabalhar com a plataforma Firelinks:
- Gerenciamento de Links: criar, recuperar, editar links curtos
- Estatísticas: obter estatísticas detalhadas de cliques, comparar períodos
- Domínios: gerenciar domínios personalizados
- Servidores: obter lista de servidores disponíveis
Arquitetura
LLM client → HTTPS (mcp.firelinks.cc) → Node.js MCP Server → Firelinks API Backend
Requisitos
- Node.js >= 20.0.0
- Docker e Docker Compose (para conteinerização)
- Token da API Firelinks
Instalação
Desenvolvimento Local
- Instale as dependências:
cd mcp-server
npm install
- Crie o arquivo
.envcom base no.env.example:
cp .env.example .env
- Configure as variáveis de ambiente no
.env:
PORT=3000
LARAVEL_API_URL=https://firelinks.cc/api
NODE_ENV=development
- Inicie o servidor:
npm start
Ou, para modo de desenvolvimento com recarga automática:
npm run dev
Docker
- Construa a imagem:
docker build -t firelinks-mcp-server .
- Execute o contêiner:
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
Uso
Endpoints
GET /health- verificação de saúde do servidorPOST /mcp- endpoint MCP principal (JSON-RPC 2.0)GET /sse- Server-Sent Events para streaming
Autenticação
Todas as solicitações ao /mcp exigem um token de autenticação no cabeçalho:
Authorization: Bearer YOUR_API_TOKEN
Você pode obter um token de API na sua conta Firelinks.
Integração com Clientes LLM
Claude Desktop
Adicione à configuração do Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Cursor
Adicione à configuração do Cursor (mcp.json):
{
"mcpServers": {
"firelinks": {
"url": "https://mcp.firelinks.cc/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Outros Clientes MCP
Para conectar a outros clientes compatíveis com MCP, use:
- URL:
https://mcp.firelinks.cc/mcp - Transporte: HTTP
- Autenticação: token Bearer no cabeçalho Authorization
Ferramentas Disponíveis
Links
firelinks_create_link- criar link curtofirelinks_get_link- obter informações do linkfirelinks_list_links- listar todos os linksfirelinks_update_link_url- atualizar URL do linkfirelinks_add_reserve_url- adicionar URL reserva
Estatísticas
firelinks_stat_days- estatísticas por diasfirelinks_stat_total- estatísticas totais para o períodofirelinks_stat_links- estatísticas para todos os linksfirelinks_stat_clicks- estatísticas detalhadas de cliquesfirelinks_stat_compare- comparar dois períodos
Domínios
firelinks_list_domains- listar domíniosfirelinks_create_domain- adicionar domínio
Servidores
firelinks_list_servers- listar servidores disponíveis
Exemplos de Solicitações
Inicializar
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
}'
Listar Ferramentas
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
}'
Criar 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
}'
Parâmetros obrigatórios:
url- Link válido com http ou httpstype- O tipo de link (use "url" para links da web)redirect_type- Tipo de redirecionamento: 0 (301), 1 (302), 2 (303), 4 (META Refresh)
Parâmetros opcionais:
link_name- Nome do linkcode- Código personalizado do link (deve ser único)domain_id- ID do domíniosub_domain- Subdomíniokeywords- Palavras-chave para buscakeywords_mode- Lógica de busca por palavras-chave (1, 2 ou 3)group_id- ID do grupo de linksoptions- String de configurações adicionais
Obter Estatísticas
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
}'
Estrutura do Projeto
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
Solução de Problemas
Erro de Autenticação
Problema: Missing or invalid Authorization header
Solução: Certifique-se de que o cabeçalho da solicitação contenha um token válido:
Authorization: Bearer YOUR_API_TOKEN
Tempo Limite da Solicitação
Problema: Solicitações à API Laravel excedem o tempo limite
Solução:
- Verifique a disponibilidade da API Laravel
- Aumente o tempo limite em
src/lib/laravel-api.js - Verifique a conectividade de rede entre os contêineres
O Servidor Não Inicia
Problema: Erro na inicialização
Solução:
- Verifique os logs:
docker logs firelinks-mcp-server - Certifique-se de que a porta 3000 não está em uso
- Verifique se as variáveis de ambiente estão corretas
Licença
MIT
Suporte
Para dúvidas e suporte, entre em contato: support@firelinks.cc