Skip to main content
Glama

Irish Tax Hub

Calculate Irish Tax

calculate_tax
Read-only

Run an Irish tax calculator and return the full result.

Available calculators:

  • base: Calculate income tax, USC, and PRSI for a given salary. Supports single/married, multiple employments, tax credits.

  • refund: Estimate a PAYE tax refund by comparing tax paid vs tax owed.

  • tax-free-earnings: Calculate tax-free earnings date for someone arriving in or departing Ireland mid-year.

  • refund-for-move-date: Calculate tax refund for a specific move date (arriving/departing Ireland).

  • net-to-gross: Reverse-calculate the gross salary needed to achieve a target net income.

  • rental-income: Calculate tax on rental income including allowable expenses and mortgage interest.

  • self-employed: Calculate tax for self-employed individuals including PRSI Class S and expenses.

  • capital-gains: Calculate Capital Gains Tax (CGT) on asset disposals at 33%.

  • share-options: Calculate tax on share option exercise (RTSO — Relevant Tax on Share Options).

  • share-options-cgt: Calculate CGT on the sale of shares acquired via share options.

  • work-from-home-expense: Calculate e-worker tax relief for remote working expenses.

  • avc: Calculate maximum Additional Voluntary Contribution (AVC) and tax relief.

  • pension-value: Estimate pension fund value at retirement based on contributions and growth.

  • future-fund: Estimate future investment fund value with regular contributions.

  • mortgage: Calculate monthly mortgage repayments, total interest, and amortisation.

  • redundancy-tax: Calculate tax on redundancy and termination payments (SCSB, top-up, etc.).

  • mortgage-affordability: Calculate maximum mortgage you can afford based on income and LTI rules.

  • cat: Calculate Capital Acquisitions Tax (CAT) on gifts and inheritances.

  • sarp: Calculate SARP (Special Assignee Relief Programme) tax relief for foreign assignees.

  • vat3: Calculate VAT3 return figures for VAT-registered businesses.

Pass the calculator name and its required inputs. Use get_calculator_schema first if you need to know the exact input fields for a calculator.

Common examples:

base (income tax): {"marital_status": "single", "employment_income": {"income": 75000, "period": "annual"}, "year": 2026}

marital_status options: single, widow, married_one_income, married_two_income

refund: {"marital_status": "single", "employment_income": {"income": 50000, "tax_paid": 18000}, "year": 2026}

capital-gains: {"sale_price": 400000, "purchase_price": 250000, "purchase_date": "2018-03-15", "sale_date": "2026-06-01", "year": 2026}

mortgage: {"home_price": 400000, "deposit": 40000, "loan_term_years": 30, "interest_rate": 4.0}

work-from-home-expense: {"electricity_costs": 1200, "heating_costs": 800, "internet_costs": 600, "tax_year": 2026, "total_earnings": 75000, "days_working_from_home": 200}

avc: {"age": 45, "gross_earnings": 100000, "year": 2026}

share-options: {"share_option_price": 10, "sale_price": 50, "number_of_units": 1000}

redundancy-tax: {"employment_start_date": "2010-01-01", "employment_end_date": "2026-06-01", "gross_weekly_pay": 1500}

mortgage-affordability: {"buyer_type": "first_time_buyer", "gross_annual_income_1": 75000, "savings": 50000}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
inputsYesCalculator input parameters. Use `get_calculator_schema` to discover the required fields for a specific calculator.
calculator_nameYesThe calculator to run. See tool description for the full list.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
resultNo
statusYes
messageNo
breakdownNo
attributionYesSource attribution and a link back to Irish Tax Hub.
calculation_countNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnlyHint=true, no destruction, closed world), so the bar is lower and the description does not contradict them. It adds useful behavioral context about what each calculator computes and notes that the full result is returned, but says nothing about validation failures, unsupported year ranges, or partial-result behavior for the more complex calculators.

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?

Front-loaded with purpose, then the calculator list and examples, which are load-bearing for a 20-way dispatcher. It is long and the examples are numerous, but each line earns its place by disambiguating a calculator; a tighter grouping of examples would be the only improvement.

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, return-value documentation is not needed, and the description fully covers the dispatch contract, enum-to-meaning mapping, and input examples. For a polymorphic tool over a free-form object, nothing an agent needs to select and call it correctly is missing.

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?

Schema coverage is 100% and both parameters are named in the schema, yet the description goes well beyond it: the raw enum values ('sarp', 'vat3', 'cat', 'refund-for-move-date') would be opaque without the accompanying descriptions, and the 11 example payloads show concrete field shapes for the nested `inputs` object that the schema leaves as free-form additionalProperties.

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?

Opens with a specific verb+resource ('Run an Irish tax calculator and return the full result') and then enumerates all 20 supported calculators with a one-line scope for each, so the agent can map a user need to a calculator without opening the schema. It is clearly distinguished from informational siblings like list_calculators and get_calculator_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?

Explicitly states the invocation contract ('Pass the calculator name and its required inputs') and routes to the alternative in the exact condition where it is needed ('Use `get_calculator_schema` first if you need to know the exact input fields'). The per-calculator examples make the when-to-use decision concrete rather than inferable.

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.

Resources