Manual de Integração: API REST & Servidor MCP
Conecte seus agentes autônomos de Inteligência Artificial (Cursor, Claude Desktop, Antigravity, n8n, LangChain, Flowise e bots do WhatsApp/Telegram) para cadastrar clientes, ativar licenças e sincronizar listas M3U automaticamente na nuvem.
Com a assinatura mensal de R$ 100, você recebe sua Chave de API Bearer com permissão de chamadas ilimitadas, servidor MCP dedicado e suporte prioritário.
Faça o Pix de R$ 100,00 e envie o comprovante para [email protected]. Sua chave de acesso será enviada em instantes.
O Model Context Protocol (MCP) é o protocolo padrão que permite que IAs executem ferramentas no mundo real. Com o servidor MCP do IPTV da Casa, a IA lê fotos enviadas por clientes no WhatsApp ou comandos no chat e cadastra a TV sozinha.
Configuração no Claude Desktop ou Cursor:
Adicione este bloco no seu arquivo claude_desktop_config.json:
{
"mcpServers": {
"iptvdacasa": {
"command": "node",
"args": ["c:/Users/Ton/Documents/iptvdacasa/mcp_server/index.js"],
"env": {
"IPTV_API_URL": "https://iptvdacasa.pages.dev/api/v1/ai",
"IPTV_API_KEY": "iptv_live_SEU_TOKEN_AQUI"
}
}
}
}
Ferramentas MCP Disponíveis para a IA:
| Nome da Ferramenta | Parâmetros | O que ela faz |
|---|---|---|
iptv_cadastrar_cliente |
mac, key, clientName, days, playlistUrl |
Registra a Smart TV do cliente na nuvem e concede a quantidade de dias contratada. |
iptv_adicionar_lista_m3u |
mac, playlistUrl, playlistName |
Sincroniza a URL da lista M3U para a TV do cliente instantaneamente. |
iptv_consultar_cliente |
mac |
Retorna se a TV está ativa, data de expiração e qual lista está vinculada. |
/api/v1/ possui garantia de retrocompatibilidade estrita. Campos e ações existentes nunca têm seu comportamento quebrado. Modificações incompatíveis serão publicadas sob /api/v2/, mantendo a v1 ativa por no mínimo 12 meses.
Endpoint unificado para integrações via HTTP (Python, Node.js, PHP, cURL, webhooks do n8n ou Zapier). O dono gerencia tudo pelo Painel Master do portal, e a MASTER_KEY fica reservada para automações (n8n, backup).
Exemplo 1: Cadastrar e Ativar Smart TV do Cliente
curl -X POST https://iptvdacasa.pages.dev/api/v1/ai \
-H "Authorization: Bearer iptv_live_SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"action": "register_device",
"mac": "00:1A:79:B4:C2:10",
"key": "684920",
"playlistName": "TV da Sala - Cliente Carlos",
"days": 365,
"playlistUrl": "https://meuservidor.com/get.php?username=carlos&password=123"
}'
Exemplo 2: Adicionar ou Substituir Lista M3U
curl -X POST https://iptvdacasa.pages.dev/api/v1/ai \
-H "Authorization: Bearer iptv_live_SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"action": "upload_m3u",
"mac": "00:1A:79:B4:C2:10",
"playlistName": "Lista Premium 4K",
"playlistUrl": "https://meuservidor.com/get.php?username=carlos&password=123"
}'
Códigos de Retorno HTTP:
| Status HTTP | Significado |
|---|---|
200 OK |
Ação executada com sucesso. |
400 Bad Request |
Parâmetros obrigatórios ausentes ou inválidos (MAC, chave ou URL). |
401 Unauthorized |
Token ausente ou inválido no cabeçalho Authorization. |
402 Payment Required |
Assinatura do plano de API expirada. Renove via Pix. |
403 Forbidden |
Chave de segurança da TV incorreta ou ação permitida apenas para master. |
👑 Ações Administrativas (Somente Master com X-Master-Key):
Ações restritas para o proprietário gerenciar chaves e licenças usando o header X-Master-Key: SUA_SENHA_MESTRA:
activate_license { mac, days, status, plan }— Concede ou renova licenças oficiais.create_api_key { email, days, sandbox, resellerId }— Emite chaves de produção (iptv_live_) ou testes (iptv_test_).revoke_api_key { token }— Cancela uma chave de API emitida.suspend_reseller { resellerId }— Suspende um revendedor e bloqueia todas as suas chaves.list_devices { cursor }— Lista todos os aparelhos cadastrados no ecossistema.list_audit { resellerId, limit, cursor }— Consulta logs de auditoria por 90 dias com IP e ação.run_maintenance {}— Executa varredura diária de licenças vencendo e dispara webhooks.
Receba notificações instantâneas no seu servidor, n8n ou Zapier sempre que uma lista for alterada, uma licença estiver prestes a vencer ou um aparelho voltar a conectar.
Configurando seu Webhook via API
curl -X POST https://iptvdacasa.pages.dev/api/ai \
-H "Authorization: Bearer iptv_live_SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"action": "set_webhook",
"url": "https://seu-servidor.com/webhook",
"secret": "sua_chave_secreta_opcional"
}'
Validando a Assinatura (Node.js)
const crypto = require('crypto');
function verifyWebhook(rawBody, signatureHeader, secret) {
const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
return crypto.timingSafeEqual(Buffer.from(signatureHeader), Buffer.from(expected));
}
Validando no n8n (Workflow Automatizado)
No nó Webhook do n8n, capture os headers e o body bruto. Adicione um nó Crypto (Ação: HMAC, Algoritmo: SHA256, Segredo: seu segredo) e compare o resultado com o cabeçalho X-IPTV-Signature (formato sha256=<hash>) em um nó If antes de processar os dados.