Model Context Protocol (MCP) server for freee API integration
NL Tax Calculator is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Dutch tax: net salary, tax return, Box 3, 30% ruling, cross-border (DE/BE/UK/IN), WOZ, benefits.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http nl-tax-calculator-mcp https://nltaxcalculator.nl/dutch-tax/api/mcp
# 2 — ask your agent for something these tools do
# net_salary_netherlands, box3_wealth_tax, visa_salary_check and 10 more
NL Tax Calculator costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http nl-tax-calculator-mcp https://nltaxcalculator.nl/dutch-tax/api/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
13 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Gross-to-net salary in the Netherlands for 2026: income tax with the general and labour tax credits, optional 8% holiday allowance on top, the 30% ruling (with its salary norm and cap) and a pension contribution. Returns net per month and per year and the effective tax rate. Single employee below state pension age.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_annual | number | yes | Gross annual salary in euros, without holiday allowance (e.g. 60000) |
| holiday_allowance_on_top | boolean | no | Add the 8% holiday allowance (vakantiegeld) on top of the gross salary. Default false. |
| thirty_percent_ruling | boolean | no | The employee has the 30% ruling. Default false. |
| pension_percent | number | no | Employee pension contribution as % of salary, 0-30. Default 0. |
Box 3 tax on savings and investments in the Netherlands for 2026 (the notional-return system): the tax-free allowance, the notional return on savings, investments and debts, and the 36% tax. Optionally for fiscal partners (double allowance).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| savings | number | no | Bank and savings balances on 1 January, euros |
| investments | number | no | Investments and other assets (shares, crypto, a second home) on 1 January, euros |
| debts | number | no | Debts in Box 3 on 1 January (not the mortgage on your own home), euros |
| fiscal_partner | boolean | no | Filing together with a fiscal partner (amounts are the couple's total). Default false. |
Checks whether a salary meets the 2026 IND salary requirement for a Dutch highly skilled migrant (kennismigrant) permit or an EU Blue Card. Holiday allowance does not count; a 13th month counts only when paid monthly. Also checks the 30% ruling salary norm.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| salary | number | yes | Gross salary in euros, as in the offer |
| per | string | no | Whether salary is per year or per month. Default year. |
| includes_holiday_pay | boolean | no | The salary amount includes the 8% holiday allowance. Default false. |
| permit | string | no | hsm = highly skilled migrant, bluecard = EU Blue Card. Default hsm. |
| under_30 | boolean | no | Applicant is under 30 on the day the application is filed. Default false. |
| recent_graduate | boolean | no | Graduated within the last 3 years or on an orientation-year permit (reduced norm). Default false. |
| thirteenth_month | string | no | A 13th month: none, paid as a lump sum (does not count), or paid in 12 monthly parts (counts). Default none. |
For an employee whose Dutch contract ends: the statutory transition payment (transitievergoeding), unemployment benefit (WW) amount and duration under UWV rules, and for expats the highly skilled migrant / Blue Card search period end date and the last start date for a new job to keep the 30% ruling.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_monthly | number | yes | Gross base salary per month in euros, without holiday allowance |
| holiday_pay | boolean | no | Receives 8% holiday allowance. Default true. |
| employment_start | string | yes | Start date at this employer, YYYY-MM-DD |
| employment_end | string | yes | Last day of the contract, YYYY-MM-DD |
| work_history_start_year | number | no | First calendar year with 208+ paid hours in NL or the EU. Default: the employment start year. |
| four_of_five_years | boolean | no | Worked in at least 4 of the last 5 calendar years. Default true. |
| thirty_percent_ruling | boolean | no | Has the 30% ruling. Default false. |
| permit | string | no | none (EU citizen), hsm (highly skilled migrant) or bluecard. Default none. |
| permit_two_years | boolean | no | Has held the permit for 2 years or more when the job ends. Default false. |
Compares income tax on a gross salary in 2026 with the Belastingplan 2027 proposal (presented on Prinsjesdag 2026, a proposal until Parliament votes): brackets and tax credits, and the 30% ruling dropping to 27% unless it started before 2024.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_annual | number | yes | Gross annual salary in euros, without holiday allowance |
| thirty_percent_ruling | boolean | no | Has the 30% ruling. Default false. |
| ruling_started_before_2024 | boolean | no | The ruling started before 2024 (keeps 30% in 2027). Default false. |
Overdrachtsbelasting in 2026 when buying a home in the Netherlands: 2% for a home you live in, 0% for first-time buyers aged 18-34 up to a €555,000 price, 8% for other homes.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| price | number | yes | Purchase price / value in euros |
| own_home | boolean | no | The buyer will live in it as their main home. Default true. |
| buyer_age | number | no | Age of the buyer. Default 40. |
| first_time_starter_exemption | boolean | no | The buyer has never used the starters exemption. Default true. |
For a US citizen or green-card holder with a Dutch salary: Dutch tax, the creditable part (AOW/Anw premiums are not creditable under the US-Dutch totalization agreement), and the US tax for 2026 under the Foreign Earned Income Exclusion and under the Foreign Tax Credit, incl. the child tax credit and its refundable part.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_annual_eur | number | yes | Dutch gross annual salary in euros, without holiday allowance |
| filing_status | string | no | US filing status. Default single. |
| thirty_percent_ruling | boolean | no | Has the Dutch 30% ruling. Default false. |
| children | number | no | Qualifying children under 17 with an SSN. Default 0. |
| other_us_income_usd | number | no | Other US-taxed income, e.g. US dividends, in dollars. Default 0. |
| usd_per_eur | number | no | Exchange rate, dollars per euro. Default 1.13. |
Estimates the whole 2026 Dutch income tax return: Box 1 salary tax with the tax credits and the 30% ruling, the own home (eigenwoningforfait and mortgage interest, with the best split between fiscal partners), Box 3 on savings and investments, and tax-treaty relief for real estate abroad (exempt in the Netherlands). With the payroll tax already withheld it says whether you get money back or have t
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_annual | number | yes | Gross annual salary in euros, without holiday allowance |
| holiday_allowance_on_top | boolean | no | Add the 8% holiday allowance on top. Default true. |
| thirty_percent_ruling | boolean | no | Has the 30% ruling. Default false. |
| payroll_tax_withheld | number | no | Payroll tax (loonheffing) withheld in the year, from the annual statement (jaaropgaaf). Optional: without it no refund/payment is given. |
| partner_gross_annual | number | no | Fiscal partner's gross annual salary (filing together). Omit for a single filer. |
| partner_payroll_tax_withheld | number | no | Payroll tax withheld for the partner. Optional. |
| woz_value | number | no | WOZ value of the own home (main residence). Omit if renting. |
| mortgage_interest_annual | number | no | Mortgage interest paid in the year on the own home, euros |
| savings | number | no | Savings on 1 January (couple total if filing together) |
| investments | number | no | Investments and other assets on 1 January, INCLUDING the value of any property abroad |
| debts | number | no | Box 3 debts on 1 January (not the own-home mortgage) |
| foreign_property_value | number | no | Value of real estate abroad (already included in investments), for treaty relief |
| foreign_property_country | string | no | ISO country code of that property, e.g. IN, GB, US, ES. Default: other (the same relief applies without a treaty). |
Estimates 2026 Dutch income tax for a self-employed person (ZZP / eenmanszaak) from yearly revenue and business costs: profit, the self-employed deduction (1,225-hour criterion), starters deduction, SME profit exemption, tax credits, the separate income-related healthcare contribution (Zvw) and the income left after tax. Also shows the VAT charged on the revenue. Read-only calculation; it files no
| Parameter | Type | Required | Notes |
|---|---|---|---|
| revenue | number | yes | Yearly revenue in euros, excluding VAT |
| business_costs | number | no | Deductible business costs a year, excluding VAT. Default 0. |
| meets_hours_criterion | boolean | no | Works at least 1,225 hours a year on the business. Default true. |
| starter | boolean | no | Qualifies for the starters deduction (new entrepreneur). Default false. |
| vat_rate | number | no | VAT rate charged in %: 21, 9 or 0. Default 21. |
For buying a home in the Netherlands in 2026: an indicative maximum mortgage on income, the monthly annuity payment, the first-year mortgage interest deduction worked out with the real Box 1 calculation (eigenwoningforfait, the deduction capped at the second-bracket rate), net monthly cost and whether NHG (national mortgage guarantee) is possible.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| gross_annual_income | number | yes | Household gross annual income in euros (both partners together) |
| price | number | yes | Purchase price of the home in euros |
| loan_amount | number | no | Mortgage amount. Default: the price (Dutch mortgages go up to 100% of the value). |
| interest_rate_percent | number | no | Yearly interest rate in %, e.g. 3.9. Default 4. Use a current quote when you have one. |
| term_years | number | no | Term in years. Default 30. |
| other_monthly_debt | number | no | Other monthly debt payments (student loan, car loan). Default 0. |
| claimant_gross_income | number | no | Gross income of the partner who takes the interest deduction. Default: the household income. |
Estimates which main Dutch household benefits are likely for 2026, from income, assets, rent and children's ages, with indicative yearly amounts. Read-only; it does not apply for anything, and the Belastingdienst decides eligibility. Covers healthcare allowance (zorgtoeslag), rent allowance (huurtoeslag), child benefit (kinderbijslag), child budget (kindgebonden budget), the conditions for childca
| Parameter | Type | Required | Notes |
|---|---|---|---|
| income | number | yes | Your yearly gross income (toetsingsinkomen), euros |
| partner_income | number | no | Partner's yearly gross income. Omit if you have no (benefits) partner. |
| assets | number | no | Household savings and investments on 1 January. Default 0. |
| housing | string | no | Rent, own home, or other (e.g. living with parents). Default rent. |
| monthly_rent | number | no | Basic monthly rent (kale huur, without service costs). Needed for rent allowance. |
| child_ages | array | no | Ages of children under 18 living with you, e.g. [2, 7]. Default none. |
| you_work | boolean | no | You have paid work. Default true. |
| partner_works | boolean | no | Partner has paid work. Default true. |
| uses_childcare | boolean | no | Uses registered daycare, a childminder or after-school care. Default false. |
When the actual return on Box 3 assets was lower than the notional return, the Belastingdienst taxes the actual return instead (following the Supreme Court rulings). For one tax year from 2017 to 2026 this compares the notional Box 3 tax with the tax on the actual return (interest, dividends, rent and value changes minus interest paid), and estimates the difference that could be refunded and which
| Parameter | Type | Required | Notes |
|---|---|---|---|
| year | number | yes | Tax year, 2017 to 2026 |
| fiscal_partner | boolean | no | Amounts are a fiscal-partner couple's total. Default false. |
| savings | number | no | Savings on 1 January of that year |
| other_assets | number | no | Investments and other assets on 1 January |
| debts | number | no | Box 3 debts on 1 January |
| interest_received | number | no | Interest received in the year |
| dividends_and_rent | number | no | Dividends and net rental income received |
| value_change | number | no | End value minus start value of investments, corrected for purchases and sales (negative for a loss) |
| interest_paid | number | no | Interest paid on Box 3 debts |
| assessed_box3_tax | number | no | The Box 3 tax on the actual assessment, if known (more exact than the estimate) |
Reverse salary calculation for salary negotiations in the Netherlands (2026): the gross annual and monthly salary needed to take home a given net amount, with or without holiday allowance and the 30% ruling.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| target_net_monthly | number | yes | Net pay wanted per month in euros (yearly net / 12, so including holiday allowance when that is on) |
| holiday_allowance_on_top | boolean | no | The salary gets 8% holiday allowance on top. Default true. |
| thirty_percent_ruling | boolean | no | Will have the 30% ruling. Default false. |
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install NL Tax Calculator or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | minimal | capability blast radius (minimal) — client exposure if the model is manipulated | −0 |
| coverage-honesty | manifest | inspection depth (manifest) — how much of the target the scan could see | −4 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
The scan read each tool’s name, description, input schema and annotations exactly as the server listed them the last time it answered us; no code was reviewed. We ask the server again about once a month, and a list that changed is graded again.
The implementation source was not read — this reflects the declared tool metadata only.
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. minimal is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| net_salary_netherlands | no tags | |
| box3_wealth_tax | no tags | |
| visa_salary_check | no tags | |
| job_loss_planner | no tags | |
| dutch_tax_changes_2027 | no tags | |
| transfer_tax_netherlands | no tags | |
| us_tax_for_americans_in_netherlands | no tags | |
| income_tax_return_netherlands | no tags | |
| freelancer_tax_netherlands | no tags | |
| mortgage_netherlands | no tags | |
| benefits_toeslagen_check | no tags | |
| box3_actual_return_estimate | no tags | |
| gross_salary_for_target_net | no tags |
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
The public result for this release does not print the flow graph, so there is nothing to show here. That is not the same as "no paths were found": what the scan did read is above, under coverage.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 1.3.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish NL Tax Calculator can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.