# MCP

> Novedades del servidor MCP y sus herramientas, de la más reciente a la más antigua.

## 2026-10-25 · `1.0.0`

**servidor MCP 1.0.0.** Versión 1.0.0 del servidor MCP de Filmo.

### Añadido

- `retryAfter` en el problema `429 rate_limited` (REST y MCP): segundos que debes esperar antes de reintentar, con el mismo valor que la cabecera `Retry-After`; `detail` también lo indica.
- Los resultados de las herramientas MCP incluyen en `meta` lo que REST envía como cabeceras: `meta.idempotencyKey` (la clave con la que se ejecutó la llamada, la tuya o la generada por el servidor), `meta.idempotentReplay` (`true` cuando el resultado es la respuesta almacenada de una llamada anterior con la misma clave) y `meta.rateLimit` (`limit`, `remaining`, `reset`).
- MCP: `_meta["anthropic/requiresUserInteraction"]: true` en las herramientas que no se pueden deshacer (eliminaciones, cancelaciones, anulaciones, validaciones de documentos fiscales y firma de contratos) y en las cuatro que deben incluir su propio `idempotencyKey`.
- MCP: la cabecera `WWW-Authenticate` de la respuesta `401` de `/api/v1/mcp` incluye `scope` con los permisos de lectura, para que los clientes soliciten acceso de lectura por defecto.

### Cambiado

- Errores MCP: una llamada fallida a `tools/call` devuelve `isError: true` con el problema RFC 9457 como JSON en `content[0].text` y sin `structuredContent`. Los SDK oficiales de MCP validan `structuredContent` contra el `outputSchema` de las respuestas correctas incluso cuando hay un error.
- El `outputSchema` de MCP deja de establecer `additionalProperties: false`: añadir un campo a una respuesta es un cambio compatible y no provoca un fallo de validación en el cliente.
- Anotaciones MCP: `destructiveHint: true` en las validaciones de facturas, abonos, contratos y facturas de proveedor, y en `filmo_contracts_sign`, `filmo_purchase_orders_receive`, `filmo_orders_line_items_return` y `filmo_treasury_payments_create`. `filmo_ai_ask` deja de ser `readOnlyHint` (cada llamada consume créditos de IA) y mantiene `openWorldHint`.
- Consentimiento OAuth: solo se preseleccionan los permisos de lectura (los que solicita el cliente, o todos si no solicita ninguno); los permisos de escritura, `workflows:run` y `ai:ask` siempre empiezan sin seleccionar y los activa el administrador. `scope` es opcional en `/oauth/authorize`, y los permisos desconocidos se ignoran en lugar de hacer fallar la petición.
- OAuth en producción: el emisor, los endpoints y el `resource` protegido están siempre en `https://app.filmo.io`; `/api/v1/mcp` y los documentos `.well-known` de cualquier otro host de producción responden con un `308` hacia él.
- Las `instructions` del servidor MCP presentan primero lo esencial (reintentos seguros, formato de los errores, fechas, importes e `ifMatch`), dentro de los primeros 2,048 caracteres; los mensajes de error JSON-RPC están en inglés.

---

URL canónica: https://docs.filmo.io/es/changelog/mcp  
Última actualización: 2026-10-25