list_bank_statements tool returns the statement months that actually exist for an organization’s accounts. Each row confirms a document is available. Use it to discover valid accountId and statementMonth pairs before calling download_bank_statement. The token must carry the statements.read scope and every request must include intent and organizationId.
Scope
Required OAuth scope:statements.read
Input
string
required
The organization to query. Must be one of the organizations the token can access.
string
Inclusive start month in strict
YYYY-MM format. Must be a real calendar month.string
Inclusive end month in strict
YYYY-MM format. Must be a real calendar month. Rejected if inverted (fromMonth > toMonth) or if either value is not a real month.string
Opaque pagination cursor from a previous response. Keep the same
pageSize when following cursors. Never parse, edit, or reuse a cursor across different filter sets.integer
default:"50"
Number of results per page. Must be between 1 and 100.
string
required
What the user asked for and why this call serves it, in 1 to 500 characters. Required on every tool call. See Common tool arguments.
Output
Statement[]
required
Array of statement rows. Each row confirms a document actually exists.
object
required
Cursor-based pagination metadata.
Example
Notes
- Each row confirms a document actually exists. Months without a statement are never synthesized.
- Your agent must not claim a statement exists unless it appears in this list.
- Follow
nextCursoruntilhasNextPageisfalse. Keep the samepageSizeon every page. - If an invalid cursor is supplied, the tool returns an MCP error:
The pagination cursor is invalid. Restart pagination without a cursor and keep the same pageSize for subsequent pages.
download_bank_statement
Download a statement after discovering it here.
Result conventions
Learn how pagination and dual-channel output work across all tools.