Skip to content

v0.4.0

Choose a tag to compare

@jerive jerive released this 16 Oct 10:40
· 22 commits to master since this release
11ebce8

Breaking

  • The generated write tools are gone. put_person, post_events, delete_*, merge, the bulk objects endpoints, transactions and chat are no longer exposed. Generated tools are read-only: every GET and the POST .../query/ searches.
  • Writing goes through one tool, apply_changes. It takes 1 to 20 typed operations (create with the full object, update with only the changed fields, delete), shows the user every change, and writes only after they confirm.

How apply_changes behaves

  • The confirmation uses MCP elicitation, on both protocol eras: the question sent mid-call by clients before 2026-07-28, and the "input required" flow from 2026-07-28 on, which Claude Code negotiates by default.
  • If an object changes while the user is deciding, they are asked again about what would now be written.
  • A client that cannot ask for confirmation writes nothing.
  • If a change fails, the earlier ones are undone in one call to Gramps' transactions endpoint, which applies the undo all or nothing.
  • Inputs are strict (no unknown keys, object class checked against type, read-only fields refused, no duplicate targets) and the result is typed.
  • The tool asks Claude Code for its own approval prompt on every call.

Known limits

  • The preview shows the objects you name, not those Gramps updates as a consequence (a family's members, the referrers of a deleted event).
  • The content of object and changes is validated by Gramps at write time, not by this server.
  • Elicitation support is documented for Claude Code; for the Claude apps and Antigravity it is not documented, so those clients may write nothing.

Install

pip install "gramps-mcp @ git+https://github.com/jerive/gramps-mcp@v0.4.0"