Server has 26 tools with consistent naming (verb_noun pattern) and Spanish descriptions. Most tools have input schemas with type definitions. However, parameter descriptions are sparse or missing entirely (e.g., 'extra' fields lack descriptions), and output schemas are not documented. Error handling is minimal, no recovery guidance or actionable error messages visible. Descriptions average ~120 chars, which is acceptable but lack LLM-optimized context about when/why to use each tool. No tool annotations (readOnlyHint/destructiveHint) despite clear risk levels assigned. Composition is reasonable, tools are single-purpose and chainable via ID returns.
Asigna roles a un usuario dentro del tenant del token.
Autentica la sesión MCP actual con un usuario de Polizei usando sus credenciales (grant password). La contraseña solo se usa en el intercambio de token y no se almacena. Tras autenticarte podrás elegir tenant con `list_available_tenants` y `set_tenant`.
Inicia un login vía navegador (authorization_code + PKCE): devuelve una URL que el usuario debe abrir; Polizei muestra su formulario de login y al completarlo la sesión MCP queda autenticada. Después usa `auth_poll` o `auth_status` para confirmar.
Elimina la identidad y el tenant activo de la sesión MCP actual.
Espera (polling) hasta que el login iniciado con `auth_login_start` se complete, y devuelve el estado de la sesión.
Devuelve si la sesión MCP está autenticada, con qué usuario/modo (user o service), el tenant activo y la expiración del token.
Parameter descriptions missing or null for many fields. 'extra', 'meta', 'grants', 'scopes', 'type' fields across OAuth and permission tools lack descriptions, forcing LLMs to guess intent.
Output schemas not documented. Tools return complex objects (OAuth clients, permissions, invitations) but no schema is visible in source. LLMs cannot plan downstream calls or extract required fields.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Tools marked DESTRUCTIVE (delete_invitation, delete_oauth_client, delete_permission) should carry destructiveHint=true for agent safety.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | <=2025-11-25 | v2 |
Crea una invitación de usuario. El idScope se fuerza al tenant del token y el autor se toma del token.
Crea un cliente OAuth en el tenant indicado (default: tenant activo). El campo name sí se persiste. El clientId lo genera la API (se ignora el clientId enviado).
Crea un scope OAuth en el tenant del token.
Crea un permiso. El idScope se fuerza al tenant del token.
Elimina una invitación por id.
Elimina un cliente OAuth. El id interno (UUID) es obligatorio y se incluye el tenant. El clientId no identifica al cliente para eliminar (usa id).
Elimina un scope OAuth por id.
Elimina permisos. Puede recibir: `id` (uno), `ids` (varios), o `children` (grupo con hijos).
Importa un lote de permisos en un scope (idScope 0 usa el tenant del token).
Lista los roles disponibles para asignar en invitaciones del tenant.
Lista usuarios del tenant del token (para asignar roles en invitaciones).
Lista las invitaciones del tenant del token.
Lista los scopes OAuth disponibles para asignar a clientes del tenant.
Lista los clientes OAuth del tenant indicado.
Lista los scopes OAuth del tenant del token.
Lista los permisos (árbol aplanado) del tenant del token.
Remueve a un usuario de un scope (rechazo de invitación).
Actualiza los datos de un cliente OAuth. El id interno (UUID) es obligatorio y se incluye el tenant. El campo name sí se persiste. El clientId no identifica al cliente para actualizar (usa id).
Actualiza un scope OAuth por id.
Actualiza los datos de un permiso.
Minimal error handling guidance. No visible recovery hints, retryability classification, or actionable error messages. Agents cannot self-correct on failures.
Pagination not visible in list tools. list_invitations, list_oauth_clients, list_permissions lack offset/limit/cursor parameters or total count in responses, risking context window overflow.