Skip to main content
Glama
stornoro

Storno CLI

by stornoro

fiscal_calendar

Check upcoming and overdue fiscal filing deadlines for Romanian companies, with adjusted due dates and status tracking. Supports single or all companies.

Instructions

Filing deadlines of the company for the next days days (default 60, max 366) from from (default today), plus the unfiled ones of the last month. Items: code (D300, D390, D394, D301, D100, D112, D406 SAF-T, D212, BILANT, and from the rental-contract dosare: C168 registration deadline, D212_ESTIMAT estimated income of a new contract for a natural person, CONTRACT_END contract end; these carry dosarId / dosarTitle), label, dueDate (moved to the next working day after weekends and Romanian legal holidays), nominalDueDate, daysLeft, period {year, month | quarter, from, to}, appliesBecause (vat_payer, intra_community_operations, non_vat_payer_foreign_suppliers, income_tax, employees, saft, individual, company, rental_contract), declarationType (the type to pass to declarations_create — D406 is generated in Storno as well, only the annual statements and the contract-end reminder carry null) and status: due, overdue (past due, nothing submitted) or filed (a submitted / accepted declaration of that type exists for the period). With allCompanies=true the list covers every company the user can see, each item carrying its company. The rules follow the company settings vatPeriod, incomeTaxPeriod and hasEmployees (companies_update).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoWindow length in days (default 60)
fromNoStart date YYYY-MM-DD (default today)
companyIdNoCompany UUID (overrides STORNO_COMPANY_ID env var)
allCompaniesNoAll companies of the organization instead of one (accountant view)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.0.48

TDQS

A4.5/5.0
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses that dueDate is moved to the next working day after weekends/holidays, explains status categories (due, overdue, filed) with their conditions, and notes that allCompanies returns items for every visible company. It doesn't mention side effects (assumed read-only) or error cases, but given the breadth of behavior covered, it is quite transparent.

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 long but densely packed with necessary details. Every sentence contributes: it covers defaults, item fields, dueDate logic, status semantics, appliesBecause values, declarationType linkage, allCompanies behavior, and rule basis. There is no fluff or repetition; the structure flows from purpose to specifics.

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?

Given there is no output schema, the description fully defines the return items: code, label, dueDate, nominalDueDate, daysLeft, period, appliesBecause, declarationType, status. It also explains the filtering logic (unfiled last month) and the allCompanies scope. It ties declarationType to declarations_create for follow-up actions. Nothing essential for an agent to call and interpret results is missing.

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 description already has parameter docs. However, it adds default values (days=60, from=today) that aren't fully in the schema, clarifies the meaning of allCompanies as the 'accountant view', and explains the interplay with company settings. This goes beyond the schema and helps disambiguate parameter usage.

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?

The description clearly states the tool's purpose: it returns filing deadlines for a company over a specified window. It lists specific deadline types and details about each item, making it distinct from sibling tools like declarations_list or declarations_create. The verb is implicit (returns/gets), but the resource is explicit and the scope is well-defined.

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 explains the default parameters and the allCompanies option for an accountant view, which implies when to use each. It also mentions that declarationType is meant to be passed to declarations_create, linking usage to another tool. However, it doesn't explicitly contrast with alternatives or state 'use this when...' — that's left to inference.

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

Deploy Server

Other Tools