LigueLead

Send SMS, SMS Flash, and voice calls in Brazil via LigueLead API. Brazilian CPaaS with BRL pricing and PIX payments.

đŸ“± LigueLead MCP Server

MCP Server for sending SMS, SMS Flash, and voice calls in Brazil via the LigueLead API. Enable Claude, Cursor, Windsurf, and any MCP-compatible AI agent to send real communications — no code, no complex setup.

đŸ‡§đŸ‡· Brazilian CPaaS · BRL pricing · PIX payments · PT-BR support

npm version License: MIT


Available tools

ToolDescription
send_smsSend SMS or SMS Flash campaign to Brazilian phone numbers
list_voice_uploadsList all uploaded voice audio files
get_voice_uploadGet details of a specific voice upload
upload_voice_audioUpload MP3/WAV audio for voice campaigns
send_voice_messageSend a voice campaign to a list of phones

Quick start

Option 1: npx (recommended)

No installation needed — just add to your MCP client config:

{
  "mcpServers": {
    "liguelead": {
      "command": "npx",
      "args": ["-y", "@liguelead/mcp-server"],
      "env": {
        "LIGUELEAD_API_TOKEN": "your-token",
        "LIGUELEAD_APP_ID": "your-app-id",
        "TRANSPORT": "stdio"
      }
    }
  }
}

Option 2: Clone & build

git clone https://github.com/liguelead/mcp.git
cd mcp
npm install
cp .env.example .env  # Edit with your credentials
npm run build
npm start

The server starts at http://localhost:3000 by default.

Getting your credentials

  1. Go to areadocliente.liguelead.app.br
  2. Navigate to IntegraçÔes → API Token
  3. Create an App and copy the API Token and App ID

Transports

TransportUse caseEnv var
Streamable HTTP (default)Remote server, any MCP clientTRANSPORT=http
stdioLocal — Claude Desktop / Claude Code / CursorTRANSPORT=stdio

Client configuration

Claude Desktop (stdio)

Edit claude_desktop_config.json:

{
  "mcpServers": {
    "liguelead": {
      "command": "npx",
      "args": ["-y", "@liguelead/mcp-server"],
      "env": {
        "LIGUELEAD_API_TOKEN": "your-token",
        "LIGUELEAD_APP_ID": "your-app-id",
        "TRANSPORT": "stdio"
      }
    }
  }
}

Claude Code

claude mcp add -s user liguelead \
  -e LIGUELEAD_API_TOKEN=your-token \
  -e LIGUELEAD_APP_ID=your-app-id \
  -e TRANSPORT=stdio \
  -- npx -y @liguelead/mcp-server

Cursor / Windsurf

Add to your MCP settings with the same configuration as Claude Desktop above.

Remote HTTP server

Any MCP client that supports Streamable HTTP can connect via:

POST https://your-server.com/mcp

Credentials stay on the server — the client doesn't need them.

mcp-remote bridge

For clients that don't support HTTP natively (e.g., Claude Desktop connecting to a remote server):

{
  "mcpServers": {
    "liguelead": {
      "command": "npx",
      "args": ["mcp-remote", "https://your-server.com/mcp"]
    }
  }
}

Deploy

Docker

docker build -t liguelead-mcp .
docker run -d -p 3000:3000 \
  -e LIGUELEAD_API_TOKEN=your-token \
  -e LIGUELEAD_APP_ID=your-app-id \
  liguelead-mcp

Railway / Render

  1. Connect the Git repository
  2. Set environment variables: LIGUELEAD_API_TOKEN, LIGUELEAD_APP_ID
  3. Build command: npm install && npm run build
  4. Start command: npm start

Credential security

ScenarioWhere credentials live
stdio (local)Environment variables in client config
HTTP (remote)Environment variables on the server
Docker-e flags or orchestrator secrets
CI/CDProvider secrets (GitHub Actions, etc.)

⚠ Credentials are NEVER committed to code. The .env file is in .gitignore.

Webhook

Setup

  1. Go to areadocliente.liguelead.app.br
  2. Navigate to IntegraçÔes → API Token → Webhook URL
  3. Enter your public HTTPS endpoint URL
  4. Save

A single URL receives notifications for all channels (SMS, SMS Flash, Voice).

Query received webhooks

curl http://localhost:3000/webhooks

Returns:

{
  "total": 42,
  "webhooks": [...]
}

⚠ CRITICAL: LigueLead does NOT retry failed webhooks. If your endpoint is down, the webhook is lost permanently.

Phone number format

Brazilian phone numbers are accepted in three formats:

FormatExampleDigits
National (recommended)1199999999911
International+551199999999914 chars
DDI without +551199999999913

SMS limits

PartCharactersCredits
1st partup to 1601 credit
Additional partsevery 152 chars1 credit each
Maximum total1,600 chars~11 credits

đŸš« SMS Flash does NOT allow URLs in message content.

Voice call limits

  • Supported formats: MP3 and WAV (no AAC/M4A)
  • Max file size: 50 MB (recommended: 5–10 MB)
  • Billing: Up to 30s = 1 credit; over 30s = 2 credits
  • Dialing window: 08:00–21:44 (America/Sao_Paulo). Requests after 21:45 are queued until 08:00.

Rate limits

LimitValue
Requests per minute600,000
Simultaneous requests10,000
Recipients per request10,000

