Lunchmoney Mcp V2

by leafeye

1 stars
120 downloads
Not rated
GitHub

About

Lunchmoney Mcp V2 is the first MCP server built on the Lunch Money v2 API. It provides 14 tools for reading, creating, updating, deleting, and performing advanced operations on personal finance data (transactions, categories, tags, accounts, budgets, recurring items). Designed…

Details

Author
leafeye
GitHub stars
1
Downloads
120
Categories
Other

- 14 tools covering read, CRUD, and advanced operations
- Hydrated responses: category, tag, and account names instead of raw IDs
- Smart caching: categories, tags, accounts cached at startup, auto-refreshed after mutations
- Type-safe: generated from the official OpenAPI spec via openapi-typescript

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Lunchmoney Mcp V2
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Add the server configuration to Claude Desktop or Claude Code’s MCP JSON file, setting the command to npx lunchmoney-mcp-v2 and the LUNCHMONEY_TOKEN environment variable to your API token (obtained from the Lunch Money Developer settings). Once connected, simply ask your LLM natural-language questions or commands.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "lunchmoney mcp v2": {
            "lunchmoney": {
                "command": "npx",
                "args": [
                    "lunchmoney-mcp-v2"
                ],
                "env": {
                    "LUNCHMONEY_TOKEN": "your-api-token-here"
                }
            }
        }
    }
}

McpServers

{
    "lunchmoney": {
        "command": "npx",
        "args": [
            "lunchmoney-mcp-v2"
        ],
        "env": {
            "LUNCHMONEY_TOKEN": "your-api-token-here"
        }
    }
}

lunchmoney-mcp-v2

MCP server for the Lunch Money API v2. First MCP server built on the v2 API.

Features

- 14 tools covering read, CRUD, and advanced operations
- Hydrated responses: category, tag, and account names instead of raw IDs
- Smart caching: categories, tags, and accounts cached at startup, auto-refreshed after mutations
- Type-safe: generated from the official OpenAPI spec via openapi-typescript

Setup

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "lunchmoney": {
      "command": "npx",
      "args": ["lunchmoney-mcp-v2"],
      "env": {
        "LUNCHMONEY_TOKEN": "your-api-token-here"
      }
    }
  }
}

Claude Code

Add to .mcp.json in your project or ~/.claude/mcp.json globally:

{
  "mcpServers": {
    "lunchmoney": {
      "command": "npx",
      "args": ["lunchmoney-mcp-v2"],
      "env": {
        "LUNCHMONEY_TOKEN": "your-api-token-here"
      }
    }
  }
}

Get your API token from Lunch Money Developer settings.

Tools

Read

| Tool | Description |
|---|---|
| get_user | Account info (name, email, currency) |
| list_transactions | List/search transactions with filters, or look up by ID |
| list_categories | All categories (nested or flat view) |
| list_tags | All tags |
| get_accounts | Manual + synced accounts with balances |
| get_summary | Budget summary with income/spending/per-category breakdown |
| get_recurring | Recurring items (subscriptions, bills, income) |

CRUD

| Tool | Actions | Description |
|---|---|---|
| manage_transaction | create, update, delete | Single transaction operations |
| manage_category | create, update, delete | Category management (force delete with dependency info) |
| manage_tag | create, update, delete | Tag management (force delete with dependency info) |
| manage_account | create, update, delete | Manual account management (Plaid accounts are read-only) |

Advanced

| Tool | Actions | Description |
|---|---|---|
| bulk_update_transactions | — | Batch update up to 500 transactions at once |
| split_transaction | split, unsplit | Split a transaction into parts or restore the original |
| group_transactions | group, ungroup | Combine transactions into a group or restore originals |

Example prompts

Once connected, just ask your LLM naturally:

Reviewing & organizing
- "Show me all unreviewed transactions from this month"
- "Categorize all my Amazon transactions as Shopping"
- "What did I spend on groceries last week?"
- "Mark these 5 transactions as reviewed"

Budget overview
- "Give me a spending summary for January"
- "What are my recurring expenses?"
- "How much do I have in each account?"

Managing transactions
- "Add a $45 transaction for dinner at Nobu yesterday"
- "Split that $120 Costco transaction into $80 groceries and $40 household"
- "Group these three Uber transactions into one"
- "Delete the duplicate transaction I just created"

Organizing
- "Create a new category called Side Projects"
- "Tag these transactions with travel"
- "Show me all my categories with their IDs"
- "Rename the Dining Out category to Restaurants"

Development

npm install
npm run build
npm start

Regenerate types from the OpenAPI spec:

npm run generate:types

Architecture

src/
  index.ts          Entry point — registers tools, initializes cache
  client.ts         openapi-fetch client + error handling
  cache.ts          In-memory cache for categories, tags, accounts
  format.ts         Text formatters for all response types
  types.ts          Generated from @lunch-money/v2-api-spec
  tools/
    user.ts         get_user
    transactions.ts list_transactions, manage_transaction, bulk_update, split, group
    categories.ts   list_categories, manage_category
    tags.ts         list_tags, manage_tag
    accounts.ts     get_accounts, manage_account
    summary.ts      get_summary
    recurring.ts    get_recurring

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.