Agents Studio expone un servidor MCP (Model Context Protocol) que le da a un asistente compatible —Claude, ChatGPT, Codex, Cursor— las mismas operaciones que tu equipo hace en el dashboard: crear un agente, escribirle la personalidad, armar el flujo conversacional, conectarle herramientas y bases de conocimiento, y publicarlo. Úsalo cuando quieras que un asistente opere tu workspace sin darle acceso a una terminal ni escribir integraciones contra la Public API a mano. Endpoint:Documentation Index
Fetch the complete documentation index at: https://docs.getsupervisor.ai/llms.txt Use this file to discover all available pages before exploring further.
El endpoint MCP no lleva el prefijo
/v1 que usa el resto de la Public API. Los
clientes MCP y el descubrimiento de OAuth asumen /mcp en la raíz del dominio, así que
está excluido del prefijo a propósito. Si encuentras una configuración con /v1/mcp,
está desactualizada.Authentication
Elige la opción que soporte tu cliente MCP:- Browser sign-in: configuras sólo la URL, el cliente te abre el navegador, inicias sesión y eliges el workspace.
- API key: creas una API Key del workspace en Agents Studio y la mandas como header.
workspaces_enable lee su credencial del header x-api-key, así que por browser sign-in falla siempre. Es una operación administrativa, no parte del arranque normal — ver Tools.
Header de API Key
Connect
Browser sign-in
Para clientes que soportan inicio de sesión en el navegador, basta la URL: el servidor responde el401 con la metadata de OAuth y el cliente arranca el flujo solo.
API key
Exporta tu API Key del workspace:x-api-key y no en el Bearer, la configuración es la de headers personalizados en los tres clientes. Codex no tiene flag --header, así que el suyo va en ~/.codex/config.toml:
Elegir workspace
A diferencia del resto de la Public API, el servidor MCP no exige el headerX-Workspace-Id: el workspace se elige con una herramienta, no con una cabecera.
- Con API Key no tienes que hacer nada: la llave ya identifica a su workspace.
- Con browser sign-in, las dos primeras herramientas que llamas después del handshake son
workspaces_listy luegoworkspaces_select. A partir de ahí, todas las demás operan sobre el workspace elegido.
Transportes
Scopes
La API Key necesita los scopes de las operaciones que vaya a ejecutar el asistente. Para el journey completo de creación de un agente:tools:read y tools:connections:write no son opcionales en este journey aunque no vayas a tocar herramientas: conectar una base de conocimiento se implementa por dentro como una conexión de tool, así que agent_knowledge_bases_connect lista y escribe conexiones.
Si además vas a subir archivos para crear una base de conocimiento, el presign exige dos scopes a la vez —el del destino y el del carril de subida—: knowledge-bases:write y uploads:write. Tener sólo uno devuelve 403 nombrando el que falta.
La tabla completa está en API Keys → Scopes disponibles. Emite siempre la llave con el conjunto mínimo: un scope que no aparece en esa tabla no otorga nada, porque ningún guard lo consulta.
Tools
El servidor expone 45 herramientas planas: una por operación, cada una con su propio esquema de entrada. No hay un parámetroaction que agrupe verbos.
workspaces_enable es una operación administrativa, no parte del arranque normal: al
crear un workspace queda habilitado solo. El endpoint que ejecuta
(POST /v1/workspaces/enable) exige el scope backoffice:workspaces:write —que no figura
en la tabla de scopes de las API Keys de workspace— y sólo
acepta API Key: por browser sign-in la herramienta falla antes de llamar al API. Para
elegir workspace usa workspaces_list y workspaces_select.agents.schedule_guardrails y agents.stages_guardrails). Tu cliente los descubre solo, cada uno con su propio método: resources/list, resources/templates/list y prompts/list. Los resource templates no salen en resources/list; si tu cliente sólo llama ese método, no verás blueprintStageDraft ni los demás.
Examples
Pídele a tu asistente que explore el workspace:Verificar la conexión
Si un cliente no conecta, prueba el handshake a mano. La primera llamada del protocolo esinitialize:
El handshake no termina en la respuesta de
initialize: el protocolo pide que el cliente confirme con una notificación antes de pedir nada más. Es una notificación, no una petición, así que no lleva id y el servidor responde 202 sin cuerpo:
"method": "tools/list" y "params": {}.
Nuestro servidor corre en modo stateless, así que no rechaza un
tools/list que llegue
sin esa notificación. Aun así vale la pena mandarla al depurar: los clientes MCP sí la
emiten, y probar a mano un flujo distinto del que usa tu cliente es cómo se persigue un
fallo que no existe.