Skip to main content
Glama

Dutch compensation package optimizer

compensation_mix_optimizer
Read-onlyIdempotent

For a gross salary in the Netherlands in 2026: compare scenarios that use Dutch tax-free allowances (travel €0.23/km, home office €2.40/day under the WKR) and a company car bijtelling. Returns 3–6 scenarios ranked by true net monthly income, showing which package gives the most take-home pay. Useful during salary negotiations to quantify the value of benefits versus a higher gross.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "gross_annual": "<gross_annual>"
    },
    "name": "compensation_mix_optimizer"
  }
}

Input Schema

NameRequiredDescriptionDefault
commute_kmNoOne-way commute distance in km. Default 0 (no commute).
car_electricNoThe company car is fully electric. Default false.
gross_annualYesGross annual salary in euros, without holiday allowance
pension_percentNoEmployee pension contribution %, 0-30. Default 5.
home_office_daysNoDays working from home per year (WKR home office allowance €2.40/day). Default 0.
car_catalog_valueNoCompany car catalogue value in euros (0 = no car). Default 0.
commute_days_yearNoDays commuting per year (for travel allowance). Default 200.
car_registration_yearNoFirst registration year of the EV (rate locks for 60 months). Default current year.
thirty_percent_rulingNoThe 30% ruling applies. Default false.
holiday_allowance_on_topNoThe 8% holiday allowance is on top of the gross. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the description correctly spends its words on domain behavior: the 2026 tax year, the specific WKR rates applied (€0.23/km, €2.40/day), bijtelling modelling, and the 3–6 scenario output with a ranking basis. It does not state the underlying assumptions or caveats when inputs conflict (e.g. car fields set but no catalog value), which keeps it short of a 5.

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?

Three tightly packed sentences, front-loaded with the domain and year, then the mechanics, then the use case. Minor redundancy between 'ranked by true net monthly income' and 'most take-home pay', but nothing extraneous.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter tool the description supplies the domain frame, the modelled allowances, and the shape of the result (3–6 ranked scenarios) even though there is no output schema. It leaves the interaction between inputs and the tax mechanics implicit, but an agent has everything needed to call it correctly.

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 baseline is 3; the description earns extra by tying inputs to concrete rates and rules (travel €0.23/km, home office €2.40/day under the WKR, company car bijtelling), which explains why commute and home-office days matter rather than just restating them. It adds no detail on pension_percent, thirty_percent_ruling, or holiday_allowance_on_top beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb and resource: it compares compensation scenarios using Dutch tax-free allowances and bijtelling, and returns 3–6 scenarios ranked by net monthly income. The scenario-comparison framing implicitly separates it from single-value calculators like net_salary_netherlands, but no sibling is named explicitly.

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?

Gives clear usage context: 'Useful during salary negotiations to quantify the value of benefits versus a higher gross.' That tells the agent the decision the tool supports. It stops short of exclusions, e.g. it never says to use company_car_tax_netherlands or net_salary_netherlands instead when only a single figure is needed.

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