En esta sección
Model Context Protocol

Conecta tus herramientas agénticas a Meteor

Cualquier herramienta que hable MCP — Claude Code, Claude Desktop, Cursor, Windsurf, Cline, Codex o tu propio agente — se conecta directo a Meteor y opera tu workspace: ejecuta Mets, gestiona el CRM, dispara tareas y más. La misma superficie de la API, expuesta como herramientas.

Disponible

El servidor MCP está vivo en https://api.met.meteor.com.co/api/v1/mcp. Conéctalo con tu API key met_ (scope mcp:use) desde cualquiera de los clientes de abajo. Novedades en el changelog.

Introducción

El Model Context Protocol es un estándar abierto para que los agentes de IA descubran y usen herramientas externas de forma segura. El servidor MCP de Meteor es remoto y se autentica con tu API key met_ — la misma que usas en la API REST. Cualquier cliente MCP puede conectarse; abajo está la config de los más comunes y de un agente propio.

El SDK y la API REST son para cuando tú escribes el código. El servidor MCP es para cuando un agente opera Meteor por su cuenta.

Conectar un cliente

Todos los clientes apuntan al mismo endpoint remoto y pasan tu key en el header Authorization. Usa una key de test (met_test_) mientras pruebas.

Claude Code

Un comando desde la terminal:

claude mcp add --transport http meteor \
  https://api.met.meteor.com.co/api/v1/mcp \
  --header "Authorization: Bearer met_live_tu_key"

Claude Desktop

En claude_desktop_config.json:

{
  "mcpServers": {
    "meteor": {
      "url": "https://api.met.meteor.com.co/api/v1/mcp",
      "headers": { "Authorization": "Bearer met_live_tu_key" }
    }
  }
}

Cursor

En .cursor/mcp.json (del proyecto) o el global:

{
  "mcpServers": {
    "meteor": {
      "url": "https://api.met.meteor.com.co/api/v1/mcp",
      "headers": { "Authorization": "Bearer met_live_tu_key" }
    }
  }
}

Windsurf

En ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "meteor": {
      "serverUrl": "https://api.met.meteor.com.co/api/v1/mcp",
      "headers": { "Authorization": "Bearer met_live_tu_key" }
    }
  }
}

Cline (VS Code)

Desde el panel de MCP de Cline, agrega un servidor remoto con la URL y el header de autenticación — misma forma que arriba.

Codex (OpenAI)

Codex conecta servidores MCP por stdio, así que mcp-remote puentea el servidor remoto de Meteor. En ~/.codex/config.toml:

[mcp_servers.meteor]
command = "npx"
args = ["-y", "mcp-remote", "https://api.met.meteor.com.co/api/v1/mcp", "--header", "Authorization: Bearer met_live_tu_key"]

Otros clientes MCP

Cualquier cliente compatible con MCP (transport HTTP/SSE) sirve. La receta es siempre la misma: URL del servidor + header Authorization: Bearer met_….

Tu propio agente

Si construyes tu propio agente, conéctalo con un cliente MCP programático (por ejemplo, @modelcontextprotocol/sdk) y dale a tu modelo las tools de Meteor:

import { Client } from '@modelcontextprotocol/sdk/client';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp';

const client = new Client({ name: 'mi-agente', version: '1.0.0' });
await client.connect(new StreamableHTTPClientTransport(
  new URL('https://api.met.meteor.com.co/api/v1/mcp'),
  { requestInit: { headers: { Authorization: `Bearer ${process.env.MET_API_KEY}` } } },
));

const { tools } = await client.listTools();   // las tools de Meteor, según tus scopes
// pasas `tools` a tu modelo y ejecutas client.callTool(...) cuando el modelo lo pida

Así tu agente descubre y ejecuta las capacidades de Meteor sin que tú cablees cada endpoint a mano.

Descubrimiento

Si tu cliente resuelve servidores por dominio en vez de por URL fija, el descriptor está publicado:

curl https://developers.meteor.com.co/.well-known/mcp.json

Trae el endpoint, el transporte, cómo autenticar y la lista de tools. Se genera del catálogo real del servidor en cada build, así que no puede quedar desactualizado respecto de lo que el servidor expone de verdad.

