loading…
Search for a command to run...
loading…
Read-only MCP server for the Monzo banking API (UK). OAuth with auto-refresh, local SQLite transaction cache, full-text search, and spending analysis with categ
Read-only MCP server for the Monzo banking API (UK). OAuth with auto-refresh, local SQLite transaction cache, full-text search, and spending analysis with category breakdowns.
CI License: GPL v3 Python 3.13+ Glama MCP Server
MCP server for the Monzo banking API. Read-only access to accounts, balances, pots, transactions, and spending analysis - all through Claude Code or any MCP client.
Unlike other Monzo MCP implementations that use raw bearer tokens (which expire in 6 hours), this server handles full OAuth with automatic token refresh.
| Tool | Description | Data source |
|---|---|---|
monzo_list_accounts |
List accounts with types and IDs | Live API |
monzo_get_balance |
Current balance and spend today | Live API |
monzo_list_pots |
Savings pots and balances | Live API |
monzo_sync |
Sync transactions to local cache | Live API -> SQLite |
monzo_list_transactions |
List/filter cached transactions | Local cache |
monzo_search_transactions |
Search by merchant/description/notes | Local cache |
monzo_spending |
Spending analysis with category breakdown | Local cache |
git clone https://github.com/partymola/monzo-mcp.git
cd monzo-mcp
uv venv --python 3.13 .venv
uv pip install -e .
Go to developers.monzo.com and create an OAuth client:
http://localhost:6600/callbackmonzo-mcp auth
This opens your browser for Monzo OAuth. After authorizing, approve the login in your Monzo app within 5 minutes for full transaction history access (Monzo's SCA window).
claude mcp add -s user monzo -- /path/to/monzo-mcp/.venv/bin/monzo-mcp
In Claude Code, run monzo_sync to populate the local transaction cache. Do this immediately after auth to take advantage of the SCA window (up to 11 months of history).
All configuration is via environment variables (optional):
| Variable | Default | Description |
|---|---|---|
MONZO_MCP_CONFIG_DIR |
<package>/config/ |
Directory for OAuth credentials and tokens |
MONZO_MCP_DB_PATH |
<package>/monzo.db |
Path to SQLite transaction cache |
Credential files (created by monzo-mcp auth):
config/monzo_client.json - OAuth client ID and secretconfig/monzo_tokens.json - Access and refresh tokens (auto-refreshed)Monzo's Strong Customer Authentication (SCA) limits transaction history access:
The local SQLite cache preserves all synced transactions permanently, so run monzo_sync promptly after monzo-mcp auth.
config/ directory (gitignored)See CONTRIBUTING.md for development setup, the test workflow, and the pre-commit hook. Changes are tracked in CHANGELOG.md.
GPL-3.0-or-later. See LICENSE.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"partymola-monzo-mcp": {
"command": "npx",
"args": []
}
}
}Query your database in natural language
Read-only database access with schema inspection.
Interact with Redis key-value stores.
Database interaction and business intelligence capabilities.