An MCP that uses IPFS to store and retrieve context between sessions.
Three tools with basic definitions but significant quality gaps. Tool names lack action verbs (leave_off, pick_up are colloquial; should be save_context, retrieve_context). Descriptions exist but are generic (194-char baseline; these average ~140 chars). Parameter descriptions are present but minimal. No output schemas documented. Error handling returns text but lacks recovery guidance. No tool annotations (readOnlyHint, destructiveHint). Composition is reasonable (three distinct concerns), but naming and schema completeness are weak.
Save current context and instructions to a persistent storage for another LLM to continue the task later. Creates a unique ID that can be used to retrieve this context.
Retrieves the most recent saved context/instruction set using its unique identifier. Allows an LLM to resume work on a task where another left off.
Retrieves previously saved context and instructions using a unique identifier. Allows an LLM to resume work on a task where another left off.
Tool names lack action verbs. 'leave_off' and 'pick_up' are colloquial; should be 'save_context' and 'retrieve_context' to match verb_noun convention and help LLMs infer intent from name alone.
No output schemas documented. LLMs cannot plan downstream calls or extract structured data. All three tools return {content: [{type: 'text', text: string}], success: boolean} but this is not declared in tool definitions.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). pick_up and load_latest_context_item are read-only; leave_off is destructive (writes to IPFS). Annotations guide agent planning and safety.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | <=2025-11-25 | v2 |
Error messages lack recovery guidance. handleError() returns 'Error: {message}' but does not suggest next steps (e.g., 'IPFS write failed. Check network connectivity or retry.').