Skip to main content
Glama

Final POS – Custom POS Builder

Delete tax rate

hub_delete_tax_rate
Destructive

Permanently delete a tax rate FROM THE WHOLE COMPANY. Takes the tax rate id from get_taxes. THIS CASCADES: the rate is stripped out of every tax group that lists it and all of its per-outlet percentages are deleted with it. Products in those groups immediately stop being charged this tax. This is almost never what a merchant means when they say "remove the tax from X" — that is remove_tax_rate_from_group. Use this one only when they say the rate should not exist at all any more. CONFIRM WITH THE MERCHANT BEFORE CALLING, naming the rate and listing every group it will disappear from. There is no undo and no way to recover the percentages. Sales already rung up are NOT recalculated — this only affects sales from now on.

Input Schema

NameRequiredDescriptionDefault
taxRateIdYesTax rate id from get_taxes — not a name

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true and readOnlyHint=false, but the description goes well beyond them by disclosing the cascade into tax groups, deletion of per-outlet percentages, immediate tax impact on products, irreversibility, and that past sales are not recalculated. These are exactly the consequences an agent needs before invoking a destructive mutation.

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 front-loaded with the irreversible action and scope, then layers cascade effects, the safer alternative, confirmation requirements, and retroactivity limits. It is long but every sentence is decision-critical for a destructive tool, and capitalization is used deliberately to surface risk.

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?

For a destructive, no-output tool with only one parameter, the description covers the cascade, the alternative tool, confirmation prerequisites, irreversibility, and the forward-only effect on sales. Nothing essential for correct invocation appears to be missing.

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

Parameters3/5

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

Schema description coverage is 100% and the single required parameter taxRateId is documented as coming from get_taxes and not being a name. The description repeats that same sourcing ('Takes the tax rate id from get_taxes') without adding syntax, format, or validation detail beyond the schema, so the baseline 3 is appropriate.

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 states a specific verb and resource ('Permanently delete a tax rate') and immediately scopes it ('FROM THE WHOLE COMPANY'). It explicitly distinguishes this from the sibling hub_remove_tax_rate_from_group, so an agent can route correctly without opening either schema.

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

Usage Guidelines5/5

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

It gives explicit when-not guidance: 'This is almost never what a merchant means... that is remove_tax_rate_from_group.' It also states the narrow condition for using this tool ('only when they say the rate should not exist at all any more') and adds a required confirmation step.

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.