MCP Server

modern-treasury

io.usefulapi/modern-treasury
Finance & Investing Payments & Fintech Public & reachable MCP 2026-07-28

What this MCP does

Provides read access to Modern Treasury payment orders, bank transactions, counterparties, accounts, returns, and double-entry ledgers.

modern_treasury_create_counterparty
Create counterparty
Creates a counterparty (contact) record in Modern Treasury. Creates a record only — no bank details, MOVES NO MONEY. API: POST /counterparties.
Destructive
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Counterparty (contact) name.'}, 'email': {'type': 'string', 'description': 'Counterparty email.'}, 'metadata': {'type': 'object', 'description': 'Arbitrary string key/value metadata.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}}}
modern_treasury_get_counterparty
Get counterparty
Get a single counterparty by id. API: GET /counterparties/{id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Counterparty id.'}}}
modern_treasury_get_ledger_account
Get ledger account
Get a single ledger account by id, including balances. API: GET /ledger_accounts/{id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Ledger account id.'}}}
modern_treasury_get_payment_order
Get payment order
Get a single payment order by id (READ ONLY). API: GET /payment_orders/{id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Payment order id.'}}}
modern_treasury_get_transaction
Get transaction
Get a single transaction by id. API: GET /transactions/{id}.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Transaction id.'}}}
modern_treasury_list_counterparties
List counterparties
List counterparties (contacts). API: GET /counterparties.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'description': 'Filter by counterparty name.'}, 'email': {'type': 'string', 'description': 'Filter by counterparty email.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_expected_payments
List expected payments
List expected payments (READ ONLY). API: GET /expected_payments.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'status': {'type': 'string', 'description': 'Filter by status, e.g. unreconciled, reconciled.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_external_accounts
List external accounts
List external (counterparty) bank accounts. API: GET /external_accounts.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}, 'counterparty_id': {'type': 'string', 'description': 'Filter by owning counterparty id.'}}}
modern_treasury_list_internal_accounts
List internal accounts
List your organization's internal bank accounts. API: GET /internal_accounts.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_ledger_accounts
List ledger accounts
List ledger accounts. API: GET /ledger_accounts.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'ledger_id': {'type': 'string', 'description': 'Filter by ledger id.'}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_ledger_entries
List ledger entries
List ledger entries (individual debits/credits). API: GET /ledger_entries.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}, 'ledger_account_id': {'type': 'string', 'description': 'Filter by ledger account id.'}}}
modern_treasury_list_ledgers
List ledgers
List double-entry ledgers. API: GET /ledgers.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_ledger_transactions
List ledger transactions
List ledger transactions (READ ONLY — does not post value). API: GET /ledger_transactions.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'ledger_id': {'type': 'string', 'description': 'Filter by ledger id.'}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_payment_orders
List payment orders
List payment orders (READ ONLY — does not create or approve payments). API: GET /payment_orders.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'status': {'type': 'string', 'description': 'Filter by status, e.g. approved, pending, completed.'}, 'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'direction': {'enum': ['credit', 'debit'], 'type': 'string', 'description': 'Filter by direction.'}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}, 'counterparty_id': {'type': 'string', 'description': 'Filter by counterparty id.'}}}
modern_treasury_list_returns
List returns
List payment returns (e.g. ACH returns). API: GET /returns.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}}}
modern_treasury_list_transactions
List transactions
List bank transactions. API: GET /transactions.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'description': 'Results per page (default 25, max 100).', 'exclusiveMinimum': 0}, 'after_cursor': {'type': 'string', 'description': "Pagination cursor from a prior response's next_cursor (X-After-Cursor header)."}, 'internal_account_id': {'type': 'string', 'description': 'Filter by internal account id.'}}}
modern_treasury_ping
Ping (auth check)
Verify connectivity and credentials. API: GET /ping.
Read only
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Changed
modern_treasury_create_counterparty
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_ledger_entries
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_ledger_transactions
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_get_ledger_account
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_ledger_accounts
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_ledgers
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_returns
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_get_transaction
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_transactions
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_expected_payments
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_get_payment_order
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_payment_orders
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_external_accounts
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_internal_accounts
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_get_counterparty
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_list_counterparties
Oct. 1, 2026, 2:42 a.m.
Changed
modern_treasury_ping
Oct. 1, 2026, 2:42 a.m.
Added
modern_treasury_create_counterparty
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_ledger_entries
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_ledger_transactions
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_get_ledger_account
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_ledger_accounts
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_ledgers
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_returns
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_get_transaction
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_transactions
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_expected_payments
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_get_payment_order
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_payment_orders
Sept. 17, 2026, 12:53 p.m.
Added
modern_treasury_list_external_accounts
Sept. 17, 2026, 12:53 p.m.