Skip to main content
Glama
bokio-mcp

bokio-mcp

bokio_profit_and_loss

Read-only

Calculate profit and loss for a date range by summing BAS class 3–8 result accounts, grouped by class or account, and return profit as a positive value.

Instructions

Sum the result accounts (BAS classes 3-8) for a period, grouped by class or by account, with result = negated total so that profit is positive. For balance-sheet accounts use bokio_account_balances. Amounts in ledger sign: debit positive, credit negative.

Input Schema

NameRequiredDescriptionDefault
toYesLast day, inclusive (YYYY-MM-DD).
fromYesFirst day, inclusive (YYYY-MM-DD).
groupByNoGroup by BAS class (3-8) or by account; default class.class
companyIdNoBokio company id. Defaults to BOKIO_COMPANY_ID if omitted.

Output Schema

NameRequiredDescriptionDefault
toYes
fromYes
rowsYes
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv0.5.0
    • addedInput schema / properties / from / description
      Added value: +"First day, inclusive (YYYY-MM-DD)."
    • addedInput schema / properties / groupBy / description
      Added value: +"Group by BAS class (3-8) or by account; default class."
    • addedInput schema / properties / to / description
      Added value: +"Last day, inclusive (YYYY-MM-DD)."
  2. Addedv0.4.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, so safety is covered; the description adds non-obvious behavioral context the annotations cannot: results are negated so profit is positive, and amounts follow ledger sign (debit positive, credit negative). This sign convention is exactly the kind of detail that prevents misreading aggregates, though return structure and whether zero-balance classes are included are left unstated.

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?

Three short sentences, front-loaded with what gets summed and over what period, then the alternative tool, then the sign convention. No filler and no repetition of schema fields.

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

Completeness5/5

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

With an output schema present, the description need not explain return shape, and annotations cover the safety profile. All four parameters are documented in the schema, leaving only the aggregation semantics and sign convention for the description, both of which it supplies succinctly.

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 still earns credit by grounding groupBy in accounting meaning (class 3-8 vs. account) and by stating that the period is the aggregation window. The ledger-sign note also clarifies how the aggregated amounts should be interpreted.

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

Purpose5/5

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

"Sum the result accounts (BAS classes 3-8) for a period" states a specific verb, resource, and accounting scope, and the negated-total rule makes the output meaning unambiguous. It explicitly differentiates itself from bokio_account_balances, so an agent can pick it without comparing schemas.

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

Usage Guidelines4/5

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

The description names the sibling to use for the complementary case ("For balance-sheet accounts use bokio_account_balances"), which is a clear routing rule. It stops short of covering edge conditions such as fiscal-year selection or which period boundaries to use, so it is clear context without full exclusions.

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