Skip to main content
Glama
edkranz

Up Bank MCP Server

by edkranz

Up Bank MCP Server

MCP wrapper of the Python Up Bank API Wrapper up-bank-api (credit to @jcwillox) (it's wrappers all the way down)

Made for Claude, by Claude (lol)

This is a Model Context Protocol (MCP) server that provides tools for interacting with the Up Bank API. It allows you to manage accounts, transactions, categories, tags, and webhooks through MCP-enabled clients like Claude for Desktop.

Feel free to contribute if you want to better optimise it for LLM, etc. However it's fine as is. I just wanted to learn how to make an MCP server.

Now Claude can roast me for my transaction history, what else is it good for?

Claude roasting me Figure: Too much takeout I guess

Prerequisites

  • Python 3.10 or higher

  • Up Bank API token

  • uv package manager

Related MCP server: Monzo Claude Connector

Installation

  1. First, install uv by running:

    curl -LsSf https://astral.sh/uv/install.sh | sh

    Make sure to restart your terminal after installing uv.

  2. Clone this repository and navigate to it:

    git clone <repository-url>
    cd up-mcp
  3. Create and activate a virtual environment:

    uv venv
    source .venv/bin/activate  # On Windows, use: .venv\Scripts\activate
  4. Install dependencies:

    uv pip install -r requirements.txt

Using with Claude for Desktop or other MCP-enabled clients

  1. Open your Claude (or other MCP-enabled) configuration file:

    • macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %AppData%\Claude\claude_desktop_config.json

  2. Add the server configuration:

{
  "mcpServers": {
    "up-mcp": {
      "command": "/ABSOLUTE/PATH/TO/uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/up-mcp",
        "run",
        "up_mcp.py"
      ],
      "env": {
        "UP_TOKEN": "up:yeah:your-token-here"
      }
    }
  }
}

Replace /ABSOLUTE/PATH/TO/uv with the absolute path to your uv executable. Replace /ABSOLUTE/PATH/TO/up-mcp with the absolute path to your project directory. Replace up:yeah:your-token-here with your Up Bank API token.

Get your Up Bank API token from the Up Bank website (https://api.up.com.au/).

  1. Restart Claude for Desktop.

Available Tools

The server provides the following tools:

  • Account management (get accounts, get specific account)

  • Transaction management (get transactions, get specific transaction)

  • Category management (get categories, categorize transactions)

  • Tag management (get tags, add/remove tags from transactions)

  • Webhook management (create, delete, ping webhooks)

Testing

You can test the server using the included test.py script:

python test.py

This will run through basic functionality tests including account retrieval and transaction listing.

Troubleshooting

If you encounter issues:

  1. Verify your UP_TOKEN environment variable is set correctly

  2. Check that all dependencies are installed correctly

  3. Ensure you're using Python 3.10 or higher

  4. Check Claude's logs for MCP-related issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables integration with Up Banking API to query account balances, transaction history, and spending categories. Supports filtering transactions by date, category, tags, and account type for comprehensive banking insights.
    7
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A remote MCP server on Cloudflare Workers that gives Claude read-only access to your Monzo account, enabling balance checks, transaction listing, and pot management via natural language.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that connects Claude (and other MCP clients) to your Monarch Money financial data, allowing you to query accounts, transactions, and budgets, or update transactions and budget amounts through natural language.
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients to interact with Up Bank accounts and transactions, including reading balances, summarizing spending, and categorizing or tagging transactions.
    -