Hardened MCP server for minimax agent delegation with tools for delegation, model management, and self-tuning
Server has 6 tools with complete input schemas and descriptions. Naming follows verb_noun convention (delegate_task, list_delegates, run_ollama, get_tuning, record_outcome, system_status). However, descriptions are minimal (10-50 chars), parameter descriptions are sparse or missing, and output schemas are not documented. Input validation is strong (sanitization, whitelisting, rate limiting, circuit breaker), but error handling lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint). Composition is reasonable but some tools conflate concerns (system_status checks multiple things).
Delegate a task to a sub-agent. senior-delegate decomposes and plans, code-writer executes code.
Show current minimax tuning parameters from active profile
List all available delegates and their capabilities
Record a task outcome for self-improvement tracking
Run a read-only Ollama command. Allowed: list, ps, show, version
Check system health: Ollama availability, disk space, active delegates
Output schemas not documented. LLMs cannot plan downstream calls or extract fields without knowing what each tool returns. Baseline: 100% of A+ tools document return types.
Parameter descriptions missing or minimal. 'command' in run_ollama lacks format/constraint details. 'outcome' and 'task_type' in record_outcome lack context. Baseline: 100% of A+ tools have param descriptions.
Tool descriptions too brief (10-50 chars). 'List all available delegates and their capabilities' (52 chars) lacks WHEN to use, prerequisites, or what structure is returned. Baseline: avg 194 chars, p10=34, p90=392.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | <=2025-11-25 | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot distinguish safe reads from destructive writes. delegate_task and record_outcome modify state but lack destructiveHint.
Error handling lacks recovery guidance. Validation errors (e.g. 'Task too long') are raised but no guidance on what to do next. Pattern: 'User not found. Try search_users() with a partial name.'