An MCP server that provides role-based context management with memory persistence, tone profiles, and dynamic context switching for AI agents
Server has 15 tools with explicit schemas and descriptions visible in toolHandlers.ts and contextHandlers.ts. However, quality is inconsistent. Tool names follow verb_noun convention (process-with-role, create-role, etc.), which is good. Descriptions are present but often generic (e.g., 'Process a query using a specific role' lacks WHEN/WHY context). Parameter descriptions exist but lack constraints, no enums for 'tone' values, no format specs for 'pattern' regex, no min/max for numeric fields. Output schemas are not documented; responses are inferred as text-only. Error handling is absent from visible code. Security concerns: no evidence of permission gates on destructive tools (delete-role, clear-role-memories, delete-context-trigger). Overall, definitions meet minimum viability but fall short of production-grade clarity and safety.
Add a new context trigger
Change the tone of a role
Check input for context triggers and apply if matched
Clear all memories for a role
Create a new role
Delete a context trigger
Delete a custom role
No output schemas documented. Tool responses are inferred as text-only; LLMs cannot plan downstream calls or extract structured data. Responses should document field names, types, and pagination.
Enum constraints missing for constrained parameters. 'tone' accepts free-form strings (should enumerate: professional, creative, formal, casual, etc.). 'contextType' has enum but 'pattern' in add-context-trigger lacks regex format spec.
Destructive tools (delete-role, clear-role-memories, delete-context-trigger) lack permission gates and confirmation patterns. No evidence of access control or dry-run support. Agents can delete without safeguards.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Get context history for an agent
Get current context for an agent
Handle multi-modal context
Process a query using a specific role
Store a memory for a specific role
Switch context for an agent
Update an existing context trigger
Update an existing role
Parameter descriptions lack actionable constraints. 'updates' in update-role is 'Fields to update' (vague). 'metadata' in store-memory is 'Additional metadata' (no structure). 'pattern' in add-context-trigger lacks regex format guidance.
No error handling guidance visible. Tool execution handlers return text responses without error classification (retryable vs fatal). LLMs cannot determine recovery strategy on failure.