Skip to main content
Glama

Map an account

bridge_map_account

Say what something is called in the ledger of record: one of our accounts, or one of the person's own spending categories or statement accounts. The mapping is the accountant's answer, not a guess: ask for the code and the name exactly as their chart spells them, one at a time, and write them as they are given. Xero imports match on the code, QuickBooks on the name, so supply both where you can.

Three kinds. "derivation" is one of our fixed accounts (receivables, revenue, cash, bank fees). "category" is a word the person used when reviewing their spending — groceries, software, rent — and it needs their expense or income account. "source" is the account a statement came from, their bank or card, and it needs that account in the chart. bridge_accounts lists all three and says which are in use. The tax rate label is only needed where their import expects one. Changing a mapping never rewrites a hand-over that already went out. Effects: account mapping written.

Input Schema

NameRequiredDescriptionDefault
codeNoTheir account code, as their chart spells it (Xero AccountCode).
kindNoWhat is being mapped. Defaults to one of our derivation accounts.
nameNoTheir account name, exactly (QuickBooks Account Name).
noteNoAnything the accountant said about it.
reasonNoWhy — part of the record.
accountYesWhich one: an account name for "derivation", the person's word for "category", the statement account label for "source".
tax_rateNoThe tax rate label their import expects on this account, if any.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

The description adds meaningful behavior beyond the annotations: it states that changing a mapping never rewrites a hand-over that already went out, and closes with 'Effects: account mapping written.' The annotations already declare this is a non-read-only, non-destructive, non-idempotent write, so the description fills in important operational context. It does not cover permissions or error behavior, keeping it from a 5.

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 description is front-loaded with the purpose, then transitions into usage rules, the three mapping kinds, and effects. It is somewhat long but appropriately sized for a seven-parameter mapping tool with multiple modes. Most sentences carry useful information, though a few could be tightened.

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 mutation tool with no output schema and seven parameters, the description covers the essential context: the three mapping kinds, what each requires, import-matching behavior, and the effect of writing a mapping. It does not describe return values or error cases, but the annotations and 100% schema coverage reduce the need for that. The definition is complete enough to support correct use.

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 the baseline is 3. The description still adds useful semantics by explaining what the 'account' parameter means for each kind, how code and name are used by Xero and QuickBooks imports, and that the tax rate label is only needed where the import expects one. It does not add much for parameters like note or reason, but it meaningfully enriches the most important fields.

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?

The description clearly explains that this tool records how something is named in the ledger of record, covering derivations, categories, and source accounts. It distinguishes itself from bridge_accounts by explaining that bridge_accounts lists mappings while this tool writes them. The phrasing is slightly indirect at the start, but the overall purpose is clear.

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

Usage Guidelines4/5

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

It gives concrete usage instructions: ask for the code and name exactly as the chart spells them, supply both where possible because Xero matches on code and QuickBooks on name. It defines the three mapping kinds and what each requires, and points to bridge_accounts for listing. It does not explicitly state when not to use the tool, but the practical guidance is strong.

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.