Skip to main content
Glama
sarthakshah

FreshMemory MCP

by sarthakshah

resolve_source_change

Accept or dismiss a pending source change flagged for review; when accepting text changes, provide a reviewed replacement statement to update memory.

Instructions

Accept or dismiss a pending source change. Text changes require a reviewed replacement statement when accepted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
reasonNo
change_idYes
statementNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.2

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It does disclose a non-obvious conditional requirement (a reviewed replacement statement is needed for text changes on accept), which is real behavioral value, but it says nothing about reversibility of dismiss/accept, permissions, or downstream effects.

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

Conciseness5/5

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

Two tight sentences with the core action first and the conditional constraint second. No filler, no repetition of the tool name.

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

Completeness2/5

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

For a mutation tool with no annotations, no output schema, and fully undocumented parameters, the definition is thin: it omits what happens to the change after resolving, whether the action is reversible, and what the caller should expect back. The one useful conditional is not enough.

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

Parameters2/5

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

Schema description coverage is 0% across 4 parameters. The description maps the accept/dismiss choice to the 'action' parameter and hints at 'statement' for text changes, but 'change_id' and especially 'reason' are never explained in either place, so it does not compensate for the coverage gap.

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

Purpose4/5

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

States a specific verb+resource pair (resolve/accept-or-dismiss a source change), which is clearer than the sibling names review_changes or sync_sources. It does not explicitly distinguish itself from review_changes, which presumably surfaces the same pending changes, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

Usage is implied by 'pending source change' and the accept/dismiss pair, and one conditional rule is given ('Text changes require a reviewed replacement statement when accepted'). However, no alternatives are named and no precondition is stated (e.g., that the change must first be surfaced via review_changes).

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