Memento Context MCP Server - Implements MCP server for persistent global and repository-scoped mementos.
Server has 8 tools with complete input schemas and descriptions. Naming follows verb_noun convention (create_, list_, read_, update_, delete_, add_, expire_). Descriptions are present (avg ~80 chars) but lack actionable context for LLM selection. Parameters are typed but many lack format constraints or validation guidance. Output schemas are not documented. Error handling is minimal, no recovery guidance or categorization. Security concerns: file paths accepted as parameters without sanitization; no permission gates on destructive operations.
Add conversation, summary, or file attachments to an existing memento.
Create a new memento with optional attachments (conversation, summary, or copied files).
Delete a memento and its attachments.
Automatically remove all expired mementos from a given scope.
List all mementos in a given scope, optionally filtered by tags or search query.
Read all attachments for a specific memento.
Read a specific memento by ID, optionally including attachments.
Update an existing memento's title, body, tags, or expiration date.
No output schemas documented. LLMs cannot predict response structure or plan downstream tool calls. Responses appear to be free-form text rather than structured objects.
File paths accepted as parameters (copy_files array) without path traversal validation. LLMs could be tricked into copying sensitive files outside intended scope.
Destructive operations (delete_memento, expire_mementos) lack confirmation/dry-run support. No permission gates. Agents can permanently delete mementos without safeguards.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Descriptions lack actionable context. 'Create a new memento with optional attachments' does not explain WHEN to use this vs update_memento, or what happens on success. No recovery guidance in error cases.
Scope parameter accepts 'global' or 'repo' but no enum constraint visible in schema. LLMs may hallucinate invalid scope values. No guidance on how to determine current repo scope.