visto azuldocs
← Site Entrar
Documentação / Servidor MCP

Servidor MCP

O MCP (Model Context Protocol) virou o padrão universal que conecta agentes de IA a ferramentas externas. Com o servidor MCP da Visto Azul, o seu assistente passa a operar o WhatsApp em linguagem natural: "o que o cliente respondeu?", "manda um PIX de R$97 pro João", "dispara a campanha pra essa lista".

duas formas de conectar. A remota é a mais fácil: cola uma URL e faz login. A local roda na sua máquina via npx.

Opção 1 — Conexão remota (1 clique)

Não instala nada e não precisa colar API key em arquivo nenhum. Você cola a URL abaixo no seu assistente e faz login com a sua conta Visto Azul (o mesmo e-mail e senha do painel). Pronto: as ferramentas aparecem nativas.

https://mcp.vistoazul.com.br/mcp

A autorização é por OAuth: o assistente abre a tela de login da Visto Azul, você entra, e ele recebe um acesso que pode revogar quando quiser. A sua senha nunca fica com o assistente.

Claude Code

claude mcp add --transport http vistoazul https://mcp.vistoazul.com.br/mcp

Na primeira vez, o Claude abre o navegador pra você fazer login. Depois é só conversar.

Claude Desktop / ChatGPT

Em Settings → Connectors → Add custom connector (ChatGPT: Configurações → Conectores), cole a URL https://mcp.vistoazul.com.br/mcp e conclua o login que abrir.

Cursor / Windsurf / VS Code

No mcp.json do cliente, aponte para a URL remota (sem command/env):

{
  "mcpServers": {
    "vistoazul": { "url": "https://mcp.vistoazul.com.br/mcp" }
  }
}
Requisito: a conexão remota funciona nos clientes que suportam MCP remoto (HTTP) com OAuth — Claude (Desktop e Code), ChatGPT, Cursor, Windsurf, VS Code, entre outros. Em clientes que só suportam MCP local, use a Opção 2 abaixo.

Opção 2 — Local (via npx)

Roda o servidor na sua máquina usando a sua API key. Bom para quem prefere manter tudo local ou usar um cliente sem suporte a MCP remoto.

Pacote: npm vistoazul-mcp · GitHub. Roda via npx, sem instalar nada manualmente.

Pré-requisito: uma API key — crie a conta em dashboard.vistoazul.com.br, conecte seu número e copie a key em Instâncias.

Claude Code (local)

Um comando no terminal:

claude mcp add vistoazul -e VISTOAZUL_API_KEY=SUA_API_KEY -- npx -y vistoazul-mcp

Claude Desktop (local)

Edite o claude_desktop_config.json (em Settings → Developer → Edit Config) e adicione:

{
  "mcpServers": {
    "vistoazul": {
      "command": "npx",
      "args": ["-y", "vistoazul-mcp"],
      "env": { "VISTOAZUL_API_KEY": "SUA_API_KEY" }
    }
  }
}

Cursor (local)

Crie ou edite ~/.cursor/mcp.json (ou .cursor/mcp.json no projeto) com o mesmo formato:

{
  "mcpServers": {
    "vistoazul": {
      "command": "npx",
      "args": ["-y", "vistoazul-mcp"],
      "env": { "VISTOAZUL_API_KEY": "SUA_API_KEY" }
    }
  }
}

Windsurf, VS Code, Cline, Zed e outros (local)

Todos esses clientes usam o mesmo formato mcpServers mostrado acima — muda só onde fica o arquivo de config:

ClienteOnde configurar
Windsurf~/.codeium/windsurf/mcp_config.json
VS Code (Copilot).vscode/mcp.json no projeto, ou Settings → MCP
Clinepainel de MCP Servers da extensão
Zedsettings.jsoncontext_servers
Goosegoose configure → Add Extension → Command
ChatGPT / Gemini / Copilotconectores/MCP nas configurações do app

O comando é sempre npx -y vistoazul-mcp com a variável VISTOAZUL_API_KEY.

Ferramentas disponíveis

A conexão remota expõe as ferramentas abaixo. O seu assistente escolhe qual usar conforme você pede em linguagem natural.

GrupoFerramentas
Númeroslist_instances · connect_number (cria e devolve QR) · instance_status
Conversaslist_chats (conversas recentes) · read_messages (lê o que chegou) · read_media (transcreve áudio recebido) · send_message · send_media (imagem/vídeo/doc/áudio/nota de voz) · send_menu (enquete/botões/lista) · send_typing · react_message · mark_read · edit_message · delete_message
Agendasend_event (convite de calendário: .ics + link do Google Agenda)
Cobrançasend_pix (cobrança PIX na conversa)
Anti-bancheck_numbers (valida quem tem WhatsApp antes de disparar)
Campanhascreate_campaign (massa, anti-ban) · list_campaigns · campaign_status · pause_campaign · resume_campaign · cancel_campaign
CRM / Funillist_contacts · add_contact · move_contact (etapa do kanban)
Gruposcreate_group · group_info (participantes + link de convite)
Atendimentoconnect_chatwoot (liga seu Chatwoot pra ler e responder por lá)
Modelos / Catálogolist_templates · create_template · list_products
Contaaccount_status (plano, assinatura, limite de números)
Leitura ao vivo, sem armazenar: list_chats e read_messages leem direto do WhatsApp na hora em que você pede. Nada das suas conversas fica guardado nos nossos servidores.

Configuração

VariávelObrigatóriaPadrão
VISTOAZUL_API_KEYsim
VISTOAZUL_BASE_URLnãohttps://dashboard.vistoazul.com.br/api/v1
Segurança: a API key fica só no seu ambiente (variável env do config), nunca no código. Cada key é por conta e dá acesso às instâncias dela.

Perguntas frequentes

Como conectar o WhatsApp ao Claude?

Do jeito mais fácil, pela conexão remota: cole a URL https://mcp.vistoazul.com.br/mcp no seu assistente e faça login com a sua conta Visto Azul. No Claude Code: claude mcp add --transport http vistoazul https://mcp.vistoazul.com.br/mcp. A partir daí o Claude lê as conversas, responde, cobra PIX e dispara campanhas por conversa.

Qual a diferença entre a conexão remota e a local?

A remota é hospedada por nós: você cola uma URL e faz login (OAuth), sem instalar nada nem colar API key em arquivo. A local roda na sua máquina via npx usando a sua API key. Ambas dão as mesmas capacidades; a remota é mais simples para quem não é dev.

Funciona no Cursor, ChatGPT e Claude Desktop?

Sim. Na conexão remota, cole a URL nos conectores do app. Na local, use o bloco mcpServers no config do cliente.

Preciso saber programar?

Não. Na conexão remota é só colar a URL e fazer login. Na local, um comando ou colar um JSON.

Vocês guardam minhas conversas?

Não. As ferramentas de leitura (list_chats, read_messages) consultam o WhatsApp ao vivo, na hora do pedido. Nada das suas conversas é armazenado nos nossos servidores.