Skip to main content
Import a bank statement the person gave as the company’s bank movements: Norma 43, CSV, Excel or PDF, as the bank exports it, sent in the Melso chat (attachment_id) or uploaded from another client with upload (upload_id). read shows what it holds and what is missing; import saves it only when it adds up. A refused statement is never fixed by hand: the person downloads it again. Then reconcile its movements with bank. Each action accepts only its own fields (* required): import(account_name, attachment_id, bank_account_id, closing_balance, opening_balance, upload_id); upload(filename*, content_type*, size_bytes*). Availability: Empresa. Access: Live for an empresa, in the app and over MCP when the connection lists bank_statements. Reading and saving a statement are private beta on REST. A statement that does not add up is refused: ask for it again, and do not edit the balances. The live tool list is authoritative: the company’s plan and your role can narrow this contract. Understand access.

When to use

Use bank_statements for import, upload. Use bank_statements_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.

Statement actions

upload returns a link, read reads the file without saving it (a PDF is read by Melso and billed to the company’s credit) and import saves its movements.
Save a bank statement the person gave as the company’s bank movements, leaving out the movements the account already has. Refused (balance_mismatch) unless the opening balance plus the movements is the closing balance and every balance printed after a movement follows from the ones before: say so and ask for the statement again from the bank, never retry with other balances to make it fit.
Get a link to upload the statement as the bank exports it (Norma 43, CSV, Excel or PDF) (at most 5 MB) when you can run commands: PUT the file to upload_url, then call read and then import with upload_id. Without a shell, give the person web_upload_url to upload it in Contabilidad instead.

Output

upload returns an upload link and its upload_id. import saves movements not already present, or refuses an unbalanced statement. 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

Ask for an upload link

2

Save its movements

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.