Labsco
MCP SERVER

Check a Monzo balance, move money into a pot, and annotate a transaction — from a conversation.

Personal Finance & Budgeting
Summary
It reads and it moves money — pot transfers are part of the tool set, not just queries.

Deposits and withdrawals take an amount in pence and go through a dedupe id, which is what stops a retried request from transferring twice. The read side spans your account types by name, so "how much is in the joint account" resolves without you hunting for an account ID.

What it is

An MCP server over the Monzo developer API. It reads balances, pots and transactions across your Monzo account types, and can move money between an account and a pot.

What you get
  • balance — balance, spending today and currency for an account type, optionally the total
  • pots — the list of pots for an account type
  • pot_deposit and pot_withdraw — move money between an account and a pot, in pence
  • list_transactions — transactions for an account, with since, before and a limit
  • retrieve_transaction — one transaction in detail, with merchant data expanded by default
  • annotate_transaction — edit or remove a transaction's notes
  • Account types addressed by name: default, personal, prepaid, flex, rewards and joint
  • Pot transfers carry a dedupe id with a triggered_by value, so a repeat call does not move the money twice
Requirements

Monzo developer credentials in a .env file: MONZO_ACCESS_TOKEN, MONZO_USER_ID and MONZO_ACCOUNT_ID. Adding the per-type account IDs is recommended — it cuts the number of API calls. Install with uv, then either uv run mcp install main.py or point your client at main.py, making sure requests is in the --with list.