Skip to main content
Glama

memory_status

Read-only

Shows project memory sync status: outbox drafts, repo memories awaiting review or published, uncommitted files, and reuse reports with retrieved/useful rates, top reused memories, and zombies.

Instructions

Show the project memory sync pipeline: drafts waiting in the outbox (appdata), memories in the repo awaiting review or published, and any repo files not yet committed — plus the D77 reuse report: per-scope retrieved/useful rates, the most-reused memories, and "zombies" (retrieved but never confirmed useful). Call this at session start, when the server reports drafts waiting for review, when the user says 'sync memory' (or '同步记忆'), or when they ask what memory is pulling its weight. Then ask the user which drafts to sync. For the memories themselves use memory_list; for PR review state use memory_pr_status. (MCP server and the open-memex sync-status CLI; the opencode native plugin does not expose this tool.)

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "memory_status"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered; the description adds real context beyond that by spelling out the categories of data returned and the environment constraint that the opencode native plugin does not expose this tool. It stops short of describing formatting or how the report is structured for consumption, so it is strong but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content inventory is front-loaded, followed by the call triggers, the human follow-up, and the sibling routing, so an agent reading only the first clause still knows what it gets. The final parenthetical about the CLI and opencode plugin is dense but justified as a capability caveat; the sentence is long but no clause is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no parameters, the description carries the whole burden of explaining what comes back, and it does so by enumerating every report section including the reuse metrics and zombie detection. Combined with the trigger conditions and sibling routing, an agent has everything needed to call it and interpret the result correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes no parameters, so there is no parameter semantics to explain and the baseline of 4 applies. Schema description coverage is moot at zero properties, and nothing in the description conflicts with the empty input schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete artifact (the project memory sync pipeline) and enumerates exactly what it reports: outbox drafts, repo memories awaiting review/published, uncommitted repo files, plus the D77 reuse report with per-scope retrieved/useful rates, most-reused memories and 'zombies'. It explicitly distinguishes itself from memory_list and memory_pr_status, so an agent can tell the three apart without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit triggers — session start, a server notice that drafts are waiting, the user saying 'sync memory'/'同步记忆', or asking which memory is pulling its weight — and names the alternative tools for the adjacent questions. It even supplies the follow-up action ('Then ask the user which drafts to sync'), which prevents an agent from auto-syncing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.