Allows tracking of Bitcoin and other cryptocurrency holdings, including viewing balances and updating manually tracked crypto assets.
Required runtime environment for the LunchMoney MCP server, with Node.js 16+ needed for operation.
Used for type-safe implementation of the LunchMoney MCP server.
Employed for data validation within the LunchMoney MCP server implementation.
LunchMoney MCP Server
A Model Context Protocol (MCP) server implementation for LunchMoney, providing programmatic access to personal finance management through LunchMoney's API.
Overview
This MCP server enables AI assistants and other MCP clients to interact with LunchMoney data, allowing for automated financial insights, transaction management, budgeting, and more.
Features
Comprehensive Tool Coverage
- User Management - Access user account details
- Categories - Create, update, and organize spending categories
- Tags - Manage transaction tags
- Transactions - Full CRUD operations on transactions with advanced filtering
- Recurring Items - Track and manage recurring expenses
- Budgets - Create and monitor budgets by category
- Assets - Track manually-managed assets
- Plaid Accounts - Manage connected bank accounts
- Cryptocurrency - Track crypto holdings
Key Capabilities
- Full integration with LunchMoney API v1
- Type-safe implementation with TypeScript and Zod validation
- Modular architecture for easy extension
- Standard MCP server implementation using stdio transport
Usage
With MCP Clients
To use this MCP server with any MCP-compatible client (such as Claude Desktop), you need to add it to the client's configuration.
Configuration
The server can be configured in your MCP client's configuration file. The exact location and format may vary by client, but typically follows this pattern:
Replace "your-api-token-here"
with your actual LunchMoney API token from LunchMoney Developer Settings.
Common MCP Client Configuration Locations
Different MCP clients store their configuration in different locations:
- Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
- Other MCP Clients: Check your client's documentation for the configuration file location.
Setup Steps
- Locate your MCP client's configuration file (create it if it doesn't exist).
- Add the LunchMoney server configuration to the
mcpServers
section. - Save the file and restart your MCP client.
- The LunchMoney tools should now be available in your client.
Requirements
- Node.js 16+ installed on your system
npx
available in your system PATH- Valid LunchMoney API token with appropriate permissions
As a standalone MCP server
Example Prompts
Here are some example prompts you can use with the LunchMoney MCP server:
Account Overview
- "Show me my LunchMoney account details"
- "What's my current account status?"
Category Management
- "List all my spending categories"
- "Create a new category called 'Subscriptions' with a monthly budget of $100"
- "Show me details for my 'Food & Dining' category"
- "Create a category group for all my entertainment expenses"
- "Delete the 'Unused Category' and reassign its transactions to 'Miscellaneous'"
Transaction Management
- "Show me all transactions from last month"
- "Find all transactions over $100 in the past week"
- "Create a new expense for $45.99 at Amazon in the Shopping category"
- "Update transaction #12345 to change the amount to $50"
- "Show me all pending transactions"
- "Group these coffee shop transactions together"
Budgeting
- "Show me my budget summary for this month"
- "Set a budget of $500 for Groceries this month"
- "Remove the budget for Entertainment category"
- "How much have I spent vs budgeted in each category?"
Asset Tracking
- "List all my assets"
- "Create a new asset for my savings account with a balance of $10,000"
- "Update my investment account balance to $25,000"
Recurring Expenses
- "Show me all my recurring expenses"
- "What subscriptions do I have?"
- "List recurring items for the next 3 months"
Banking Integration
- "Show me all my connected Plaid accounts"
- "Refresh my bank account data"
- "Trigger a sync for my checking account"
Cryptocurrency
- "Show me all my crypto holdings"
- "Update my Bitcoin balance to 0.5 BTC"
- "List all my manually tracked crypto assets"
Analysis & Insights
- "What are my top spending categories this month?"
- "Show me all transactions tagged as 'vacation'"
- "Find all transactions at coffee shops"
- "List all transactions that need to be categorized"
Available Tools
User Tools
get_user
- Retrieve current user details
Category Tools
get_all_categories
- List all spending categoriesget_single_category
- Get details for a specific categorycreate_category
- Create a new categorycreate_category_group
- Create a category groupupdate_category
- Update category propertiesadd_to_category_group
- Add categories to a groupdelete_category
- Delete a categoryforce_delete_category
- Force delete with data cleanup
Tag Tools
get_all_tags
- List all available tags
Transaction Tools
get_transactions
- List transactions with extensive filtering optionsget_single_transaction
- Get detailed transaction informationcreate_transactions
- Create new transactionsupdate_transaction
- Update existing transactionunsplit_transactions
- Remove transactions from split groupsget_transaction_group
- Get transaction group detailscreate_transaction_group
- Create a transaction groupdelete_transaction_group
- Delete a transaction group
Recurring Items Tools
get_recurring_items
- List recurring items for a date range
Budget Tools
get_budget_summary
- Get budget summary by date rangeupsert_budget
- Create or update budget amountsremove_budget
- Remove budget for a category
Asset Tools
get_all_assets
- List all manually-managed assetscreate_asset
- Create a new assetupdate_asset
- Update asset properties
Plaid Account Tools
get_all_plaid_accounts
- List all connected Plaid accountstrigger_plaid_fetch
- Trigger fetch of latest data from Plaid
Crypto Tools
get_all_crypto
- List all cryptocurrency assetsupdate_manual_crypto
- Update balance for manually-managed crypto
Development
Project Structure
Building
Adding New Tools
- Create a new file in
src/tools/
- Implement tool handlers using the MCP SDK
- Register tools in
src/index.ts
- Add types to
src/types.ts
if needed
API Reference
The server implements the full LunchMoney API v1. For detailed API documentation, see:
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
An MCP server implementation that provides programmatic access to personal finance data through LunchMoney's API, enabling AI assistants to manage transactions, budgets, categories, and assets.
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that lets AI assistants interact with your Lunchmoney data, enabling natural language queries about transactions, budgets, and spending patterns.Last updated -42317TypeScriptMIT License
- -securityFlicense-qualityAn MCP server that enables AI assistants to interact with Flutterwave payment services, providing tools for transaction management, payment link generation, and automated customer support.Last updated -TypeScript
- -securityFlicense-qualityAn MCP Server that provides a conversational interface to the UK Open Banking account information API, allowing agents to interact with bank account data through natural language commands.Last updated -Python
- -securityFlicense-qualityAn MCP server that provides access to personal financial data from Monarch Money, allowing users to retrieve account information, transactions, budgets, goals, and net worth through natural language queries.Last updated -Python