Project structure

liguelead-mcp/
├── src/
│   ├── index.ts          # Entry point — HTTP or stdio
│   ├── config.ts          # Env var validation (Zod) + .env loader
│   ├── lib/
│   │   ├── api-client.ts  # HTTP client for LigueLead API
│   │   ├── validators.ts  # Brazilian phone schemas (Zod)
│   │   └── webhook.ts     # Webhook handler + GET /webhooks
│   └── tools/
│       ├── sms.ts         # Tool: send_sms
│       └── voice.ts       # Tools: voice (list/get/upload/send)
├── skill/                  # Claude Code Skill
│   └── SKILL.md
├── .env.example
├── Dockerfile
├── LICENSE
├── package.json
├── server.json
├── glama.json
└── README.md

Troubleshooting

ProblemSolution
LIGUELEAD_API_TOKEN is requiredSet up .env or environment variables
401 UnauthorizedCheck api-token and app-id in LigueLead panel
429 Too Many RequestsRate limit exceeded — wait for reset
Upload rejectedOnly MP3 and WAV accepted (no AAC/M4A)
Stale buildrm -rf dist && npm run build

License

MIT



đŸ‡§đŸ‡· Documentação em PortuguĂȘs

LigueLead MCP Server

MCP Server para a API da LigueLead — SMS, SMS Flash e Campanhas de Voz no Brasil.

Permite que Claude, Cursor, Windsurf e qualquer agente de IA compatĂ­vel com MCP enviem comunicaçÔes reais — sem cĂłdigo, sem setup complexo.

CPaaS Brasileiro · Preço em BRL · Pagamento via PIX · Suporte em PT-BR

InĂ­cio rĂĄpido

Opção 1: npx (recomendado)

Sem instalação — basta adicionar à config do seu cliente MCP:

{
  "mcpServers": {
    "liguelead": {
      "command": "npx",
      "args": ["-y", "@liguelead/mcp-server"],
      "env": {
        "LIGUELEAD_API_TOKEN": "seu-token",
        "LIGUELEAD_APP_ID": "seu-app-id",
        "TRANSPORT": "stdio"
      }
    }
  }
}

Opção 2: Clone & build

git clone https://github.com/liguelead/mcp.git
cd mcp
npm install
cp .env.example .env  # Edite com suas credenciais
npm run build
npm start

Obtendo suas credenciais

  1. Acesse areadocliente.liguelead.app.br
  2. VĂĄ em IntegraçÔes → API Token
  3. Crie um App e copie o API Token e App ID

Tools disponĂ­veis

ToolDescrição
send_smsEnvia campanha de SMS ou SMS Flash para nĂșmeros brasileiros
list_voice_uploadsLista todos os ĂĄudios enviados
get_voice_uploadDetalhes de um ĂĄudio especĂ­fico
upload_voice_audioUpload de ĂĄudio MP3/WAV para campanhas de voz
send_voice_messageDispara campanha de voz para lista de telefones

Configuração por cliente MCP

Claude Desktop (stdio)

Edite claude_desktop_config.json:

{
  "mcpServers": {
    "liguelead": {
      "command": "npx",
      "args": ["-y", "@liguelead/mcp-server"],
      "env": {
        "LIGUELEAD_API_TOKEN": "seu-token",
        "LIGUELEAD_APP_ID": "seu-app-id",
        "TRANSPORT": "stdio"
      }
    }
  }
}

Claude Code

claude mcp add -s user liguelead \
  -e LIGUELEAD_API_TOKEN=seu-token \
  -e LIGUELEAD_APP_ID=seu-app-id \
  -e TRANSPORT=stdio \
  -- npx -y @liguelead/mcp-server

Formato de nĂșmeros de telefone

FormatoExemploDĂ­gitos
Nacional (recomendado)1199999999911
Internacional+551199999999914 chars
DDI sem +551199999999913

Limites de SMS

ParteCaracteresCréditos
1ÂȘ parteatĂ© 1601 crĂ©dito
Partes adicionaisa cada 152 chars1 crédito cada
Måximo total1.600 chars~11 créditos

đŸš« SMS Flash NÃO permite URLs no conteĂșdo da mensagem.

Limites de voz

  • Formatos suportados: MP3 e WAV (AAC e M4A nĂŁo sĂŁo suportados)
  • Tamanho mĂĄximo: 50 MB (recomendado: 5–10 MB)
  • Cobrança: AtĂ© 30s = 1 crĂ©dito; acima de 30s = 2 crĂ©ditos
  • Janela de discagem: 08h00–21h44 (America/Sao_Paulo). Requests apĂłs 21h45 ficam na fila atĂ© as 08h00.

Webhook

  1. Acesse areadocliente.liguelead.app.br
  2. VĂĄ em IntegraçÔes → API Token → Webhook URL
  3. Insira a URL HTTPS do seu endpoint
  4. Salve

Uma Ășnica URL recebe notificaçÔes de todos os canais (SMS, SMS Flash, Voz).

⚠ CRÍTICO: LigueLead NÃO faz retry. Se o endpoint falhar, o webhook Ă© perdido permanentemente.

Related Servers

NotebookLM Web Importer

Import web pages and YouTube videos to NotebookLM with one click. Trusted by 200,000+ users.

Install Chrome Extension