MCP server for Lunch Money personal finance management, providing tools to manage transactions, categories, accounts, tags, recurring items, and budget summaries
Server has 34 well-structured tools with consistent naming (verb_noun pattern) and complete input schemas. All tools have descriptions and parameters are typed. However, descriptions are uniformly terse (10-30 chars), falling well below the 50-200 char LLM-optimized baseline. Parameter descriptions lack actionable constraints (enums, ranges, formats). Output schemas are not documented. Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. Tool composition is sound (single responsibility), but descriptions do not explain WHEN to use each tool or dependencies between them.
Attach a file to a transaction
Create a new category
Create a new manual account
Create a new tag
Create a new transaction
Delete a category
Delete a manual account
Delete a tag
All tool descriptions are under 30 characters, far below the 50-200 char LLM-optimized baseline. Descriptions like 'Get current user information' and 'List all categories' lack context for when/why to use each tool, dependencies, or expected output structure.
Parameter descriptions are minimal (10-20 chars) and lack actionable constraints. E.g., 'format' param in list_categories says 'Response format (nested or flattened)' but does not specify which is default, when to use each, or what the output structure looks like. No enums, ranges, or format specifications.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | <=2025-11-25 | v2 |
Delete a transaction
Delete a transaction attachment
Get budget summary for a date range
Get a single category by ID
Get a single manual account by ID
Get current user information
Get a single Plaid account by ID
Get a single recurring item by ID
Get a single tag by ID
Get a single transaction by ID
Get the URL for a transaction attachment
Group multiple transactions together
List all categories
List all manually-managed accounts
List all Plaid-connected accounts
List all recurring items
List all tags
List all transactions
Split a transaction into multiple child transactions
Trigger a fetch for Plaid account transactions
Ungroup a grouped transaction
Unsplit a transaction
Update a category
Update a manual account
Update a tag
Update a transaction
No output schemas documented. LLMs cannot infer what fields to expect from responses, forcing them to guess at downstream tool parameters. E.g., does list_transactions return transaction_id or id? Does it include category_id for chaining to update_category?
No error handling or recovery guidance. Tools do not document what errors are retryable, what user-fixable errors look like, or how to recover. E.g., delete_category with force=false may fail if category has dependencies, no guidance on what to do next.
Destructive operations (delete_*) lack confirmation or dry-run support. Agents can permanently delete categories, transactions, or accounts without a safety gate. No pattern:confirmation-request implemented.