Model Context Protocol (MCP) stdio server implementation for Agent Memory Engine. Provides fused retrieval across episodic lessons, semantic rules, and project topology with time decay, memory harvesting, and database inspection capabilities.
Three tools with complete schemas and descriptions, but significant gaps in parameter documentation and error handling. ame_query and ame_store have reasonable descriptions (60-90 chars), but parameter descriptions are minimal or missing. ame_inspect has no parameters but lacks context on output structure. No error recovery guidance, no output schema documentation, and no tool annotations (readOnlyHint/destructiveHint). Naming is verb-forward (query, store, inspect) but descriptions lack WHEN/WHY context. Per-tool average: ame_query=55, ame_store=52, ame_inspect=48.
Get database statistics, memory tier distribution, and active status.
Fused retrieval across past episodic lessons, semantic rules, and project topology with time decay.
Harvest and persist a verified lesson [Problem | Cause | Fix] or semantic rule.
ame_inspect lacks description context. 'Get database statistics, memory tier distribution, and active status' is present but output schema is undocumented, LLM cannot predict what fields to expect or how to use the response.
Parameter descriptions are minimal or absent. 'topK' and 'minScore' in ame_query lack guidance on typical ranges or impact. 'tier' enum in ame_store has no description explaining when to use Episodic vs Semantic vs Procedural. LLMs cannot reason about parameter selection.
No error handling or recovery guidance. If ame_query returns no results or ame_store fails validation, there is no actionable error message telling the LLM what to do next (retry, adjust parameters, call a different tool).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). ame_query is marked READ_ONLY and ame_store is WRITE, but these are not declared in the tool schema, LLM cannot infer safety properties or retry behavior.
Output schemas undocumented. ame_query returns 'results' array with fields like memoryId, tier, compositeScore, etc., but this structure is not declared in tool metadata, LLM must infer field names from examples.