Autenticación
Envía una clave de API como token de portador. La clave debe tener el permiso mcp.manage; una clave que no lo tenga se rechazará con un código 403, no 404.
Donde va el ID de tu organización
Este endpoint toma org_id como un campo en el cuerpo JSON.
El id de tu organización se encuentra en la pantalla de claves de API en tu panel de control, junto a la propia clave. Es el mismo id en cada llamada que realices.
Pruébalo
Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.
curl -X POST https://api.zinndigital.com/v1/mcp/connections \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "name": <string>, "scopes": <string[]> }'¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API
Detalles
Mints a per-tool MCP connection and returns the full `zmcp_…` token **once** (only its hash is stored) plus a paste-ready client config snippet. The requested `scopes` must be permissions the caller already holds in the target org — an unheld scope is a `403` (a connection can never out-scope its creator), an unknown one a `422`. An optional spend cap bounds AI-triggered paid actions. Requires `mcp.manage`.
Cuerpo de la solicitud
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
name | string | Sí | — |
client | McpClient | No | The AI client a connection is for (informational). |
scopes | string[] | Sí | RBAC permission keys to grant the token. Each must be a permission the caller holds in the target org (a connection can never out-scope its creator); an unheld scope is a `403`,… |
sandbox | boolean | No | — |
org_id | Uuid | null | No | The org the connection belongs to. Defaults to the caller's sole managed org. |
spend_cap_minor | integer | null | No | Optional per-window paid-action budget (integer minor units). Null = no cap. |
spend_currency | CurrencyCode | No | ISO 4217 currency code (money is minor units + this code — CLAUDE.md §2.8). |
spend_window_seconds | integer | No | — |
Respuesta
| Nombre | Tipo | Obligatorio | ¿Qué es esto? |
|---|---|---|---|
id | Uuid | Sí | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
name | string | Sí | — |
client | McpClient | Sí | The AI client a connection is for (informational). |
prefix | string | Sí | The token's public lookup prefix (not a secret). |
scopes | string[] | Sí | The RBAC permission keys this connection's token may exercise. |
sandbox | boolean | Sí | — |
spend_cap_minor | integer | null | No | Optional per-window budget (integer minor units, CLAUDE.md §2.8) for AI-triggered paid actions. Null = no cap. |
spend_currency | CurrencyCode | No | ISO 4217 currency code (money is minor units + this code — CLAUDE.md §2.8). |
spend_window_seconds | integer | Sí | The rolling window the spend cap applies over. |
last_used_at | string | null | No | — |
revoked_at | string | null | No | — |
created_at | string | Sí | — |
token | string | Sí | The full `zmcp_…` token, shown exactly once. |
endpoint | string | Sí | The MCP protocol endpoint URL to configure in the AI client. |
config | object | Sí | A paste-ready MCP client config snippet embedding the endpoint + token. |
Errores que este endpoint puede devolver
401 · 403 · 422 · 429