Skip to main content
Glama

TaxCompass — Italian tax tools

calculate_italian_tax

Read-onlyIdempotent

Compute exact Italian tax for one regime at a given annual revenue.

Deterministic calculation (not an estimate): substitute/income tax, INPS
social contributions, net income, and effective rate. `breakdown.eligible`
is False when the regime doesn't apply to the inputs (e.g. forfettario above
the €85k cap) — present that as "not eligible", not as a real option.

Args:
    revenue_eur: Gross annual revenue in EUR.
    regime: One of `forfettario_5`, `forfettario_15`, `ordinario`,
        `ordinario_impatriati`.
    coefficient: Forfettario coefficiente di redditività (0.40–0.86, set by
        the activity's ATECO group). Omit for the professional-services
        default (0.78). Ignored by non-forfettario regimes.
    cost_ratio: Deductible costs as a fraction of revenue (0–1), used by
        ordinario/impatriati. Ignored by forfettario.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
regimeNoforfettario_15
cost_ratioNo
coefficientNo
revenue_eurYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
breakdownYesFull numeric breakdown (taxes, contributions, net, effective rate).
disclaimerYes

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint and idempotentHint annotations, the description discloses deterministic calculation, the exact output components (tax, INPS, net income, effective rate), and the special meaning of breakdown.eligible being False for inapplicable regimes. It also explains parameter-ignoring behavior per regime, which is valuable non-obvious behavioral information.

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?

The description is well-structured with a summary sentence, a behavioral note, and an Args section. It is somewhat redundant with 'exact' and 'deterministic (not an estimate)' appearing early, but every sentence adds useful information about behavior or parameters. It remains compact relative to the complexity of the tool.

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 that an output schema is present, the description does not need to document return values. It covers all four parameters, regimes, eligibility behavior, and per-parameter applicability. The tool's complexity is substantial, but the description provides enough information for an agent to invoke it correctly without external knowledge.

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

Parameters5/5

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

The input schema has 0% description coverage, so the description carries the full burden for parameter documentation. It explains revenue_eur, enumerates the allowed regime values, gives the coefficient range, its ATECO context, the omit-default behavior, and the cost_ratio range and applicability. This fully compensates for the schema's lack of descriptions.

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 opens with a specific verb and resource: 'Compute exact Italian tax for one regime at a given annual revenue.' It clearly distinguishes itself from sibling tools by emphasizing 'for one regime' rather than comparison, listing, or searching tax sources. The deterministic calculation behavior further sharpens the purpose.

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 provides clear context on when to call this tool: to compute exact tax for a single regime given revenue, with explicit detail on regime-specific parameters and eligibility. It does not explicitly name alternatives or state when not to use it, but the 'one regime' framing implicitly separates it from compare_italian_regimes. This is strong but not maximally explicit.

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.

TDQS

A4.6/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: calculate targets one specific regime, compare evaluates all regimes side-by-side, and the two source tools cleanly separate listing available sources from searching their contents. There is no realistic risk of selecting the wrong tool for a task.

Naming Consistency4/5

Tool names follow a consistent lowercase snake_case verb-first pattern, e.g. calculate_italian_tax, compare_italian_regimes, search_italian_tax_sources. The one minor deviation is list_tax_sources, which omits the 'italian' descriptor that appears in the other source/search tool.

Tool Count5/5

Four tools is a well-scoped size for this server's purpose: two calculation/regime tools and two source-discovery/search tools. Each tool has a distinct and necessary role, with no redundant or filler tools.

Completeness4/5

The set covers the main workflows: single-regime calculation, cross-regime comparison, source discovery, and corpus search. Minor gaps exist, such as no explicit tax-year selection and no direct tool for retrieving raw tax tables outside of search, but the source search tool can mitigate these.

Resources