Skip to main content
Glama
AzeemWaqarRao

expense-tracker-mcp

add_expense

Log an expense in PKR with just the amount. Add date, merchant, category, note, or tags as needed; category is inferred from past expenses when omitted.

Instructions

Log an expense in PKR. Only amount is required.

date accepts YYYY-MM-DD, 'today', 'yesterday', '-3d', or a day number; it defaults to today. When category is omitted it is inferred from previous expenses at the same merchant. The returned record reflects what was actually saved, including anything inferred.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dateNo
noteNo
tagsNo
amountYes
categoryNo
merchantNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently explains that `date` defaults to today, that omitted `category` may be inferred from previous expenses at the same merchant, and that the returned record reflects exactly what was saved. This gives an agent a realistic picture of side effects and return-value behavior. It does not mention permissions or reversibility, but those are less critical for a create operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-organized: one sentence establishes the core action, a second explains date handling, and a third covers inference and return semantics. There is no filler, no repetition of schema metadata, and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter create tool with no annotations and zero schema descriptions, this description covers the essential operating details: currency, required field, date grammar, category inference, and the fact that the returned record reflects saved values. The optional `note` and `tags` are not explained, but they are low-risk and inferable. An agent has enough information to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero property descriptions, so the description must supply parameter meaning. It does this well for the key parameters: `amount` is required, `date` has concrete accepted formats and a default, and `category` has an explicit inference rule. `merchant` is mentioned indirectly as the basis for category inference. `note` and `tags` are left undescribed, but they are optional and their names/schema types make them reasonably self-explanatory.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Log an expense in PKR.' It clearly communicates this is a single-expense creation operation and adds useful scope (currency, required amount). It does not explicitly differentiate from the sibling `add_expenses`, relying on singular/plural inference, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives like `add_expenses`, `update_expense`, or `delete_expense`. The description explains parameter behavior (date default, category inference) but never addresses tool selection context or exclusions, leaving the agent to infer when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.