structuredContent and as JSON text inside content. List tools also include pagination metadata.
Dual-channel results
A successful tool call returns the same data twice:structuredContent: the JSON payload validated against the tool’soutputSchema.content: an array containing atextitem with the same payload serialized as JSON text.
Example ToolCallResult
Money
Every monetary value is returned as a Money object:cents for arithmetic and display when showing an amount to a user. Transaction amounts are unsigned; read direction for the sign. A missing value, such as an omitted balances object, means the value is unavailable, never zero.
Pagination
List tools return apagination object with these fields:
Follow
nextCursor until hasNextPage is false. Keep the same filters and pageSize on every page.
Cursors are opaque and bound to the exact filter set. Never parse them, edit them, or reuse a cursor across different filters.
Paginated result example
Errors
Learn how MCP tool errors and invalid cursors are surfaced.
Transport
Review how stateless requests carry results over Streamable HTTP.