Skip to main content
Glama

update_transaction

Destructive

Correct an existing ledger transaction when the user wants to fix a mistake — a wrong amount, date, category, payee, who paid, or which heir/asset it relates to. Find the transaction's ID with get_transactions first. This is a PARTIAL update: pass transaction_id plus ONLY the fields that change; everything you omit is left as-is. Use this (not a new correcting entry) whenever the user says an amount or detail was wrong. Confirm the correction with the user before calling.

Input Schema

NameRequiredDescriptionDefault
notesNoChange the free-text note.
amountNoChange the positive dollar amount.
heir_idNoChange the related heir ID (for distributions).
paid_byNoChange who paid (disbursements). 'individual' means a person paid out of pocket and is owed reimbursement.
asset_idNoChange the related asset ID.
categoryNoChange the category. Must belong to the transaction's direction (same taxonomy as log_transaction).
directionNoChange the direction. If you change this, also pass a matching category.
estate_idYesThe estate to act on. Call list_my_estates first to get this id.
payer_nameNoWhen paid_by='individual' AND someone other than the user paid, the person's name. Omit if the user themselves paid.
transaction_idYesID of the transaction to update (from get_transactions).
payee_or_sourceNoChange who was paid (money out) or the source (money in).
transaction_dateNoChange the date, as YYYY-MM-DD.

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 destructiveHint=true, readOnlyHint=false, idempotentHint=false, so the bar is lower. The description adds the partial-update behavior (omitted fields preserved) and a required user-confirmation workflow, though it does not spell out what a direction/category change destroys or how failures surface.

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?

Four sentences, front-loaded with the purpose, then prerequisite, then the partial-update rule, then the confirmation requirement. No filler; each sentence carries a distinct instruction.

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

Completeness4/5

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

For a 12-param destructive mutation with annotations but no output schema, the description covers purpose, prerequisite lookup, partial-update semantics, and a safety confirmation step. It stops short of describing error/rollback behavior or the direction-change cascade, leaving minor gaps.

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?

Schema coverage is 100%, so baseline is 3, but the description adds a rule the schema does not encode: this is a PARTIAL update where omitted fields are left as-is, and transaction_id must accompany only the changed fields. That meaningfully changes how an agent fills the 12-property payload beyond the per-field schema text.

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?

States a specific verb (correct/update) and resource (ledger transaction) and enumerates the correctable fields (amount, date, category, payee, who paid, heir/asset). It explicitly distinguishes itself from creating a new correcting entry, so an agent can separate it from log_transaction without inspecting schemas.

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?

Gives a prerequisite ('Find the transaction's ID with get_transactions first'), names the alternative it is not ('Use this (not a new correcting entry)'), and adds a confirmation step before calling. When-to-use is tied to the user-facing trigger ('the user says an amount or detail was wrong').

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources