Tools are actions your AI assistant can perform on your behalf. They’re organized into read tools (fetching data) and write tools (making changes).Documentation Index
Fetch the complete documentation index at: https://docs.moneda.com/llms.txt
Use this file to discover all available pages before exploring further.
Write tools that involve money — like initiating payments — always require your confirmation in the Moneda app before anything happens.
Response shape
Every tool response is TOON-encoded (~40% fewer tokens than equivalent JSON) and runs through a safety-net scrubber that dropsnull, undefined, "", empty arrays, and empty objects from the payload before serialisation. 0, false, and "0" are preserved — a balance of zero is a real answer.
What this means in practice:
- If a field is a known optional that has no value for your account (e.g.
imageUrlon recovery contacts,bankNameon an ACH-only bank entry), it’s simply absent from the response rather than serialised as"null". - If a list tool finds no matching rows, the array field itself is absent and the
countfield (always present) is the authoritative “nothing matched” signal. Example:{ "count": 0 }instead of{ "results": [], "count": 0 }. - Robust MCP clients handle absent fields transparently. Prompt-engineered clients that assert exact key presence may need a small update — check for the
countfield first.
What read tools are available?
| Tool | What it does |
|---|---|
health | Check MCP server status |
get_balance | Fetch live balances for USD and EUR accounts and earnings vaults |
get_transactions | Browse transaction history with filters |
get_spending_by_type_group | View spending grouped by transaction type group over 7, 30, or 90 days |
get_daily_spending | Get daily spending totals for a stablecoin over a window |
get_spending_by_category | View spending grouped by user-assigned category |
get_spending_by_contact | View total spending sent to a single recipient |
get_spending_by_merchant | View spending grouped by recipient or merchant |
get_spending_comparison | Compare spending totals across two windows |
get_spending_transactions | List or drill into the underlying spending transactions |
get_exchange_rate | Get the current USD/EUR exchange rate |
get_apy_rates | Check current APY rates for earnings products |
get_earnings_time_series | View daily earnings and balance history for a vault account |
get_wallet | Get your Moneda smart wallet address on Base |
get_virtual_accounts | View your IBAN and ACH virtual bank account details |
get_contacts | List your saved contacts |
get_my_accounts | View your saved external wallets and bank accounts |
list_banks_for_country | List Koywe-supported banks for a LATAM country (CO/CL/BO need this for bank registration) |
list_cards | List your Moneda cards (status, last four digits, expiry, design) — never the full PAN, CVV, or PIN |
get_card | Get PCI-redacted details for a single card (status, type, program, currency, expiry, design) |
get_settings | View app preferences and notification settings |
get_passkeys | List your passkeys and authentication devices |
get_recovery_contacts | View your recovery contacts and guardian relationships |
list_recovery_emails | List email addresses set up for ZK email-based account recovery |
get_recovery_email | Get one recovery email’s full detail by id |
get_recovery_config | Get the recovery configuration (accepted emails, weight, threshold) |
get_recovery_status | Get the most recent recovery request snapshot for an account |
list_notifications | List in-app notifications (use filter=‘unread’ for unread items) |
get_unread_notification_count | Get the unread in-app notification count (cheaper than list_notifications) |
get_points_balance | Check your reward points balance |
get_points_activity | View history of earned and redeemed points |
get_referral_code | Get your unique referral link and count |
get_referees | See the list of friends you’ve referred |
search_users | Search for Moneda users by username, name, email, or phone |
search_knowledge | Search FAQs about Moneda |
get_faq_category | Browse all FAQ items in a specific category |
get_faq_item | Read the full answer to a specific FAQ question |
list_sub_accounts | List your sub-account vaults (excludes closed by default) |
get_sub_account | Get one sub-account’s full detail by id |
get_sub_account_balance | Read on-chain balances for a sub-account’s child Safe |
get_total_wealth | Aggregate wealth across main account + every live vault, per currency |
list_receipts | List your transaction receipts, newest first, with extracted summary fields |
get_receipt | Get one receipt with full extracted fields + presigned download URL |
get_receipt_line_items | List the parsed line items on a receipt |
search_receipt_line_items | Search across every line item you’ve uploaded, aggregated by currency |
list_bewirtungsbelege | List German hospitality-receipt (Bewirtungsbeleg) overlays |
list_eigenbelege | List self-issued substitute receipts (Eigenbeleg) |
list_bills | List bills (AP queue), due-soon first |
get_bill | Get one bill with full extracted detail + presigned download URL |
list_supported_destinations | List country/currency/rail combinations Moneda can pay out to |
get_payment_quote | Preview cost, FX rate, and final amount for a cross-currency payment |
What write tools are available?
| Tool | What it does |
|---|---|
update_display_name | Change your display name |
update_transaction_category | Assign a spending category to a transaction |
add_transaction_note | Add or update a note on a transaction |
batch_update_transaction_categories | Categorize up to 25 transactions at once |
batch_add_transaction_notes | Add notes to up to 25 transactions at once |
add_wallet | Save an external crypto wallet |
add_bank | Save a bank account (EU IBAN or US ACH) |
add_contact_external | Register an external contact with wallet or bank details |
add_contact_moneda | Add a Moneda user to your contacts |
initiate_payment | Create a payment request (requires approval in the Moneda app) |
get_payment_status | Check the status of a pending payment |
request_receipt_upload | Step 1 of 2 — get a presigned S3 PUT URL for uploading a local receipt |
finalize_receipt_upload | Step 2 of 2 — run OCR + matching after the file lands in S3 |
import_receipt_from_url | Import a receipt directly from an https:// URL (SSRF-guarded) |
reparse_receipt | Re-run OCR / LLM extraction on an existing receipt |
freeze_card | Freeze a card on-chain (reversible, no Monavate-state change) |
unfreeze_card | Unfreeze a card on-chain (idempotent, reverses freeze_card) |
Learn more
Resources
Data your AI reads automatically for context.
Scopes
Permission scopes that control tool access.
Use cases
See what you can do with these tools in practice.
Quickstart
Get connected in 5 minutes.
