Standalone MCP server for prompt TTL tracking, handoff memories, aliases, and transcript-derived usage stats.
15 tools with complete input schemas and descriptions, but quality is uneven. Most descriptions are adequate (50-150 chars) but lack actionable context for LLM selection. Parameter descriptions are present but generic. No output schemas documented. Error handling guidance absent. Tool naming follows verb_noun convention well (start_session, save_memory, list_memories). However, several tools conflate multiple concerns (resume_or_start combines resume + start logic; checkpoint combines create + optionally restart). No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Composition issues: tools like heartbeat and status both track session state but with overlapping semantics. Missing guidance on when to call which tool.
Create a checkpoint and optionally restart the session.
Get TTL countdown for a session.
Generate a handoff prompt for session summary.
Record agent activity and return TTL/idle status.
Retrieve the most recent memory for a session.
List all aliases and their associated sessions.
List all memories for a session.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., what does list_memories return? Is it an array of objects? What fields?). Every tool needs documented return type structure.
resume_or_start conflates two distinct operations (resume existing session OR start new one). This violates single-responsibility principle. Split into resume_session and start_session, or clarify in description when each path is taken and what the LLM should expect.
No error handling guidance. Tools lack descriptions of failure modes, recovery steps, or actionable error messages. E.g., what happens if alias not found? What should LLM do next? Pattern: recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Resolve an alias to its session ID.
Resume an existing session or start a new one if not found.
Save a memory/handoff note for a session.
Search memories by keyword or tag.
Aggregate token/cache usage and cost over a window.
Set or update an alias for a session.
Start a new session with optional TTL, idle timeout, and checkpoint thresholds.
Get current session status including TTL countdown and idle time.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot distinguish safe reads from destructive writes. checkpoint and save_memory are WRITE operations but lack destructiveHint. heartbeat and status are READ but lack readOnlyHint.
Overlapping tool semantics. heartbeat, status, and countdown all track session state but with unclear distinctions. Description should clarify: when to call heartbeat vs status? What does heartbeat return that status doesn't? Ambiguous names cause LLM confusion.