Skip to main content
Glama

Create record

create_record

Records an income or an expense; the category's type decides which. Currency defaults to the user's display currency and payment method to the one used by the most recent record (or the first payment method when there are no records yet). The date defaults to today in UTC, which can be a day off from the user's local date: pass the user's local date (YYYY-MM-DD) as date when you know it. The result lists the defaults that were applied.

Input Schema

NameRequiredDescriptionDefault
dateNoDay of the transaction; defaults to today in UTC, so pass the user's local date when you know it. Format: YYYY-MM-DD or an RFC 3339 timestamp such as 2026-03-05T14:30:00Z.
amountYesAmount in the record's currency, at least 0.01.
currencyNoCurrency of the amount; defaults to the user's display currency.
categoryIdYesCategory ID from list_categories.
descriptionNoShort description, e.g. the merchant or purpose.
paymentMethodIdNoPayment method ID from list_payment_methods; defaults to the payment method of the most recent record.

Output Schema

NameRequiredDescriptionDefault
recordYes
defaultsAppliedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / currency / enum
      Previous value: -[
      -  "MKD",
      -  "EUR",
      -  "USD",
      -  "AUD",
      -  "CHF",
      -  "GBP"
      -]New value: +[
      +  "MKD",
      +  "EUR",
      +  "USD",
      +  "AUD",
      +  "CHF",
      +  "GBP",
      +  "HUF",
      +  "RSD"
      +]
    • changedOutput schema / properties / defaultsApplied / properties / currency / enum
      Previous value: -[
      -  "MKD",
      -  "EUR",
      -  "USD",
      -  "AUD",
      -  "CHF",
      -  "GBP"
      -]New value: +[
      +  "MKD",
      +  "EUR",
      +  "USD",
      +  "AUD",
      +  "CHF",
      +  "GBP",
      +  "HUF",
      +  "RSD"
      +]
    • changedOutput schema / properties / record / properties / currency / enum
      Previous value: -[
      -  "MKD",
      -  "EUR",
      -  "USD",
      -  "AUD",
      -  "CHF",
      -  "GBP"
      -]New value: +[
      +  "MKD",
      +  "EUR",
      +  "USD",
      +  "AUD",
      +  "CHF",
      +  "GBP",
      +  "HUF",
      +  "RSD"
      +]
    • addedOutput schema / properties / record / properties / groupExpenseShareId
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
    • addedOutput schema / properties / record / properties / groupId
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maximum": 9007199254740991,
      +      "minimum": -9007199254740991,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
  2. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing the fallback chain for currency, payment method (most recent record, else first payment method) and date, plus the UTC-vs-local pitfall. The annotations only cover mutability; this default-resolution behavior is exactly the context an agent needs and would otherwise have to discover empirically.

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

Conciseness4/5

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

Three dense sentences, each carrying a distinct fact (record type derivation, defaults, date pitfall). The date guidance duplicates the schema's date description, which is the only mild waste.

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?

An output schema exists, so return values need no explanation, and the description still notes that the result lists applied defaults. Together with the defaults chain and date caveat, an agent has what it needs to call this 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?

Schema coverage is 100%, so the baseline is 3; the description earns one more by explaining that categoryId's type decides income vs expense, which the schema field only describes as 'Category ID from list_categories.' The date and currency default explanations largely restate schema text.

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?

States a specific verb (Records) and resource (income or expense) and explains that the category's type determines which. It is distinguishable from update_record and delete_record, though it never contrasts with create_recurring_expense, which the name alone does not fully disambiguate.

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

Usage Guidelines3/5

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

Gives conditional guidance for the date field ('pass the user's local date ... when you know it'), which is useful. However it never states when to use this over create_recurring_expense or update_record, so routing between siblings is left implicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.