Português · English

MCP: connect your AI to Atendlly

Atendlly's MCP server is at https://atende.suporteja.com.br/mcp (Streamable HTTP, sessionless). It serves clients of protocol versions 2026-07-28 and 2025-11-25. Authentication: the Authorization: Bearer <your key> header.

First, create a key in Settings → Integrations → API keys and MCP with the "AI assistant" template. Prefer one personal key per person: it acts as you and never does more than you.

Claude (claude.ai and Claude Desktop)

  1. In Settings → Connectors, click Add custom connector.
  2. Name: Atendlly. URL: https://atende.suporteja.com.br/mcp.
  3. Authentication: No sign in. Under Request headers, add Authorization with the value Bearer atl_live_….
  4. Try: "Which conversations have been waiting for more than 30 minutes?"

On Claude Team/Enterprise plans only owners add connectors, and a shared key gives everyone that key's access: prefer one personal key per person. If the headers option is missing in your Claude account, use Claude Code or wait for the OAuth connection.

Claude Code

export ATENDLLY_API_KEY=atl_live_…
claude mcp add --transport http atendlly https://atende.suporteja.com.br/mcp --header "Authorization: Bearer $ATENDLLY_API_KEY"

Or in the project's .mcp.json (the key stays in an environment variable, never in the repository):

{ "mcpServers": { "atendlly": { "type": "http", "url": "https://atende.suporteja.com.br/mcp",
  "headers": { "Authorization": "Bearer ${ATENDLLY_API_KEY}" } } } }

Cursor

In ~/.cursor/mcp.json:

{ "mcpServers": { "atendlly": { "url": "https://atende.suporteja.com.br/mcp",
  "headers": { "Authorization": "Bearer ${env:ATENDLLY_API_KEY}" } } } }

If your Cursor version does not expand environment variables in headers, put the key itself (and do not share the file).

VS Code

In .vscode/mcp.json (VS Code asks for the key once and stores it safely):

{
  "inputs": [{ "type": "promptString", "id": "atendlly-key", "description": "Atendlly key", "password": true }],
  "servers": { "atendlly": { "type": "http", "url": "https://atende.suporteja.com.br/mcp",
    "headers": { "Authorization": "Bearer ${input:atendlly-key}" } } }
}

ChatGPT (soon)

ChatGPT only accepts OAuth connections, which are coming soon to Atendlly. For now use Claude, Claude Code, Cursor or VS Code.

Any MCP client

curl -s https://atende.suporteja.com.br/mcp -H "Authorization: Bearer $ATENDLLY_API_KEY" \
  -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" \
  -H "MCP-Protocol-Version: 2026-07-28" -H "Mcp-Method: tools/list" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}}}}'

With the official MCP Inspector:

npx @modelcontextprotocol/inspector --cli https://atende.suporteja.com.br/mcp --transport http \
  --header "Authorization: Bearer $ATENDLLY_API_KEY" --method tools/list

Tools

tools/list shows only the tools the key may use. Reads: get_account_overview, search_contacts, get_contact, list_conversations, get_conversation, get_queue_overview, get_report_summary, search_knowledge, list_pipelines, list_deals, get_deal, list_tasks, get_action_status. Actions: create_contact, update_contact, add_contact_note, update_conversation, add_private_note, send_message, create_deal, update_deal, close_deal, create_task, complete_task, suggest_faq.

send_message waits for a person's approval in Atendlly (unless an administrator turned on automatic sending for a service key). When the result says pending_approval, nothing was sent yet: check get_action_status.

Troubleshooting

Symptom Cause
401 Wrong, expired or revoked key; or the client did not send the Authorization header
403 plan_required The account's plan does not include the API (Básico)
403 ip_not_allowed The key is IP-restricted and the AI client leaves from another address
A tool is missing The key lacks that area's scope (see scopes)
Masked data The key does not have contacts:pii