Generar API key
MCP Server — Brote como tool de Claude / ChatGPT / agentes externos
Brote es un servidor MCP (Model Context Protocol — protocolo abierto de Anthropic). Cualquier cliente compatible — Claude Desktop, ChatGPT Custom Connectors, agentes propios — puede conectarse y usar las tools de Brote como si fueran nativas del modelo.
Qué puedes hacer
Sección titulada «Qué puedes hacer»Hoy Brote expone 9 tools al protocolo MCP:
| Tool | Qué hace |
|---|---|
list_conversations | Lista conversaciones del inbox con filtros (status, channel) |
get_conversation | Detalle + últimos N mensajes de una conversación |
send_message | Manda mensaje al cliente (con auto-handoff de IA) |
upsert_contact | Crea o actualiza contacto por phone/email |
assign_tag | Agrega un tag a un contacto |
change_lifecycle_stage | Cambia etapa (lead → mql → … → customer) |
build_payment_link | Genera link Mercado Pago |
quote_shipping | Cotiza envío Chilexpress o Starken |
get_inbox_metrics | KPIs del inbox últimos N días |
Próximas tools en roadmap: lookup_product (catálogo Shopify),
check_shipping_coverage, track_shipment, quote_shipping_starken,
add_internal_note, get_contact_history.
Endpoint y autenticación
Sección titulada «Endpoint y autenticación»- URL:
https://brote.ai/api/mcp - Transport: HTTP + JSON-RPC 2.0
- Auth:
Authorization: Bearer brote_live_TU_API_KEY - Protocol version:
2024-11-05
Para generar una API key:
- Ve a Settings → Integraciones → “Conecta con 6.000+ apps”.
- Click “Generar API key”. Copia el token (se muestra una sola vez).
Conectar desde Claude Desktop
Sección titulada «Conectar desde Claude Desktop»- Abre Claude Desktop → Settings → Developer → Edit Config, o edita
manualmente
~/Library/Application Support/Claude/claude_desktop_config.jsonen macOS (equivalente en Windows). - Agrega la entrada
"brote"dentro demcpServers— sin borrar las otras que ya tengas (filesystem, notebooklm, etc):
{ "mcpServers": { "brote": { "command": "npx", "args": [ "-y", "mcp-remote", "https://brote.ai/api/mcp", "--header", "Authorization: Bearer brote_live_TU_API_KEY_AQUI" ] } }}- Reinicia Claude Desktop completamente (cmd+Q + abrir de nuevo, no solo cerrar la ventana).
- En cualquier conversación, Claude va a tener acceso a las 9 tools de
Brote. Prueba pedidos como:
- “Listame mis 10 conversaciones abiertas más recientes de Brote”
- “Cambia el lifecycle de Pedro González a customer”
- “Cotiza un envío de 2kg a Providencia”
- “Genera un link de pago Mercado Pago por $25.000 con descripción ‘Sesión de fotos‘“
Cómo es el handshake (qué pasa por debajo)
Sección titulada «Cómo es el handshake (qué pasa por debajo)»┌────────────────┐ ┌────────────────┐│ Claude Desktop │ │ brote.ai ││ (stdio) │ │ /api/mcp │└───────┬────────┘ └────────┬───────┘ │ │ │ 1. spawn `npx mcp-remote https://brote.ai/...` │ │ ───────────────────────────────────────────────►│ │ │ │ 2. POST initialize │ │ ───────────────────────────────────────────────►│ │ ◄─── { protocolVersion, capabilities, ... } │ │ │ │ 3. POST notifications/initialized │ │ ───────────────────────────────────────────────►│ │ ◄─── 204 No Content │ │ │ │ 4. POST tools/list │ │ ───────────────────────────────────────────────►│ │ ◄─── { tools: [9 tool defs] } │ │ │ │ El usuario habla con Claude — Claude decide │ │ cuándo usar las tools de Brote. │ │ │ │ 5. POST tools/call (ej: list_conversations) │ │ ───────────────────────────────────────────────►│ │ ◄─── { content: [{ type: "text", text }] } │Claude lee el content.text (JSON stringificado en nuestro caso) y lo
incorpora al razonamiento para responderte.
Troubleshooting
Sección titulada «Troubleshooting»Claude Desktop dice “Server disconnected”
Sección titulada «Claude Desktop dice “Server disconnected”»- Abre los logs:
~/Library/Logs/Claude/mcp-server-brote.log(macOS). - Busca la última línea con
erroroConnection error. - Causas comunes:
| Error en log | Causa | Fix |
|---|---|---|
EACCES o npx: command not found | Node/npm no están en el PATH del proceso Claude | Asegurate que Node está instalado globalmente (brew install node) y reinicia Claude |
401 unauthorized | API key inválida o revocada | Genera una nueva en Settings → Integraciones → Desarrollador → API key |
400 Invalid JSON-RPC 2.0 envelope | Tu instalación de mcp-remote usa una versión vieja del protocolo | rm -rf ~/.npm/_npx && killall node para que descargue la última |
EAI_AGAIN o timeout | DNS o red bloquea brote.ai | Prueba curl https://brote.ai/api/mcp desde la terminal — si no responde, problema de red |
Las tools no aparecen aunque conectó
Sección titulada «Las tools no aparecen aunque conectó»Asegurate que Claude Desktop esté en una conversación nueva (no en una existente abierta antes del restart). Los MCP servers solo se cargan al abrir conversación.
Prueba pedirle explícitamente: “qué tools del MCP brote tienes disponibles?”. Debería listar las 9.
Claude usa Supabase u otro MCP en vez de Brote
Sección titulada «Claude usa Supabase u otro MCP en vez de Brote»Cuando tienes varios MCP servers configurados, Claude elige cuál usar. Si Brote no aparece como opción válida para una intención, generalmente es porque:
- La tool tiene una descripción ambigua → reportanos y la mejoramos.
- Le pediste algo demasiado genérico (“traeme mis datos”) sin mencionar Brote. Sé explícito: “de Brote, listame…”.
Quiero ver las requests en tiempo real
Sección titulada «Quiero ver las requests en tiempo real»tail -f ~/Library/Logs/Claude/mcp-server-brote.logCada Message from client muestra el JSON-RPC entrante. Cada
Connection error el saliente con código.
Conectar desde un agente propio (HTTP raw)
Sección titulada «Conectar desde un agente propio (HTTP raw)»Cualquier agente que hable JSON-RPC 2.0 puede usar Brote.
1. Initialize
Sección titulada «1. Initialize»curl -X POST https://brote.ai/api/mcp \ -H "Authorization: Bearer brote_live_TU_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {} }'Devuelve protocolVersion, serverInfo y capabilities.tools.
2. Listar tools
Sección titulada «2. Listar tools»curl -X POST https://brote.ai/api/mcp \ -H "Authorization: Bearer brote_live_TU_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 2, "method": "tools/list" }'Devuelve array con definiciones JSON Schema de cada tool.
3. Llamar a una tool
Sección titulada «3. Llamar a una tool»curl -X POST https://brote.ai/api/mcp \ -H "Authorization: Bearer brote_live_TU_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": { "name": "list_conversations", "arguments": { "status": "open", "limit": 5 } } }'El result.content[0].text trae el JSON con la respuesta.
Permisos y scopes
Sección titulada «Permisos y scopes»Por ahora las API keys de Brote tienen scope * — pueden invocar
cualquier tool sobre cualquier dato de la org. Próximamente vamos a
agregar scopes granulares (conversations:read, contacts:write, etc).
Discovery
Sección titulada «Discovery»Si necesitas verificar que el endpoint es realmente MCP sin enviar
credenciales, haz un GET:
curl https://brote.ai/api/mcpDevuelve metadata pública: nombre del servidor, versión, protocol_version, transport, métodos soportados, link a esta doc.
Posicionamiento competitivo
Sección titulada «Posicionamiento competitivo»| Plataforma | MCP Server propio |
|---|---|
| Brote | ✅ 9 tools live (2026-05-29) |
| respond.io | ✅ |
| Wati | ❌ |
| SleekFlow | ❌ |
| Manychat | ❌ |
| Hapee.ai | ❌ |
Brote y respond.io son hoy las únicas plataformas LATAM-relevantes con
MCP Server propio. La diferencia: respond.io expone tools genéricas;
Brote expone tools verticales LATAM — build_payment_link con
Mercado Pago, quote_shipping con Chilexpress/Starken, change_lifecycle_stage
nativo. Tu agente IA externo puede cobrar y despachar en CL sin que tú
escribas integraciones.