Lunch Money MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Server port, defaults to 8080 | 8080 |
| SERVER_API_KEY | No | API key for server authentication. If set, all requests must include this key in the Authorization header (format: Bearer <key> or just <key>) | |
| LUNCH_MONEY_API_TOKEN | Yes | Your Lunch Money API access token |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| logging | {} |
| completions | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| getUserB | Get the current user's account details including email, name, currency preferences, and settings |
| getCategoriesB | List all categories including category groups and parent categories |
| createCategoryC | Create a new spending or income category |
| updateCategoryC | Update an existing category's properties |
| deleteCategoryC | Delete a category by ID |
| getTagsB | List all transaction tags |
| createTagC | Create a new tag for categorizing transactions |
| updateTagC | Update an existing tag's name |
| deleteTagC | Delete a tag by ID |
| getTransactionsC | List transactions with advanced filtering options including date range, category, tags, account, and status |
| createTransactionC | Create a new transaction (expense, income, or transfer) |
| updateTransactionC | Update an existing transaction's properties |
| deleteTransactionC | Delete a transaction by ID |
| bulkUpdateTransactionsC | Bulk update multiple transactions with the same changes (category, tags, notes, status) |
| getRecurringItemsB | List all recurring expense and income items |
| createRecurringItemC | Create a new recurring expense or income item |
| updateRecurringItemC | Update an existing recurring item's properties |
| deleteRecurringItemC | Delete a recurring item by ID |
| getBudgetsB | List all budgets with their category assignments and date ranges |
| createBudgetC | Create a new budget for a category with amount and date range |
| updateBudgetC | Update an existing budget's amount, category, or date range |
| deleteBudgetC | Delete a budget by ID |
| getAssetsB | List all manually-managed assets |
| createAssetC | Create a new manually-managed asset |
| updateAssetC | Update an existing asset's properties including balance and metadata |
| deleteAssetB | Delete an asset by ID |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 26 tools
Every tool has a clearly distinct purpose targeting specific resources (e.g., assets, budgets, categories) and actions (create, get, update, delete), with no overlap or ambiguity. For example, bulkUpdateTransactions handles multiple transactions uniquely, while other tools manage individual entities.
Tool names follow a consistent verb_noun pattern throughout, such as createAsset, getAssets, updateAsset, deleteAsset, with no deviations in style or convention. This predictability makes it easy for agents to understand and select the correct tool.
With 26 tools, the count is borderline high for a personal finance server, potentially feeling heavy but still manageable. It covers a broad domain comprehensively, though it might be overwhelming compared to more focused servers with fewer tools.
The tool set provides complete CRUD/lifecycle coverage for all core entities (assets, budgets, categories, recurring items, tags, transactions, and user details), with no obvious gaps. Each resource has create, get, update, and delete operations, ensuring agents can handle full workflows without dead ends.