MCP Server for AI agent identity and authorization — create, verify, and manage agent identities
Server has 6 tools with complete input schemas and descriptions, but quality is inconsistent. Tool names follow verb_noun convention (create_agent_identity, get_identity, authorize_action, verify_authorization, list_identities, revoke_identity). Descriptions are present but vary in clarity, some are in German, mixing languages. Parameter descriptions exist but lack detail on constraints, formats, and valid ranges. No output schemas documented. Error handling is absent from tool definitions. Security-critical tools (revoke_identity, authorize_action) lack confirmation patterns or permission gates. Composition is reasonable, tools are single-purpose, but missing idempotency guarantees and recovery guidance.
Autorisierung für eine bestimmte Aktion anfordern. Erstellt ein Autorisierungs-Token, das geprüft werden kann. Token sind zeitlich begrenzt.
Neue Agent-Identität erstellen. Registriert einen neuen AI-Agent mit Name, Besitzer und optionalen Fähigkeiten. Gibt eine eindeutige Agent-ID zurück.
Agent-Identität und Trust-Score abrufen.
Alle registrierten Agent-Identitäten auflisten.
Agent-Identität widerrufen. Setzt den Status auf "revoked". Der Agent kann danach keine Autorisierungen mehr anfordern.
Autorisierungs-Token prüfen. Prüft ob ein Token gültig, genehmigt und nicht abgelaufen ist.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., agent_id from create_agent_identity response). Baseline: 100% of A+ tools document return types.
Irreversible tool (revoke_identity) lacks confirmation/dry-run pattern. Agents can permanently revoke identities without a confirmation step, risking catastrophic errors.
Parameter descriptions lack constraint details. 'expires_hours' has no min/max bounds (unbounded integers let LLMs pass absurd values). 'scope' and 'action' lack enum constraints or valid value lists.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
No error handling guidance in tool definitions. LLMs cannot determine if errors are retryable, user-fixable, or fatal. No recovery suggestions (e.g., 'agent_id not found, try list_identities() first').
Descriptions mix German and English (e.g., 'Neue Agent-Identität erstellen' vs 'Agent-Identität und Trust-Score abrufen'). Inconsistent language reduces clarity for non-German-speaking LLMs and developers.