Junto a él va server.json, el descriptor con el formato de los registros de MCP. Es el que sirve para que un agente encuentre Meteor sin conocer este dominio.

Capacidades

El catálogo son 34 tools sobre 15 dominios, y se filtra por los scopes de tu key: si la key no tiene el scope, la tool no aparece. Esta tabla se genera del catálogo real del servidor.

DominioToolsScopes
Tareasmet_list_tasks Listar tareas
met_get_task Ver una tarea
met_create_task Crear tarea
met_execute_task Ejecutar una tarea
met_get_task_execution Ver una ejecución de tarea
met_set_task_status Cambiar el estado de una tarea
tasks:read · tasks:write
Ítemsmet_list_items Listar items de una colección
met_get_item Ver un item
met_create_item Crear un item
met_update_item Actualizar un item
items:read · items:write
Recordatoriosmet_list_reminders Listar recordatorios
met_create_reminder Agendar un recordatorio a un contacto
met_update_reminder Reagendar o editar un recordatorio
met_cancel_reminder Cancelar un recordatorio
reminders:read · reminders:write
Runsmet_run_agent Ejecutar un Met
met_get_run Ver un Run
met_list_runs Historial de Runs
runs:execute · runs:read
Automatizacionesmet_list_flows Listar flujos
met_run_flow Ejecutar un flujo
met_get_flow_run Ver la ejecución de un flujo
automations:read · automations:execute
Plantillasmet_list_snapshots Catálogo de plantillas
met_get_snapshot Ficha de una plantilla
met_install_snapshot Instalar una plantilla
snapshots:read · snapshots:install
Contactosmet_list_contacts Listar contactos
met_create_contact Crear contacto
contacts:read · contacts:write
Handoffmet_set_autopilot Pasar la conversación a un humano (o devolverla)
met_pause_autopilot Pausar el autopiloto por unos minutos
handoff:manage
Agentsmet_list_agents Listar los Mets del workspaceagents:read
Coleccionesmet_list_collections Listar coleccionescollections:read
Variablesmet_list_variables Listar variables del workspacevariables:read
Skillsmet_list_skills Listar habilidades del workspaceskills:read
Canalesmet_send_message Enviar un mensaje a un contactochannels:send
Conversacionesmet_get_messages Leer la conversación con un contactoconversations:read
Archivosmet_list_assets Buscar archivos del workspacefiles:read

Es un subconjunto de la API REST, no su equivalente: cada tool llama al mismo service y declara el mismo scope que su endpoint, pero no todos los endpoints tienen tool. Lo que no esté aquí se hace por REST o por el SDK.

Si tu key es de partner

Una key de partner habla con otro endpoint, en el host de la API de Partners:

https://api.partners.meteor.com.co/mcp

Son dos servidores distintos y con qué key te autenticas decide cuál te sirve: una key de workspace habla con el de arriba, una de partner con este. Un workspace y una cartera de clientes no comparten permisos, así que tampoco comparten catálogo — y una key de workspace apuntando aquí recibe un catálogo vacío, no un error.

Son 13 tools, todas con el prefijo met_partner_. El partner sobre el que operan sale de tu key, nunca de un argumento.

DominioToolsScopes
leadsmet_partner_list_leads Listar oportunidades
met_partner_get_lead Ver una oportunidad
met_partner_create_lead Crear una oportunidad
met_partner_list_lead_comments Leer el hilo de una oportunidad
met_partner_comment_lead Escribir en el hilo de una oportunidad
partner:leads:read · partner:leads:write
supportmet_partner_list_tickets Listar tickets
met_partner_get_ticket Ver un ticket
met_partner_reply_ticket Responder un ticket
partner:support:read · partner:support:write
projectsmet_partner_list_projects Listar proyectos
met_partner_list_project_tasks Tareas de un proyecto
partner:projects:read
clientsmet_partner_list_clients Listar clientes atribuidospartner:clients:read
commissionsmet_partner_list_commissions Listar comisionespartner:commissions:read
payoutsmet_partner_list_payouts Listar liquidacionespartner:payouts:read

Seguridad


¿Prefieres escribir el código tú? Empieza por las Guías y el quickstart del SDK.