Skip to main content
A company’s bank movements, worked as its adviser does in Contabilidad › Por revisar. accounts lists the bank accounts, each with its assigned ledger account (null means unmapped and blocks reconciliation; account_update assigns a subaccount such as 57200001, cash 570, savings 574 or a credit line 520). Mapping changes are audited; existing reconciliation snapshots and posted entries keep their captured accounts. movements lists the movements newest first (status to_review: those not reconciled, each with the document Melso proposes, its reasons and batch_eligible: identifying evidence with no equally strong candidate); movement reads one; documents lists the open invoices and tickets a movement can settle. reconcile records the confirmed matching and prepares a journal proposal without posting: documents it settles (an invoice less its credit note; a difference for a bank’s fee or an exchange rate), lines for what no document says (kind tax with its model: 303 paid to 4750 or refunded from 4700, 111, 115, 123 and 216 to 4751, 202 to 473, 200 to 4752 or from 4709; kind account with any account of the plan: a loan 170/520 and its interest 662, capital 100, a partner 551, the Seguridad Social 476, a supplier’s or customer’s balance carried from imported books), or a transfer to or from another of the company’s accounts, which pairs both movements and proposes one transfer entry. An authorized batch may reconcile batch_eligible proposals with their exact displayed document amounts; conflicts stay pending. A professional reviews and explicitly posts the exact proposal in the app. unreconcile clears the matching and updates proposals; posted entries remain unchanged and require explicit reversal in the app. Bring statements in with bank_statements. Amounts are EUR decimal strings: movements are positive in, negative out; lines and documents are always positive. Each action accepts only its own fields (* required): account_update(id*, account, name); reconcile(id*, difference, documents, lines, transfer); unreconcile(id*). Availability: Empresa. Access: Live for an empresa, in the app and over MCP when the connection lists bank. Listing accounts and movements and recording a reconciliation are private beta on REST. Connecting a bank account and pushing movements are planned, and they are not actions of this tool. Reconciling prepares a journal proposal and does not post it. The live tool list is authoritative: the company’s plan and your role can narrow this contract. Understand access.

When to use

Use bank for account_update, reconcile, unreconcile. Use bank_read for the companion actions. The live tool list determines availability.

Input

Actions

The tool’s schema combines the fields of every action. Each action accepts only its own fields below; send action with them.

Reconciliation actions

These actions record or clear a matching, or map an account in the books, and need a plan with the tools. A reconciliation prepares a journal proposal; it never posts an entry, and posted entries change only by reversal in the app.
Name a bank account, or set the account in the books it is kept in: a subaccount of 572 (57200001), a savings account (574), cash (570) or a credit line drawn (520). New reconciliations capture this account; existing snapshots and posted entries stay unchanged. Mapping changes are audited. Only when the person asks.
Record a confirmed movement matching and prepare its journal proposal without posting: with documents (each settles what it still owes unless amount says less; together never more than the movement, what is left over is on account), with lines for what no document says (a tax return, an account of the books; without documents they add up to the movement), or alone as a transfer to or from another of the company’s accounts (each account needs its own account in the books; its other side is reconciled with it). difference proposes a bank’s fee or an exchange difference against the documents (kind bank_fee or exchange, at most 50 € or 5 %). Each bank needs an explicit ledger mapping. A professional reviews and explicitly posts the exact proposal in the app; posted entries remain unchanged. When the person authorizes a batch, process its batch_eligible proposals with their exact displayed amounts after checking both banks are mapped; review conflicts and ambiguous proposals separately. Never invent a document or line the person did not confirm; unexplained movements stay to review. Refusals name their code.
Clear a movement’s matching and return it to review. Its unposted proposal is removed or recalculated; posted entries remain unchanged and require explicit reversal in the app. The other side of a transfer stays matched on its own. Only when the person asks.

Output

reconcile records the confirmed matching and prepares an unposted journal proposal. unreconcile returns the movement to review. account_update returns the renamed or remapped account. These actions never post an entry. The result uses MCP content blocks; JSON payloads are encoded in text and may also appear in structuredContent. Check isError before reading a success payload. When the server declares an outputSchema, it is reproduced below. Check the action result and its declared fields before reporting success.

Example

Use the actions of this tool in the order shown; its companion tool covers the other actions. These are the arguments of each call, in order.
1

Reconcile it with the expense the person confirmed

The first call as a request. Use an OAuth access token issued for this MCP resource and replace the example identifiers with values from your own company. Write actions change data.