OpenReflect MCP server for persistent memory via Vertex AI Memory Bank
Server has 6 tools with basic schemas and descriptions, but significant gaps limit production readiness. Tool names follow verb_noun convention (initialize_, generate_, retrieve_, update_, delete_). Descriptions exist but are brief (10-50 chars for most tools). Input schemas are present with type declarations, but parameter descriptions are minimal or missing. Output schemas are not documented. Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. Two destructive tools (delete_memory, delete_all_memories) lack confirmation or dry-run patterns. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Composition is reasonable, tools are single-purpose, but chaining support is unclear (e.g., does retrieve_memories return memory_name for use in update_memory?).
Delete all memories for a specific user scope.
Delete a specific memory.
Generate memories from a conversation. Analyzes conversation and extracts relevant information to remember.
Initialize Memory Bank with your Google Cloud project. This is the first function you should call to set up the connection.
Retrieve memories for a user, with optional similarity search.
Update an existing memory with new information.
Destructive tools (delete_memory, delete_all_memories) lack confirmation or dry-run patterns. No error guidance on recovery. Agents can irreversibly delete data without safeguards.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels declared in metadata. LLMs cannot distinguish safe from dangerous tools.
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., does retrieve_memories return memory_name for use in update_memory?).
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Parameter descriptions are minimal or missing. 'scope' is described as 'User identifier dictionary' but format/structure is unclear. 'memory_topics' lists options but no guidance on when to use each.
No error handling or recovery guidance. Tools return success/failure but do not tell LLMs what to do next (retry, ask user, abort). No categorization of retryable vs fatal errors.