Skip to main content
Glama

日本の給与・社会保険・労働法

Server Details

Japan payroll & social insurance. 日本の給与計算・社会保険。47都道府県の料率、源泉所得税、割増賃金、有給、標準報酬月額の改定、最低賃金。根拠の条文つき。

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
kishida-devil/jp-payroll-mcp
GitHub Stars
1
Server Listing
jp-payroll-mcp

Available Tools

30 tools
business_days祝日・営業日計算(銀行カレンダー対応)AInspect

Count business days in a range, shift a date by N business days, or check one date. Covers 1955-2027 including substitute holidays, 国民の休日 (a weekday that is a holiday only because it sits between two others) and one-off imperial events, so the awkward years are right and not only the tidy ones.

Set calendar to "bank" for the statutory banking calendar (銀行法施行令第5条), which is also closed 31 December to 3 January — relevant for payment due dates.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd date, YYYY-MM-DD. For count and list.
dateNoThe date, YYYY-MM-DD. For shift and check.
daysNoBusiness days to move; negative goes back. For shift.
fromNoStart date, YYYY-MM-DD. For count and list.
yearNoYear. For list.
calendarNoDefaults to standard.
operationYescount = business days between two dates; shift = move a date by N business days; check = classify one date; list = holidays in a year or range.

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations provided, the description carries the full disclosure burden, and it does substantive work: it reveals handling of substitute holidays, 国民の休日, one-off imperial events, and the bank calendar's Dec 31-Jan 3 closure — behaviors un-inferable from the schema. It stops short of disclosing return shapes or out-of-range behavior, which keeps it from 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?

Two dense paragraphs with the core operations front-loaded; the later sentences justify edge-case coverage and the calendar default rather than repeating schema content. Each sentence earns its place, though the rhetorical 'awkward years' clause is slightly expansive.

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

Completeness3/5

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

For a four-operation tool with no output schema and no annotations, the description leaves the return side unspecified — what 'check' classifies a date as, what 'list' emits, and how count/shift results are shaped. The 'list' operation is absent from the prose entirely. Inputs are well covered, but the output side and per-operation behavior have clear gaps.

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, and the description need only add value beyond the schema. It does so for the least obvious parameter, 'calendar', explaining what 'bank' means (statutory calendar plus year-end closure) beyond the schema's bare 'Defaults to standard.' This is meaningful added semantics for exactly the parameter an agent would be unsure about.

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?

The first sentence names the resource (business days) with three specific verbs (count, shift, check), and the coverage statement (1955-2027) plus the calendar distinction pins down the tool's scope precisely. The prose omits the fourth operation 'list' (which appears only in the schema enum), a small completeness gap. No sibling tool performs date arithmetic, so differentiation is not a concern.

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 gives concrete guidance for the main mode-selection decision: when to set calendar='bank', with a legal reference (銀行法施行令第5条) and a practical use case ('relevant for payment due dates'). It sets expectations about the covered year range (1955-2027), which implicitly bounds applicability. No sibling tools are named, but the sibling set is entirely monetary/payroll calculations, so there are no real alternatives to route between.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_annual_cost年間の労務コスト — 賞与の上限を年度で通した額AInspect

What one employee costs an employer over a year, bonuses included.

Reach for this rather than multiplying a payslip by twelve, because the two do not agree once a bonus is paid. 健康保険法第45条 caps the standard bonus cumulatively across the year — 5,730,000 from 1 April to 31 March — so the same bonus costs a different amount depending on where it falls, and once the year is used up later bonuses carry no health premium. 厚生年金保険法第24条の4 caps at 1,500,000 per payment with no yearly total, so pension keeps charging where health has stopped.

Pass bonuses in the order they are paid: the health allowance fills from the first one. Each row comes back with what was counted, whether it was cut, and how much of the year remains, so the answer can be explained rather than just quoted.

Income tax here is the monthly figure times twelve. Bonus withholding is a separate calculation (calculate_bonus with include_tax) and the year-end adjustment is a separate tool (calculate_year_end_adjustment) — say so rather than presenting this as take-home pay for the year.

ParametersJSON Schema
NameRequiredDescriptionDefault
ageNoEither this or birth_date is required.
bonusesNoEach bonus in yen, in the order paid. The health cap fills from the first.
birth_dateNoDate of birth, YYYY-MM-DD. Strongly preferred over `age`: 年齢計算ニ関スル法律 puts the attainment of an age on the day *before* the birthday, so someone born on the 1st of a month crosses a threshold in the previous month and their premium changes a month earlier than a naive calculation gives.
dependantsNo
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.
fiscal_yearNoYear the 1 April to 31 March window starts. Defaults from the current date.
resident_taxNoMonthly resident tax, multiplied by twelve as given. It is never derived here.
business_typeNo
monthly_salaryYesGross monthly pay in yen.
workers_comp_typeNo事業の種類の番号. Charged on bonuses as well, being levied on total wages.
standard_remunerationNoThe 標準報酬月額 fixed by 算定基礎届, if known. Without it the grade is derived from the pay given.

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so thoroughly: it discloses the cumulative health-insurance cap (5,730,000 from 1 April to 31 March), the per-payment pension cap with no annual total, order-dependent filling, and the income-tax simplification. It even describes the returned rows ('what was counted, whether it was cut, and how much of the year remains').

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 long but every sentence earns its place: purpose, alternative, legal caps, ordering, output semantics, and exclusions are each in their own focused section. It is front-loaded with the core purpose before the complexity.

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 an 11-parameter calculation with no output schema and no annotations, the description is complete: it covers the core formula, statutory limits, ordering rules, tax treatment, and the shape of the result. The schema already covers the remaining parameter details, so nothing essential is left to the agent to guess.

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 high (82%), so the baseline is 3; the description adds real semantics for the bonuses array by insisting on payment order and cap-filling behavior, and clarifies that income tax is monthly_salary times twelve. It does not need to re-explain the well-described parameters, though it could have tied prefecture and workers_comp_type into the annual-cost narrative more explicitly.

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 opening sentence states the exact computation — 'What one employee costs an employer over a year, bonuses included' — with a specific resource and scope. It differentiates itself from naive payslip multiplication and from sibling tools by naming calculate_bonus and calculate_year_end_adjustment as separate concerns.

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-to-use guidance: 'Reach for this rather than multiplying a payslip by twelve' and explains why. It also routes bonus withholding to calculate_bonus with include_tax and year-end adjustment to calculate_year_end_adjustment, telling the agent to avoid presenting the result as take-home pay.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_bonus賞与の社会保険料と源泉所得税AInspect

Premiums and income tax on a 賞与. Both work differently from monthly pay and are routinely got wrong.

Premiums are charged on 標準賞与額 (the bonus truncated to the thousand yen) under two caps that behave differently: health, long-term care and child support cap at 5,730,000 yen CUMULATIVELY across the fiscal year from 1 April, while pension caps at 1,500,000 yen PER PAYMENT. The annual cap cannot be applied without fiscal_year_to_date, so pass it whenever an earlier bonus was paid in the same fiscal year.

Withholding tax on a bonus is derived from the PREVIOUS month's pay, not from the bonus itself. Set include_tax to also compute it.

ParametersJSON Schema
NameRequiredDescriptionDefault
ageNoAge in years. Either this or birth_date is required. Prefer birth_date.
as_ofNoYYYY-MM-DD. Which rate table to use. Rates change every March, so a bonus paid in a previous year needs the table that was in force then; the call is refused rather than answered with today's rates.
bonusYesGross bonus in yen.
columnNoWithholding column for the tax half: 甲 when a 扶養控除等申告書 was filed (the normal case), 乙 when it was not. 乙 has its own rate table. Defaults to 甲.
birth_dateNoDate of birth, YYYY-MM-DD. Strongly preferred over `age`: 年齢計算ニ関スル法律 puts the attainment of an age on the day *before* the birthday, so someone born on the 1st of a month crosses a threshold in the previous month and their premium changes a month earlier than a naive calculation gives.
dependantsNo
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.
include_taxNoAlso compute withholding tax. Requires previous_month_pay.
previous_month_payNoGross pay in the month before the bonus. The tax rate is derived from this.
fiscal_year_to_dateNo標準賞与額 already paid since 1 April this fiscal year. Needed for the annual health cap.
previous_month_insuranceNoSocial insurance deducted from that previous month's pay.

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and discloses non-obvious behavior: premiums are based on 標準賞与額 truncated to thousands, health/long-term care/child support cap cumulatively at ¥5,730,000 while pension caps per payment at ¥1,500,000, and tax derives from the previous month's pay rather than the bonus. It also surfaces the dependency on fiscal_year_to_date for the annual cap, which is exactly the kind of hidden calculation nuance an agent needs.

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?

Three compact paragraphs front-load the purpose, then give the two core calculation rules (premium caps and tax basis) in order of importance. Every sentence carries necessary information; the 'routinely got wrong' warning is the only editorial addition and it reinforces why the tool exists.

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 an 11-parameter calculation tool with no output schema, the description covers the hard decision points: when to pass fiscal_year_to_date, when to set include_tax, and how the caps differ. It does not describe the return shape, but the input schema supplies parameter-level details such as as_of refusal behavior and the birth_date rule, so the agent can invoke the tool 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 description coverage is already 91%, so the baseline is 3; the description then adds real semantic value by explaining what 標準賞与額 means (truncation), why fiscal_year_to_date matters, and how previous_month_pay feeds tax withholding. It does not discuss every parameter, but the schema already documents age, birth_date, as_of, and column in detail.

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?

The description clearly identifies the tool as computing social insurance premiums and withholding income tax on a bonus (賞与), with 'Set include_tax to also compute it' confirming the calculate action. It does not explicitly name sibling tools or say 'use this instead of calculate_withholding_tax', but the bonus-specific caps and contrast with monthly pay make the scope unambiguous.

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?

It gives explicit situational guidance: pass fiscal_year_to_date whenever an earlier bonus was paid in the same fiscal year, and set include_tax when withholding tax is also needed. It does not directly state which sibling tools are alternatives or when not to use this tool, but 'Both work differently from monthly pay' implies the bonus context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_overtime_pay割増賃金(時間外・深夜・休日)の計算AInspect

Works out statutory premium pay under 労働基準法第37条 — overtime, night work and work on a statutory holiday.

The rates do not simply add up, and getting this wrong under-pays wages. A night premium stacks on top: overtime at night is 1.25 + 0.25 = 1.5, holiday work at night is 1.35 + 0.25 = 1.6. But a statutory holiday carries no overtime premium at all — a day with no duty to work has nothing to exceed — so holiday hours are 1.35, never 1.6 by adding overtime. Overtime beyond sixty hours in a month is 50%, and the deferral that exempted small employers ended on 1 April 2023, so headcount no longer matters.

Rounding follows 昭和63年基発第150号, which rounds each category separately rather than once at the end, so the total will not always match a single multiplication. Rounding the hours themselves down is a breach of 労基法第24条 and this tool will not do it.

base_monthly_pay must exclude the seven allowances that 労基法37条5項 and 施行規則21条 enumerate exhaustively, and only those. Exclusion turns on substance, not the name: a 「家族手当」 paid at a flat rate regardless of dependants cannot be excluded. The response lists all seven. Do not guess at whether an allowance qualifies — ask which way it is paid.

ParametersJSON Schema
NameRequiredDescriptionDefault
night_hoursNoHow many of those hours fell between 22:00 and 05:00.
holiday_hoursNoHours worked on a statutory holiday.
overtime_hoursNoStatutory overtime hours, excluding work on a statutory holiday.
base_monthly_payYesMonthly pay forming the premium base, after removing any of the seven excludable allowances.
holiday_night_hoursNoHow many of those fell between 22:00 and 05:00.
monthly_scheduled_hoursYes月平均所定労働時間 — annual scheduled working days times daily hours, divided by twelve.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses substantial behavior: rate stacking (1.25 + 0.25 = 1.5), holiday having no overtime premium, the 60-hour 50% threshold, per-category rounding under 昭和63年基発第150号, and the 1 April 2023 end of the small-employer deferral. It loses a point for slightly opaque references like '従業員マイスター's pay detail' and the final instruction to 'Ask for the full name of the tool,' which is unclear rather than enlightening.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core information is front-loaded and substantive, but the description is long and contains two extraneous asides: '2023年4月 means April 2023' and the confusing final sentence 'Ask for the full name of the tool to clarify before proceeding.' These could be trimmed without losing meaning, and they slightly muddy an otherwise well-organized explanation.

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 complex statutory calculation with no output schema and no annotations, the description covers the legal rates, rounding, applicability, exclusions, and how to route edge cases to calculate_payslip. It is nearly complete, but it still does not state the return shape/value of the tool, and the 60-hour threshold is described without fully specifying how the single overtime_hours parameter carries hours above 60.

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 schema already describes all six parameters. The description adds value beyond it by clarifying what base_monthly_pay should and should not include ('a premium is not an allowance, so include it'), explaining that overtime_hours excludes holiday work, and describing the rate logic that determines how the hour categories interact.

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 first sentence names a precise verb and resource: 'Works out statutory premium pay under 労働基準法第37条 — overtime, night work and work on a statutory holiday.' It names the legal basis and the three covered categories, and later points to calculate_payslip for a different scope, which distinguishes it from a key sibling.

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?

The description gives an explicit routing rule: 'If you need amounts after a mid-month entry or leaving, use calculate_payslip...' It also states applicability ('Applies to all periods in employment since 1 April 2023') and exclusions ('Does not determine work rules or agreements'), so an agent knows when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_payroll_batch給与計算をまとめて — 事業所全員分と合計AInspect

Runs calculate_payslip for many employees in one call and returns the run totals: gross, employee deductions, net, and employer cost.

Reach for this the moment more than two or three people are in play. A monthly payroll is not a sequence of unrelated questions — the employer share, the totals and the run id only mean anything across the whole run. Asking one employee at a time gives no total and no way to tell a retry from a second run.

Put anything shared in defaults (prefecture, business_type, column) and let each row carry only what differs, which is usually pay and age. A row that cannot be computed comes back in errors with its index and id while the rest of the run completes — do not discard a whole payroll over one bad row.

The reply carries a run_id derived from the route and the exact input, so sending the same payroll twice gives the same id. Nothing is stored, so a retry cannot double-count.

ParametersJSON Schema
NameRequiredDescriptionDefault
compactNoDrop the per-employee breakdown and keep the payout figures — about a tenth the size on a large run. Use it when the question is "what do we pay", not "why".
defaultsNoApplied to any row that leaves the field out.
employeesYesOne entry per employee. Up to 500 on a paid plan, 10 on the free tier.

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly reveals deterministic run_id derivation, that nothing is stored so retries cannot duplicate a run, and that partial failures return errors with index and id while the rest of the run completes. These are non-obvious behaviors essential for safe invocation.

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 core purpose in the first sentence. Each subsequent paragraph earns its place: usage triggers, parameter strategy, error semantics, and idempotency. It is detailed but not bloated, with no redundant sentences.

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 complex batch tool with no output schema and no annotations, the description covers the essential operational context: what the return totals are, how run_id behaves across retries, how partial errors are handled, and how to organize the input. Nothing an agent needs to call this correctly is left unclear.

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 description coverage is 100%, so the baseline is 3. The description adds meaningful guidance beyond the schema by advising users to put shared values in defaults (prefecture, business_type, column) and only differing values per row, and by explaining how errors reference row index and id. This elevates the guidance without needing to restate every field.

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: 'Runs calculate_payslip for many employees in one call and returns the run totals.' It further clarifies the unique value (gross, employee deductions, net, employer cost) and differentiates itself from the single-employee sibling tool calculate_payslip.

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?

The description explicitly states when to use the tool: 'Reach for this the moment more than two or three people are in play.' It also explains why the alternative (asking one employee at a time) is inadequate, and provides guidance on structuring inputs via defaults, making the decision context complete.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_payslip給与計算 — 社会保険料・源泉所得税・手取りAInspect

Full monthly deduction breakdown for one employee: health insurance, long-term care, pension, child support, employment insurance, withholding income tax and net pay, with the employer share as well.

Use this rather than computing it yourself. Premiums are charged on 標準報酬月額 — a 50-grade step function — and not on actual salary, while employment insurance IS charged on actual salary; the employee share rounds half DOWN; pension stops at grade 32; long-term care applies only from 40 to 64. Income tax is computed on pay after social insurance, which the tool derives internally, so do not pre-deduct it.

ParametersJSON Schema
NameRequiredDescriptionDefault
ageNoAge in years. Either this or birth_date is required — long-term care is charged only from 40 to 64, so the premium cannot be settled without it. Prefer birth_date.
as_ofNoThe premium month: an ISO date in the month the person is insured for, NOT the pay date. Employers may deduct the previous month's premium from this month's pay (Health Insurance Act art. 167), so with next-month deduction pass a date in the month before the pay date. Drives the age milestones and picks the rate table; a date outside the published period returns 422 rather than the current table.
columnNo甲 if the employee filed a 扶養控除等申告書 (the normal case), 乙 if not. Defaults to 甲.
birth_dateNoDate of birth, YYYY-MM-DD. Strongly preferred over `age`: 年齢計算ニ関スル法律 puts the attainment of an age on the day *before* the birthday, so someone born on the 1st of a month crosses a threshold in the previous month and their premium changes a month earlier than a naive calculation gives.
dependantsNo源泉控除対象親族の数. Defaults to 0.
income_taxNoSet false to skip withholding tax. Defaults to true.
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.
resident_taxNoResident tax to deduct, in yen. It is levied by the municipality on the previous year's income and is never derived here — pass the figure from the 特別徴収税額通知書.
business_typeNoEmployment insurance rate band. Defaults to general.
commuting_fareNoReasonable fare or toll paid on top of a car or bicycle commute. With commuting_distance_km the ceiling is the distance band plus this, capped at 150,000.
monthly_salaryYesGross monthly pay in yen, before any deduction.
employment_typeNo役員 are not employment-insurance insured (雇用保険法第4条). Pass "director" for a company officer, or the premium comes out too high. Defaults to employee.
commuting_parkingNoMonthly parking the employee pays for a car or bicycle commute, in yen. Added to the distance band up to 5,000 a month. Needs commuting_distance_km — there is no band to add it to for someone who commutes only by train.
workers_comp_typeNo労災保険 事業の種類の番号, e.g. "98" for wholesale/retail/restaurants/hotels. Workers compensation falls entirely on the employer and is left out unless you pass this, because rates run from 2.5/1000 to 88/1000 and there is no safe default. list_workers_compensation_rates has the table.
commuting_allowanceNoCommuting allowance in yen per month. Social insurance counts it as remuneration in full, income tax exempts it up to a ceiling — 150,000 a month by public transport. Do NOT fold it into monthly_salary: doing so taxes it, and leaving it out understates the premiums. The split comes back in earnings.items.
commuting_distance_kmNoOne-way distance for a car or bicycle commute. The exempt ceiling then comes from the distance table (国税庁 No.2585) rather than the 150,000 transit ceiling; under 2 km nothing is exempt.
standard_remunerationNoThe 標準報酬月額 fixed by 算定基礎届 or 月額変更届. Pass it whenever it is known. Without it the grade is re-derived from the pay you send, which is wrong in any month with overtime — a 300,000 yen earner who made 369,469 in a busy month is over-deducted by 8,445 yen. decide_regular_determination returns the right figure.

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and succeeds: it discloses the 標準報酬月額 step-function basis, the actual-salary basis for employment insurance, half-down rounding, the grade-32 pension stop, the 40-64 long-term care condition, and that income tax is derived after social insurance. These are non-obvious behaviors an agent must know before calling.

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?

Three purposeful sentences: the scope/result, the instruction to prefer the tool, and the key computation rules. It is front-loaded with the most important information and every sentence earns its place given the tool's complexity.

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?

The description lists the output components and the crucial calculation rules, and the schema's per-parameter descriptions are rich enough to fill remaining invocation details. It lacks an explicit output shape and sibling routing, but those are not fatal given the schema's quality.

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, but the description adds meaningful cross-parameter logic: premiums use standard remuneration while employment insurance uses actual salary, income tax must not be pre-deducted, and age restrictions gate long-term care. This supplements the per-parameter schema text.

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?

The description opens with a clear subject-verb-resource: 'Full monthly deduction breakdown for one employee' and enumerates components, including employer share. It implicitly distinguishes this from siblings like calculate_bonus or calculate_payroll_batch by saying 'monthly' and 'one employee,' but it never names an alternative or states what it is not.

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

Usage Guidelines3/5

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

'Use this rather than computing it yourself' and 'do not pre-deduct it' give some usage direction. However, with many payroll siblings, the description provides no explicit when-to-use versus alternatives (e.g., withholding-tax-only, bonus, or batch payroll).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_withholding_tax源泉徴収税額(月額表・日額表・電算機計算の特例)AInspect

Income tax to withhold from a payment, from the National Tax Agency tables. The taxable amount is pay AFTER social insurance has been deducted, not gross.

Pick the table with period: "monthly" for 月額表, "daily" for 日額表. The daily table has a third column, 丙, which applies to work engaged by the day and takes no dependant adjustment at all. Use method: "computer" for the 電算機計算の特例 formula, which payroll software may use instead of the table and can differ by a few yen.

ParametersJSON Schema
NameRequiredDescriptionDefault
columnNo甲/乙, plus 丙 for the daily table only. Defaults to 甲.
methodNo"computer" selects the statutory formula method. Monthly only. Defaults to table.
periodNoDefaults to monthly.
spouseNoOnly for method "computer": whether a 源泉控除対象配偶者 is claimed. The formula method deducts 31,667 yen a month for one, which the monthly table folds into its columns instead. Ignored by the table methods.
dependantsNo
taxable_amountYesPay after social insurance, in yen.

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and discloses important behaviors: taxable amount is after social insurance, the daily 丙 column makes no dependant adjustment, and the computer method can differ by a few yen. It does not describe the return format, but this is a pure calculation tool with no side effects.

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?

Two dense paragraphs front-load the core purpose and most critical caveat before the selection instructions. Every sentence provides useful guidance without repetition.

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

Completeness3/5

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

The description is strong on period/method selection and the after-social-insurance rule, but it leaves out the meaning of 甲 vs 乙, the semantics of dependants, and what the tool returns. With no output schema and no annotations, those are notable gaps for a six-parameter tax tool.

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 83%, so the baseline is 3, but the description adds value by clarifying the after-social-insurance taxable amount, the daily-table 丙 exception, and the possible difference between table and computer methods. The dependants parameter is still not explained.

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 identifies a specific operation and resource: calculating income tax to withhold from a payment using National Tax Agency tables. This clearly separates it from payroll siblings such as bonus or year-end adjustment calculations.

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?

It gives explicit selection instructions for period (monthly vs daily) and method (table vs computer), including when the computer formula applies. It does not name sibling tools to exclude, so it misses explicit when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calculate_year_end_adjustment年末調整(令和8年分)AInspect

Year-end adjustment (年末調整) for 2026 from the National Tax Agency's 令和8年分 booklet: the printed 給与所得控除後の給与等の金額 table (1,103 rows), the income-adjustment deduction, social/life/earthquake insurance deductions, spouse, specified-relative (19-22 with income), dependant, disability, widow/single-parent/student and basic deductions, the year-end tax bracket table, the housing-loan credit and the 2.1% reconstruction surtax. Returns every box of the 源泉徴収簿 (⑦ to ㉗) and whether the difference is a refund or a collection.

Pay figures are for the whole calendar year, bonuses included. Pass only what the employee declared on their forms; the tool does not assume a spouse, dependants or insurance. Anyone paid 20,000,000 yen or more is outside 年末調整 and the tool says so. Medical, donation and casualty-loss deductions are not part of 年末調整 (they need a tax return) and resident tax is never involved.

ParametersJSON Schema
NameRequiredDescriptionDefault
flagsNo
spouseNo
total_payYesTotal pay for the year including bonuses (⑦).
dependantsNo
mutual_aidNo小規模企業共済等掛金 (⑭).
tax_returnNoDeductions that only a tax return can take (medical, self-medication, donations, casualty loss). They are NOT part of 年末調整; pass them to get a separate "if the employee files a return" estimate.
disabilitiesNoCounts of 障害者 / 特別障害者 / 同居特別障害者 among the employee, spouse and dependants.
other_incomeNoIncome other than this pay, for the basic and spouse deduction bands.
withheld_taxYesIncome tax withheld during the year (⑧).
life_insuranceNoPremiums PAID this year by category (new = contracts from 2012-01-01). The deduction is computed here.
social_insuranceYesSocial insurance premiums deducted from pay during the year (⑫).
income_adjustmentNoForce the 所得金額調整控除 on or off. Omit to derive it from pay > 8,500,000 and the under_23 / disability inputs.
housing_loan_creditNo住宅借入金等特別控除額 (㉔), from the certificate.
specified_relativesNo特定親族 (19-22 with 合計所得金額 over 620,000): one income figure per person.
earthquake_insuranceNoEarthquake insurance and 旧長期損害保険 premiums paid.
social_insurance_declaredNoSocial insurance the employee paid themselves and declared, e.g. 国民年金 (⑬).

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations provided, the description carries the behavioral disclosure burden and does it well: it states what the tool returns, that it does not assume unprovided inputs, that high earners are rejected, and that certain deductions are excluded. It could add more about error handling or whether the operation is purely computational, but the disclosed behavior is substantial.

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 long because the tool is complex, but the first paragraph front-loads the overall purpose and output, while the second paragraph delivers crucial boundary conditions. Every sentence adds information; the only minor issue is the dense enumeration of deductions, which partially duplicates schema content.

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 16-parameter tool with no annotations and no output schema, this description is remarkably complete: it defines the return value, scope, exclusions, assumptions, and edge cases such as the 20,000,000 yen threshold. The input schema covers the remaining parameter details, so an agent has enough context to invoke the tool 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 81%, so the baseline is 3, but the description adds meaningful parameter-level context: pay and withheld figures are for the whole calendar year, only declared values should be passed, and the tax_return block is explicitly clarified as not part of 年末調整. This goes beyond the schema's property descriptions and helps the agent pass values correctly.

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?

The description makes the tool's function clear: it performs Japanese year-end adjustment for 2026 and returns every box of the 源泉徴収簿 plus refund/collection status. It is specific about scope and contents, though it does not explicitly differentiate itself from sibling tools like calculate_withholding_tax.

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 second paragraph gives practical usage constraints: pay must cover the whole year including bonuses, only declared amounts should be passed, the tool does not assume family/insurance status, 20,000,000 yen or more is outside scope, and medical/donation/casualty-loss deductions belong to a tax return. This is strong guidance, but it does not name alternative sibling tools explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_data_freshnessデータ鮮度 — 各データの対象期間と次回改定AInspect

Japanese statutory figures change on fixed dates — insurance rates each March, employment insurance each April, minimum wage each October — and a stale table produces numbers that look plausible and are wrong. This reports what every dataset currently covers and when its next revision is due.

Worth calling before relying on a figure for a filing, and whenever a result is being checked against a date near one of those boundaries.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It explains that the tool reports coverage periods and revision due dates and warns why stale data is dangerous, but it does not state whether the operation is read-only, describe response shape, or mention any side effects—though 'reports' implies a read operation.

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 three well-structured sentences: rationale, core capability, and use triggers. The risk framing is slightly verbose but earns its place by telling the agent why freshness matters, and the key capability is clearly stated.

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 zero-parameter reporting tool with no output schema, the description is complete: it states what the tool returns (current coverage and next revision date) and when to call it. An agent has everything needed to invoke 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?

The tool has zero parameters and the schema has 100% description coverage, so there are no parameter semantics to add. The baseline 4 applies because no parameter documentation is needed.

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 an exact action and object: it reports what every dataset currently covers and when the next revision is due. The opening also grounds the tool in the fixed-date revision calendar, making it distinct from sibling calculation/rule tools such as get_insurance_rates or get_minimum_wage.

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 gives explicit triggers: call before relying on a figure for a filing, and whenever a result is checked near one of the revision boundaries. It does not list exclusions or alternatives, but the use cases are concrete enough for an agent to choose this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_insurance_eligibility入社月・退社月の保険料の要否AInspect

The single most expensive month-end mistake in Japanese payroll, and one an assistant will get wrong from memory.

Coverage ends the day AFTER the last day worked, not on it. So an employee leaving on the LAST day of a month loses coverage on the 1st of the next month, and still owes that month's premium — while leaving one day earlier means no premium for the month at all. A full month of both employee and employer premium turns on a single day. Always check here rather than reasoning it out.

ParametersJSON Schema
NameRequiredDescriptionDefault
monthNoMonth to judge, YYYY-MM or a full date. Defaults to today.
left_onNoLast day actually worked, YYYY-MM-DD — not the day after.
joined_onNoFirst day of employment, YYYY-MM-DD.

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavior disclosure. It reveals the key rule and outcome (whether the month's premium is owed), which is behaviorally important, but it does not explain the return format, whether both employee and employer premiums are addressed, or edge-case handling such as mid-month entry or missing dates. A 3 is fair because the core deterministic rule is transparent, yet implementation details remain opaque.

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 heavily front-loaded with a compelling warning and a concrete example, then ends with the directive. Every sentence serves a purpose, though the opening 'single most expensive month-end mistake' framing is somewhat repetitive of the title's subject. It is not bloated and reads quickly.

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 judgment tool with three self-explanatory parameters and no output schema, the description explains the core rule, gives a concrete edge case, and tells the assistant to always delegate to it. It leaves out the exact return value shape, but the absence of an output schema and the simple yes/no nature of the judgment make this a minor gap rather than a serious one.

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 coverage is 100%, so the schema already documents all three parameters well. The description adds emphasis that left_on is the last day actually worked, not the day after, which is a valuable semantic correction beyond the schema. However, it does not clarify the interplay between joined_on and left_on, such as when both are supplied for someone joining and leaving in the same month, so it only modestly exceeds the schema baseline.

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 clearly states this tool judges insurance premium liability for joining/leaving months in Japanese payroll, and the unusual rule is spelled out. Its title '入社月・退社月の保険料の要否' plus the description of 'Coverage ends the day AFTER the last day worked' makes the purpose unmistakable and distinct from sibling tools that calculate amounts or rates.

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 explicitly tells the assistant this is the authoritative check for the single most expensive month-end mistake and says 'Always check here rather than reasoning it out.' This both establishes when to use it (whenever judging premium liability for months around joining/leaving) and effectively excludes guessing/memory or alternative calculation tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_leave_exemption産休・育休の保険料免除月AInspect

Maternity and childcare leave look alike and behave differently. Maternity leave has no day-count test and exempts bonus premiums unconditionally; childcare leave gained a 14-day rule in October 2022 and exempts bonus premiums only when the leave exceeds one month.

Two results catch people out and are worth checking rather than assuming: a leave that starts and ends inside one month exempts nothing by itself under the main rule, while a SINGLE day of leave on the last day of a month is exempt. Employment insurance is never exempt — it is charged on wages actually paid.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYesLast day of leave, YYYY-MM-DD.
kindYes産前産後休業 or 育児休業等.
startYesFirst day of leave, YYYY-MM-DD.
worked_daysNo出生時育児休業 only: days worked during the leave, which come off the 14-day count.

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does a strong job: it distinguishes maternity vs childcare rules, discloses the 14-day rule, explains bonus premium exemption conditions, and highlights two counterintuitive edge cases. The main gap is that it never states what the tool returns—whether it outputs exempt months, booleans, or premium types—and it does not address how leaves spanning October 2022 are handled.

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?

Four dense sentences pack the key distinctions, the 14-day rule, bonus conditions, and two high-value edge cases with no filler. The structure front-loads the core contrast and then lists the counterintuitive results, making it easy to absorb, though it is slightly longer than strictly necessary.

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

Completeness3/5

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

For a complex regulatory topic with no output schema and no annotations, the description covers the main rules and gotchas well, which is valuable. However, it omits the return value shape, does not explain how to interpret results, and ignores the 'worked_days' parameter, leaving an agent to guess about the tool's output and optional inputs.

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 adds real meaning for 'kind' by contrasting maternity vs childcare behavior and for 'start'/'end' by describing edge cases like a single day on the last day of a month. It does not mention 'worked_days' at all, but the schema already documents that parameter clearly, so the description still adds net value.

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?

The title '産休・育休の保険料免除月' and tool name 'check_leave_exemption' clearly indicate the tool checks insurance premium exemption months for maternity/childcare leave, and the description reinforces this by explaining the rules that govern those exemptions. However, the description never explicitly states 'returns the exempt months' or 'checks eligibility', relying on inference from the name and title. It also does not differentiate the tool from its siblings like check_insurance_eligibility.

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

Usage Guidelines3/5

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

The description implies this tool is used when determining insurance premium exemptions for maternity/childcare leave, and it explicitly warns that employment insurance is never exempt, giving a clear boundary. It does not name any alternative tools or state when to prefer them, and the usage context is only implied through the rule explanations rather than direct guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

commuting_allowance_exemption通勤手当の非課税限度額AInspect

Works out how much of a commuting allowance escapes income tax, and states the amount that still counts as remuneration for social insurance.

These are two different bases, and that asymmetry is the part people get wrong. Social insurance counts a commuting allowance in full — it is 報酬 under 健康保険法第3条第5項 regardless of the tax treatment — while income tax is charged only on what exceeds the ceiling. So a 15,000 yen allowance on a 300,000 yen salary makes the standard-remuneration basis 315,000 and the taxable pay 300,000. Never answer with a single figure that is meant to serve both.

The ceiling is 150,000 a month for public transport. For a car or bicycle it is set by one-way distance, with nothing exempt under two kilometres, and up to 5,000 more a month when the employee pays for parking. Using both adds them together, still capped at 150,000.

Do not answer this from memory. The table moved twice in twelve months: a cabinet order promulgated 19 November 2025 raised every band over ten kilometres and applied retroactively to allowances payable from 1 April 2025, and 1 April 2026 added four bands above 65km along with the parking addition. Figures learnt before those dates are wrong, and wrong in a direction that under-states the exempt amount. Call with no arguments to read the current table and both revisions.

ParametersJSON Schema
NameRequiredDescriptionDefault
fareNoReasonable fare or toll paid alongside a vehicle commute.
amountNoThe commuting allowance actually paid, yen per month. Omit to get the whole table.
parkingNoMonthly parking cost the employee bears. Added to the distance band, up to 5,000. Needs distance_km.
distance_kmNoOne-way distance for a commute by car or bicycle. Under 2km nothing is exempt.

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden and does so thoroughly. It discloses the income-tax versus social-insurance asymmetry, gives a concrete salary example, sets the 150,000 cap, explains distance and parking rules, and warns against memory-based answers because of two revisions—even stating the direction of the likely error.

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 core purpose, then builds through the key asymmetry before addressing limits, distance rules, and revision warnings. Each sentence carries necessary information, including the concrete example and the explicit instruction not to rely on memory.

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 four-parameter tool with no output schema and substantial legal complexity, the description is complete: it covers both calculation bases, the ceiling, distance thresholds, parking, retroactivity, and how to read the current table. Nothing needed to select or invoke the tool 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?

Although the schema documents all four parameters, the description adds critical semantics: nothing is exempt under 2 km, parking adds up to 5,000 to the distance band, public-transport and vehicle calculations combine and are capped at 150,000, and omitting the amount reads the whole table. This materially improves correct invocation.

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 precise verb-resource pair: it works out how much of a commuting allowance escapes income tax and states the amount still counted for social insurance. It further distinguishes itself from generic payroll/tax tools by stressing the two different bases and warning that a single figure must never serve both.

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?

It gives clear context for use: computing the income-tax exemption and social-insurance inclusion of a commuting allowance, including when to call with no arguments to read the current table and both revisions. It does not explicitly name sibling alternatives or when-not-to-use conditions, but the scope is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

consumption_tax消費税率(日付指定・軽減税率・改定履歴)AInspect

The consumption tax rate in force on a date, with the national and local parts, and the reduced 8% rate for food and newspapers. Pass amount to have the tax worked out.

Japan changed the rate four times since 1989 (3% → 5% → 8% → 10%), and the reduced rate has existed only since 2019-10-01. A back-dated invoice or a credit note against an old sale is charged at the rate of the original transaction, not today's, so the date matters more often than people expect. Set history to see every change with its statute.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoYYYY-MM-DD. The rate in force on that day. Defaults to today.
as_ofNoAlias for date. YYYY-MM-DD.
amountNoTax-exclusive amount in yen, to compute the tax.
historyNoReturn every rate change since 1989 instead of one date.
reducedNoTrue for the 8% reduced rate — food and drink excluding alcohol and eating out, and subscribed newspapers issued twice a week or more (平成28年法律第15号).

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well. It discloses the rate-change history (3% → 5% → 8% → 10%), the reduced rate's start date of 2019-10-01, the back-dating rule for invoices and credit notes, and that history mode returns changes with statutes. These are meaningful behavioral traits beyond what annotations would likely convey.

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?

Three dense sentences with no filler. The core function is front-loaded, and the second and third sentences provide behavioral context that an agent actually needs rather than repeating schema content. Every sentence earns its place.

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 5-parameter tool with no annotations and no output schema, the description covers the key behaviors: date-specific rates, reduced-rate eligibility, optional tax computation, and history mode. Minor gaps remain around the exact output shape when `amount` is passed and what happens if both `date` and `as_of` are provided, but these are not critical for basic invocation.

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 description coverage is 100%, so the baseline is 3 because the schema already documents all five parameters in detail. The description adds useful semantic context for `date` (back-dating matters more than expected) and `history` (returns changes with statute), raising it above baseline. It does not add much for `as_of` or `amount`, which are already well covered by 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?

The first sentence clearly identifies the resource as the Japanese consumption tax rate in force on a date, including national/local split and the reduced 8% rate. This distinguishes it from the payroll and insurance sibling tools. It lacks an explicit verb like 'returns', but the functional intent is unmistakable.

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 gives concrete usage context: back-dated invoices and credit notes against old sales should use the original transaction date, and it warns that date matters more often than people expect. It does not name alternatives or explicitly state when not to use the tool, so it falls short of perfect routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

decide_regular_remuneration定時決定(算定基礎届) — 4〜6月の報酬からAInspect

The yearly redetermination of standard remuneration, effective each September through the following August.

Months below the payment-basis-day threshold drop OUT of the average entirely — they are not counted as zero, which is the usual mistake. If no month qualifies, the previous grade carries over by 保険者算定, except for 短時間就労者, who have an intermediate step at 15 days that exists nowhere else in the scheme and not in 随時改定.

Pass acquired_month to also learn how long a 資格取得時決定 stays in force.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoThe determination year; its 1 July is the reference date. Defaults to the current year.
monthsYesApril, May and June as "remuneration:payment_basis_days" — e.g. "350000:30,352000:31,349000:30".
left_onNoLast day worked, YYYY-MM-DD. Gone before 1 July means not employed on the reference date.
acquired_onNoDate cover began, YYYY-MM-DD. Someone insured between 1 June and 1 July is outside the annual determination (健康保険法第41条).
worker_typeNogeneral = 一般の被保険者 (17-day threshold). part_time_short_hours = 短時間就労者, works shorter hours but meets the three-quarters test (17 days, with a 15-day fallback that exists ONLY in 定時決定). short_time_insured = 短時間労働者 at a 特定適用事業所 (11 days). Defaults to general.
acquired_monthNoMonth of enrolment, 1-12. Returns how long the 資格取得時決定 applies.
revision_monthNoMonth a 随時改定 takes effect. July, August or September displaces the annual determination; any other month does not.
previous_remunerationNoThe prior 報酬月額, so the response can name the grade that carries over if no month qualifies.

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral disclosure burden. It does well by explaining that sub-threshold months drop out entirely rather than counting as zero, that carry-over follows 保険者算定, and that short-time workers have a unique 15-day intermediate step. It does not describe the overall return structure, but the schema partially covers some outputs.

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 concise and front-loaded, with the core purpose stated first and edge cases in a compact second paragraph. Every sentence adds meaningful content, though the density of Japanese terms may make it slightly harder to parse quickly.

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?

Given the tool's complexity, the description covers the most important traps and exceptions. The lack of an output schema is partly mitigated by the schema's rich parameter descriptions, which mention response behavior such as naming the carried-over grade and returning how long a determination applies.

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%, so the baseline is 3. The description itself adds only a small hint about acquired_month and does not need to repeat parameter details already fully documented in the schema.

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 clearly identifies the tool as the yearly redetermination of standard remuneration, effective September through August. It distinguishes itself from related concepts like 随時改定 by noting that the 15-day fallback exists only in 定時決定.

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 gives clear context on when this annual determination applies and even warns about a common mistake with payment-basis-day thresholds. It implies the distinction from monthly revision rules, but does not explicitly name alternative sibling tools such as judge_monthly_revision.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

decide_regular_remuneration_batch定時決定(算定基礎届)をまとめて — 事業所全員分AInspect

Runs the annual 定時決定 for a whole payroll in one call, and reports which employees moved grade.

健康保険法第41条 puts every insured employee on the same schedule — the average of April, May and June pay, over the months with at least seventeen payment-basis days, applied from September to the following August. So June is the one month of the year when an office decides its entire payroll at once, and asking about one employee at a time is the wrong shape for the task.

Reach for this the moment more than a couple of employees are in play. Each row returns the same judgement as decide_regular_remuneration, plus whether that person changed grade, which is what decides how much filing there is. Pass previous_remuneration to get that comparison; without it the answer is null rather than false, because "no grade to compare" and "did not move" are different facts.

Pass acquired_on, left_on or revision_month and each row also says whether that employee is filed at all. 健康保険法第41条 leaves out anyone insured between 1 June and 1 July, anyone gone before the 1 July reference date, and anyone revised from July to September. The run totals to_file and not_required, which is the number of forms rather than the number of employees. A row that cannot be decided is returned in errors with its index and id, and the rest of the run still completes — do not discard a whole run over one bad row.

ParametersJSON Schema
NameRequiredDescriptionDefault
defaultsNoApplied to any row that omits the field.
employeesYesOne entry per employee.

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden and does so well: it discloses null-vs-false semantics for previous_remuneration, the meaning of to_file/not_required totals as forms rather than employees, partial-failure behavior (bad rows go to errors with index and id while the rest completes), and legal exclusions. The warning 'do not discard a whole run over one bad row' is exactly the kind of behavioral guidance an agent needs.

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 longer than average but every sentence earns its place: the legal context motivates the batch shape, the usage rule is front-loaded, and the remaining paragraphs cover optional-parameter effects, totals semantics, and error handling. The structure is logical and dense without redundancy.

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?

Given no output schema exists, the description covers the return contract well: per-row judgement inherited from decide_regular_remuneration, grade-change flag, filing totals, and errors with index/id. However, the exact per-row field names and the role of the defaults object in overriding employee rows are not explicitly addressed, leaving a minor gap for a tool of this complexity.

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%, giving a baseline of 3, but the description adds significant behavioral meaning beyond the schema: previous_remuneration's null-vs-false distinction, how acquired_on/left_on/revision_month influence whether an employee is filed, and what the aggregate totals mean. This substantially enriches the raw parameter definitions.

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 first sentence states a specific verb and resource: 'Runs the annual 定時決定 for a whole payroll in one call, and reports which employees moved grade.' It clearly distinguishes the batch tool from the singular sibling decide_regular_remuneration by framing single-employee queries as 'the wrong shape for the task.'

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?

Explicit when-to-use guidance is provided: 'Reach for this the moment more than a couple of employees are in play.' It also tells when each optional parameter matters (previous_remuneration for grade comparison; acquired_on, left_on, revision_month for filing status), and contrasts with the one-at-a-time alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

estimate_resident_tax個人住民税の見込み額AInspect

Estimate of next fiscal year's resident tax (住民税: 道府県民税 + 市町村民税 + 森林環境税) from the previous year's income and the municipality: employment income from the NTA table for that year, resident-tax deductions (basic 430,000, spouse 330,000, dependants 330,000/450,000/380,000, life insurance capped at 70,000), the 10% income levy split 4%/6% (2%/8% in designated cities), the adjustment credit, the non-taxable thresholds (35万円 × persons + 10万円 + 21万円, with the 級地 rate), ふるさと納税 basic and special credits (special capped at 20% of the income levy), the housing-loan carry-over, per-capita amounts including every prefecture's surtax (37 of 47 have one; Kanagawa also adds 0.025% to the income levy) and the city rules of 横浜市 (+900), 神戸市 (+400) and 名古屋市 (5% cut). Matches the published 令和8年度 worked examples of Yokohama and Nagoya to the yen.

It is an ESTIMATE: the municipality decides the amount and the employer deducts what the 特別徴収税額通知書 says. Say so. income_year is the year the income was earned (2025 for the fiscal-2026 tax). Pass grade_level (級地 1-3) when known; it changes the per-capita exemption.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNoMunicipality in Japanese, e.g. 横浜市. Used for designated-city rates and the three city rules held.
flagsNo
salaryNoGross employment income for the year, bonuses included.
spouseNoSpouse's 合計所得金額 for the year (0 if none).
dependantsNo
mutual_aidNo
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.
grade_levelNo級地 (1, 2 or 3) for the per-capita exemption threshold.
income_yearYesYear the income was earned: 2025 (fiscal 2026 tax) or 2026 (fiscal 2027 estimate).
disabilitiesNo
other_incomeNo
total_incomeNoUse instead of salary when the income is not (only) employment income: 合計所得金額 excluding salary.
casualty_lossNo
life_insuranceNoPremiums PAID; the resident-tax deduction (cap 70,000) is computed here.
designated_cityNoSet when the city is one of the 20 指定都市 and you did not pass city.
other_donationsNoOther qualifying donations (basic 10% credit only).
housing_loan_capNoCap rule for the resident-tax part: 5% (max 97,500) or 7% (max 136,500).
medical_expensesNo
social_insuranceNoSocial insurance paid in the year.
income_adjustmentNo
furusato_donationsNoふるさと納税 paid in the year.
medical_reimbursedNo
housing_loan_unusedNoHousing-loan credit the income tax could not absorb.
specified_relativesNo
earthquake_insuranceNo
disaster_related_expenseNo

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and discharges most of it: it flags estimate uncertainty, states that the municipality decides the amount and the employer deducts per the 特別徴収税額通知書, and instructs the agent to communicate that. It also states the fiscal-year mapping for income_year and validates accuracy against published examples, though it does not describe return shape or behavior for unsupported input combinations.

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 core purpose is front-loaded in the first clause, and nearly every subsequent clause carries a specific tax rule or caveat, so there is little waste. The density is high and the single run-on paragraph is harder to scan, which keeps it from a 5 for a tool with this many parameters.

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 26-parameter tax calculator with no annotations and no output schema, the description is unusually complete: it covers the main formula, prefecture surtax exceptions, city rules, the estimate caveat, and key inputs like income_year and grade_level. It still leaves some operational details, such as exactly what is returned and how unknown municipalities are handled, to the schema or the agent, so it is not a 5.

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 only 54%, and the description adds meaningful tax semantics beyond the schema: deduction amounts and caps, the 10% levy split with special rules for designated cities, the non-taxable threshold formula with 級地, furusato credits capped at 20%, and city-specific rules. It does not mention all 26 parameters, but it enriches the high-impact ones without contradicting the schema.

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 'Estimate of next fiscal year's resident tax (住民税: 道府県民税 + 市町村民税 + 森林環境税) from the previous year's income and the municipality', naming a specific verb, resource, and input basis. It distinguishes this tool from income-tax siblings by itemizing resident-tax components and even cites matching published worked examples.

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 gives clear context for when the tool applies: estimating the next fiscal year's resident tax from the prior year's income and municipality, with the explicit 'It is an ESTIMATE' caveat and the instruction to 'Say so.' It does not explicitly name alternatives or state when-not-to-use it, so it stops short of a 5, but the context is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_age_milestones年齢到達日(40/65/70/75)と保険料の変化AInspect

Returns the exact date each threshold is crossed and which premium starts or stops: long-term care begins at 40 and ends at 65, pension ends at 70, health insurance ends at 75 (transfer to 後期高齢者医療).

Compute this here rather than by subtracting years. Under 年齢計算ニ関スル法律 an age is reached the day BEFORE the birthday, so someone born on the 1st of a month attains it in the previous month and their premium changes a month earlier than expected.

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoDate to judge against. Defaults to today.
birth_dateYesDate of birth, YYYY-MM-DD.

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively does so by revealing the non-obvious legal computation rule: an age is reached the day before the birthday, with a concrete example for people born on the 1st of a month. This is genuinely useful behavioral context beyond what the schema could convey.

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 compact and front-loaded: the first sentence states the core output, and the second paragraph adds a necessary legal nuance that directly affects correctness. Every sentence earns its place, with no fluff or repetition.

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 simple two-parameter, pure-computation tool with no output schema, the description is complete: it states what is returned (exact dates and premium start/stop), covers all relevant thresholds, and warns about the legal edge case. An agent has enough information to invoke it correctly and interpret its results.

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%, so the baseline is 3. The description references birth dates in its example but does not add extra meaning about the as_of parameter or the expected date format beyond what the schema already provides. The schema handles parameter semantics adequately.

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: 'Returns the exact date each threshold is crossed and which premium starts or stops.' It lists the exact age thresholds (40/65/70/75) and what happens at each, making the tool's purpose concrete and distinguishable from sibling calculation tools like get_insurance_rates or national_insurance.

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 gives clear usage direction: 'Compute this here rather than by subtracting years.' It explains why this tool is the correct choice by citing the 年齢計算ニ関スル法律 rule. However, it does not explicitly name alternative sibling tools or state when those should be preferred, so it falls just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_insurance_rates社会保険料率・雇用保険料率AInspect

Health insurance, long-term care, pension and child-support rates for a prefecture, plus the bonus caps and the employer-only child-care contribution. Health rates differ by prefecture and change each March; pension is national. Add business_type for the employment insurance rates, which change each April — pass as_of to get the rate in force on that date (FY2025 and FY2026 are held; March is the month where health rates are already the new year's while employment insurance is still the old year's).

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoISO date. Selects the employment insurance fiscal year (April to March). A date before the held tables returns out_of_coverage rather than a guess.
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.
business_typeNoInclude employment insurance rates for this band.

TDQS

A4.2/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden. It discloses that health rates differ by prefecture and change each March, pension is national, employment insurance changes each April, FY2025 and FY2026 are held, and an out-of-coverage date returns out_of_coverage rather than a guess. The March crossover nuance is especially valuable.

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 one dense sentence that front-loads the full list of outputs before explaining timing and parameter conditions. Every clause contributes a distinct fact, and while it is long, the complexity of the rate-year interactions justifies the length.

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?

Given that no output schema exists, the description thoroughly covers the query space: available rates, prefecture dependence, national pension, employment-insurance bands, as_of fiscal-year behavior, and the March mismatch. The only notable gap is that it does not describe the exact response structure or field names.

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 adds meaningful context beyond the schema: business_type triggers employment insurance rates, as_of selects the in-force rate on that date, and the fiscal-year timing interplay between health and employment insurance is clarified. This is more than the schema provides alone.

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?

The description clearly enumerates what the tool returns: health insurance, long-term care, pension, child-support rates, bonus caps, and the employer-only child-care contribution. It is specific about scope and distinguishes this from obvious siblings like get_minimum_wage or list_workers_compensation_rates, though it does not explicitly name alternatives.

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 gives concrete usage guidance: add business_type for employment insurance rates, pass as_of to select the rate in force on a date, and be aware of the March crossover between health and employment insurance years. It does not explicitly state when not to use this tool or name alternative tools, but the parameter-driven conditions are clearly explained.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_minimum_wage最低賃金(指定日時点)AInspect

Hourly 地域別最低賃金 for a prefecture. Revisions take effect prefecture by prefecture from October, on different days, so a date matters — pass one when checking a past payroll rather than assuming the current rate applied. History runs back to FY2002.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoYYYY-MM-DD. Defaults to the rate currently in force.
as_ofNoAlias for date. YYYY-MM-DD.
historyNoReturn the full history instead of one date.
prefectureYesPrefecture of the employer's 適用事業所 — English ("Tokyo"), Japanese ("東京" or "東京都"), or JIS code 1-47. Health insurance rates differ by prefecture; pension does not.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full disclosure burden, and it discloses the tool's central behavioral trap: returned rates are effective-date-dependent and vary per prefecture, so a stale assumption would yield wrong results. It also sets data-coverage expectations ("History runs back to FY2002") for time-travel queries. The only unaddressed trait is return shape, partly mitigated by the "Hourly" qualifier.

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?

Three sentences, each earning its place: purpose, temporal usage warning, and data coverage. The most important caveat (date sensitivity) is front-loaded immediately after the purpose statement. No filler, no restatement of schema fields.

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 straightforward lookup with 100% parameter documentation and no output schema, the description covers purpose, the revision-timing trap, and historical depth — sufficient for correct invocation. Minor gaps are the unstated read-only/safety profile (no annotations) and no return-value description, both low-risk given the "get_" prefix and simple hourly-rate nature.

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 coverage is 100%, so each parameter is already documented with format and default behavior (e.g., date defaults to the currently enforced rate; prefecture accepts English, Japanese, or JIS code). The description enriches the date parameter by explaining why it matters and ties the history parameter to the FY2002 range, but the schema does the heavy lifting — baseline 3 with modest added meaning.

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?

The opening sentence names a specific resource — "Hourly 地域別最低賃金 for a prefecture" — with a clear lookup verb and scope, and the title's "(指定日時点)" adds the as-of-date qualifier. It is easily distinguished from siblings like get_insurance_rates and get_statute_text by domain, though it never names an alternative 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?

The description gives concrete operational guidance: "pass one when checking a past payroll rather than assuming the current rate applied," backed by the reason (revisions take effect prefecture by prefecture from October on different days). This tells an agent exactly when the optional date is effectively required, though it does not name alternative tools or state exclusion conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statute_text条文の本文を取得AInspect

Returns the full text of a Japanese statutory provision, as published by e-Gov.

The judgement tools name the statute or notice their answer rests on, but not its words. Use this to quote the provision itself — a citation the reader can check beats a citation they have to take on trust, and Japanese payroll advice is routinely wrong in ways that only reading the article reveals.

Only the provisions this API cites are bundled (about 28 across 8 laws); call it with no ref to list them. Abbreviations as practitioners write them (健保法43条, 厚年法81条の2, 徴収法11条), a missing 第, and paragraph-level references all resolve to the article. For anything outside this set, say so rather than reciting it from memory.

ParametersJSON Schema
NameRequiredDescriptionDefault
refNoA citation such as "健康保険法第43条". Omit to list every provision available.

TDQS

A4.9/5.0
Behavior5/5

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

No annotations are supplied, so the description carries the full burden. It discloses the limited bundled set ('about 28 across 8 laws'), the behavior of calling without a ref, resolution of abbreviations and missing 第, paragraph-level references resolving to the article, and the expected behavior for references outside the set. This is strong behavioral disclosure.

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 front-loaded with the core action and stays relevant throughout. The motivational sentence about checked citations is useful context but slightly expands length; overall every major point earns its place without being bloated.

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 one-parameter, no-output-schema tool with no annotations, the description is operationally complete. It covers what the tool returns, how to enumerate available provisions, how references are normalized, and how to handle unsupported citations. An agent can invoke this tool correctly without further inference.

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?

Although the schema already describes ref, the description adds significant meaning: it documents omission semantics, gives practical abbreviation examples like 健保法43条 and 厚年法81条の2, clarifies that a missing 第 is tolerated, and states that paragraph-level references resolve to the article. This goes well beyond the schema's minimal description.

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 names a specific verb and resource: 'Returns the full text of a Japanese statutory provision, as published by e-Gov.' It also distinguishes itself from the judgement tools, which name a statute but do not provide its words, making it clear this tool is for retrieving quotable statutory text.

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 explicitly says when to use the tool: 'Use this to quote the provision itself.' It also sets boundaries by noting the bundled corpus is limited, telling the agent to 'call it with no ref to list them,' and instructing that anything outside the set should be acknowledged rather than invented.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

judge_annual_average年間平均による保険者算定(季節変動がある場合)AInspect

For work whose April-June happens to be its busiest or quietest quarter, where the ordinary calculation would fix a grade that is wrong for eleven months of the year. Available for 定時決定 (since April 2011) and 随時改定 (since October 2018).

The 随時改定 figure is NOT a plain twelve-month average: it is the three-month average of FIXED pay plus the twelve-month average of NON-FIXED pay, so the two are supplied separately, and three distinct grade tests must all pass.

Both routes need the employee's consent and require that the swing recurs every year for reasons inherent to the work — a one-off busy period does not qualify. Neither is something this tool can verify, so both are declared inputs and are echoed back in the response.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesregular = 定時決定の年間平均, revision = 随時改定の年間平均.
monthsYesExactly 12 entries. For regular: 前年7月 through 当年6月 in order. For revision: the 9 months BEFORE the pay change, then the 3 months after it.
worker_typeNogeneral = 一般の被保険者 (17-day threshold). part_time_short_hours = 短時間就労者, works shorter hours but meets the three-quarters test (17 days, with a 15-day fallback that exists ONLY in 定時決定). short_time_insured = 短時間労働者 at a 特定適用事業所 (11 days). Defaults to general.
employee_consentYesThe employee has consented. Mandatory condition.
fixed_pay_changeNorevision only.
recurring_annuallyYesThe swing recurs every year for reasons inherent to the work. Mandatory condition.
current_remunerationNorevision only.

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and handles it well. It reveals that the 随時改定 result is not a plain twelve-month average, explains the fixed/non-fixed split, mentions that three grade tests must pass, and discloses that the tool cannot verify consent or recurrence and merely echoes those declarations back.

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 dense but well-organized: use case first, then route-specific logic, then requirements and limitations. Every sentence contributes information, and there is no filler or repetition.

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 complex tool with seven parameters and no output schema, the description covers the core conditions, formulas, route differences, and input verification. The main gap is that it never explicitly states what the response contains beyond echoing the consent and recurring-annually inputs, such as whether the computed grade is returned.

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 adds meaning by explaining the mixed-average formula, the separate treatment of fixed and non-fixed pay, and the significance of consent and recurring_annually as mandatory echoed inputs. The schema already documents most property-level meaning though.

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 action: compute the annual-average insurer grade for seasonal work, and distinguishes the two supported routes (定時決定 and 随時改定). It clearly separates this from the ordinary calculation that would produce a wrong grade for most of the year.

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 explicitly tells when to use the tool: when April-June is the busiest or quietest quarter and the ordinary calculation would fix an incorrect grade. It also gives when-not conditions, such as a one-off busy period, and states the mandatory consent and recurring-annual-swing requirements.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

judge_annual_leave年次有給休暇 — 付与日数と年5日の時季指定義務AInspect

Works out how many days of paid leave someone has been granted, and whether the employer still owes the five days it must direct.

労働基準法第39条 grants ten working days once six months of service are complete and attendance reaches eighty per cent of all working days, then adds one, two, four, six, eight and ten days in the years that follow. The ceiling everyone quotes as twenty is not in the article: it is the ten of the first grant plus the ten added from the sixth year.

Someone under thirty hours a week working four days or fewer takes a smaller table from 施行規則第24条の3. Thirty hours is where it turns — at or above it the ordinary grant applies no matter how few days are worked, and treating such a person as part-time under-grants them. Ask for both the weekly days and the weekly hours; one without the other cannot settle it.

Where ten or more days are granted, 第39条第7項 requires the employer to fix the timing of five of them within the year, and days the employee took of their own accord count toward it. A grant lapses two years after it is made (第115条), so one year carries over.

The attendance figure is a question about the workplace: leave for a work injury, maternity, childcare and paid leave already taken all count as attendance. Ask for a rate that has been worked out rather than dividing days present by days in the year. Without one the tool reports the eighty per cent test as not judged rather than assuming it passed.

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoDate to judge against, YYYY-MM-DD. Defaults to today.
hired_onYesDate of hire, YYYY-MM-DD. Grants fall six months later, then annually.
days_takenNoDays already taken in the current year, counted against the five the employer must direct.
annual_daysNo一年間の所定労働日数, in place of weekly_days.
weekly_daysNo週所定労働日数.
weekly_hoursNo週所定労働時間. Thirty or more takes the ordinary grant whatever the day count.
attendance_rateNoAttendance as a fraction of all working days, 0 to 1. Eighty per cent or more grants.

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure and does so thoroughly: it explains the legal thresholds, the part-time switch at 30 hours, carryover and lapse rules, and the fallback when attendance_rate is omitted — reporting the 80% test as not judged rather than assuming it passed.

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 dense but well-structured: purpose, legal rule, part-time exception, obligation/carryover, and attendance handling each get a focused paragraph. No sentence is filler, and the core purpose is front-loaded.

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?

Despite having no output schema, the description states the two result dimensions clearly: granted days and whether the five-day obligation remains. It also covers the main input-relationship pitfalls, missing-data behavior, and legal context needed to call the tool correctly for a complex 7-parameter judgment.

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%, but the description greatly enriches parameter meaning: weekly_hours at or above 30 overrides day count, weekly_days and weekly_hours must be judged as a pair, attendance_rate is evaluated against 0.8, and days_taken count against the five-day obligation. This goes well beyond the baseline for a fully documented schema.

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 opening sentence specifies two concrete outputs: how many paid-leave days were granted and whether the employer still owes the five days it must direct. This is a clear verb+resource statement that distinguishes the tool from siblings by naming its legal scope.

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 gives explicit invocation guidance: ask for weekly days and weekly hours together because neither alone settles the part-time determination, and request attendance as a pre-calculated rate rather than a raw day count. It does not name alternative tools or state when not to use this one, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

judge_leave_end_revision産休・育休終了時改定(1等級差で改定)AInspect

A separate route with a lower bar than 随時改定, and the one people forget. ONE grade of movement is enough, and fixed pay need not have changed at all — which matters because returning to shorter hours usually cuts pay without changing any rate, so 随時改定 would not fire and the employee would keep overpaying on their pre-leave grade.

Only one of the three months has to reach the day threshold, and months that miss it are excluded from the average. The employee must apply; an employer cannot file it alone. It is unavailable if another leave begins the day after this one ends.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes産前産後休業終了時改定 or 育児休業等終了時改定.
monthsYesThree months starting with the one containing the day AFTER the leave ended.
worker_typeNogeneral = 一般の被保険者 (17-day threshold). part_time_short_hours = 短時間就労者, works shorter hours but meets the three-quarters test (17 days, with a 15-day fallback that exists ONLY in 定時決定). short_time_insured = 短時間労働者 at a 特定適用事業所 (11 days). Defaults to general.
current_remunerationYes報酬月額 before the leave.
next_leave_starts_immediatelyNoTrue if another leave began the day after this one ended, which bars the application.

TDQS

A4.1/5.0
Behavior5/5

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

No annotations are provided, so the description carries the full burden, and it delivers: it discloses that fixed pay need not change, that only one of three months must meet the threshold, that missed months are excluded from the average, that the employee must apply, and that the tool is unavailable when another leave starts immediately after. These are substantive behavioral details beyond what the tool name or schema alone would convey.

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 dense but efficient: the core differentiator from 随時改定 is front-loaded, and each rule earns its place. The phrase 'the one people forget' is mildly non-essential but reinforces usage context. Overall it is well-structured for its informational load.

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

Completeness3/5

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

The description and schema together cover invocation conditions and parameter meanings well. However, there is no output schema and the description never states what the tool returns — whether it is a boolean decision, a revised grade, or a calculation result. For a 5-parameter tool with no annotations and no output schema, that is a meaningful completeness gap.

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 description coverage is 100%, so the baseline is 3. The description adds extra meaning beyond the schema by explaining that months missing the threshold are excluded from the average and that fixed-pay changes are irrelevant. This enriches the semantics of the 'months' and 'current_remuneration' parameters rather than merely restating them.

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?

The description clearly identifies the resource: leave-end revision (産休・育休終了時改定) and its defining condition — one grade of movement is enough. It distinguishes this route from 随時改定, so an agent can tell it apart from sibling tools like judge_monthly_revision. However, it never explicitly states the action verb such as 'judges' or 'determines whether,' relying on the tool name and title for that.

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 gives a concrete trigger: returning to shorter hours cuts pay without changing a rate, so 随時改定 would not fire — this tool is the lower-bar alternative. It also states the one-of-three-month rule and the next-leave exclusion. It stops short of explicitly naming the sibling tool or saying 'use this instead of X,' but the comparison to 随時改定 is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

judge_monthly_revision随時改定(月額変更届)の要否判定AInspect

Decides whether a pay change forces the standard remuneration to be revised, and answers SEPARATELY for health insurance and pension — the tables differ, so a change routinely moves one and not the other. Above roughly 665,000 yen the pension table is exhausted, so a large raise for a well-paid employee moves several health grades and no pension grade.

Do not try to reason this out unaided. Neither the "two grades or more" test nor the requirement that FIXED pay changed appears anywhere in 健康保険法 or its regulations — both come from 昭和36年 保発第4号, a ministerial notice, along with four exceptions near the top and bottom of each table where a single grade is enough. Overtime alone never triggers a revision, and a rise in fixed pay whose three-month average comes out LOWER is excluded even at a wide grade gap.

When the answer is no, the response says which requirement failed rather than just false. If the three-month average is distorted by a seasonal peak, see judge_annual_average.

ParametersJSON Schema
NameRequiredDescriptionDefault
monthsYesThree months as "remuneration:payment_basis_days", comma separated — e.g. "350000:31,352000:30,349000:31". 支払基礎日数 is calendar days for monthly-paid staff, or days actually worked for daily-paid staff.
worker_typeNogeneral = 一般の被保険者 (17-day threshold). part_time_short_hours = 短時間就労者, works shorter hours but meets the three-quarters test (17 days, with a 15-day fallback that exists ONLY in 定時決定). short_time_insured = 短時間労働者 at a 特定適用事業所 (11 days). Defaults to general.
fixed_pay_changeYesWhether FIXED pay changed: base pay, rate changes, a new or altered fixed allowance, a change of pay basis. Overtime and other variable pay are not fixed pay — use "none" and the tool will explain why no revision follows.
current_remunerationYesThe 報酬月額 the CURRENT grade was based on — the actual pay figure, not the 標準報酬月額. The upper and lower exceptions turn on actual pay, so substituting the grade's standard value gives a wrong answer at the extremes.

TDQS

A3.6/5.0
Behavior5/5

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

With no annotations, the description carries the full burden, and it does so exceptionally well: it reveals the separate health/pension answers, the ~665,000 yen pension ceiling, the ministerial-notice legal source, the overtime exclusion, and the failed-requirement explanatory output. This goes far beyond the structured fields and gives an agent real insight into tool behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core three paragraphs are front-loaded and information-dense, but the sentence 'When the answer is no, the response says which requirement failed rather than just false' is repeated verbatim dozens of times. This severe redundancy obscures the otherwise good structure and wastes significant token budget.

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 no-output-schema decision tool, the description covers the legal basis, key exceptions, scope, and failure-reporting behavior, while the input schema supplies parameter details. The main gap is an exact description of the output shape for a 'yes' or mixed health/pension answer, but the domain behavior is otherwise sufficiently complete.

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 coverage is 100%, so the schema already documents the months format, worker_type thresholds, fixed_pay_change meaning, and the current_remuneration actual-pay caveat. The description adds useful domain context but no new input-format or parameter-level meaning, so the baseline of 3 is appropriate.

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?

The first sentence clearly names the exact decision ('whether a pay change forces the standard remuneration to be revised'), the resource (standard remuneration), and the separate health/pension scope. It does not explicitly name sibling tools or state what it is not, so it falls short of the strongest differentiation, but the function is unambiguous.

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

Usage Guidelines3/5

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

The description implies the trigger ('a pay change') and the decision context (monthly revision), and it warns against attempting the reasoning unaided. However, it never says when to prefer judge_annual_average, decide_regular_remuneration, or another sibling, and it gives no explicit exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

judge_worker_type被保険者区分の判定 — 四分の三基準と20時間・88,000円・学生・51人AInspect

Decides whether someone is covered by health and pension insurance, and on which payment-basis day count their annual determination runs.

Call this before decide_regular_remuneration or judge_monthly_revision whenever the person is anything other than plainly full-time. Those tools take a worker_type, and guessing it changes a real number: the determination counts months of seventeen payment-basis days for an ordinary employee and eleven for a 短時間労働者. Get the classification wrong and the answer is wrong with no sign of it.

健康保険法第3条第1項第9号 covers anyone whose weekly hours and monthly days reach three-quarters of a comparable full-time worker. Below that, four further tests decide it: twenty hours a week, 88,000 yen a month, not a student, and a workplace of at least fifty-one insured people. The engagement must also be expected to run past two months.

The 88,000 figure leaves out overtime, bonuses, commuting and family allowances. Folding those in is the usual route to a wrong answer, so ask for 所定内賃金 specifically rather than total pay.

What counts as a comparable full-time worker, and whether someone is a student for this purpose, are facts about the workplace and the person. Ask rather than assume; the tool applies the tests to what you pass and names any it could not evaluate.

ParametersJSON Schema
NameRequiredDescriptionDefault
is_studentNoA student under 学校教育法. Night courses and those with a graduation certificate are exceptions.
monthly_daysNo1月間の所定労働日数. The article tests days as well as hours, so pass both where known.
monthly_wageNo所定内賃金の月額 — excluding overtime, bonuses, commuting and family allowances.
weekly_hoursYes1週間の所定労働時間.
employment_monthsNoHow long the engagement is expected to run, in months.
normal_monthly_daysNoThe same figure for a comparable full-time worker.
normal_weekly_hoursNoThe same figure for a comparable full-time worker at that workplace. Defaults to 40.
workplace_insured_countNoPension-insured headcount at the employer, not counting short-time workers.

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations provided, the description fully carries the behavioral disclosure burden. It reveals that missing monthly days or an unclear workplace count yields 未判定, explains the short-term exception, student exemption nuances, and clarifies how counts are interpreted. It also warns that a wrong classification silently produces a wrong downstream answer.

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 front-loaded with purpose and invocation order, and the paragraphs are thematically organized. It is long, but the legal complexity justifies much of the length. It loses a point for some redundancy around the 51-person rule and a few vague or awkward sentences, such as 'the one-word rules may be right, but the reason is what the tool will ask about later.'

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?

Despite having no output schema and no annotations, the description is remarkably complete for a complex legal decision tool. It covers legal thresholds, exceptions, parameter meanings, failure behavior (未判定), when to call downstream siblings, and which rules are outside scope. The only minor absence is an enumeration of exact worker_type return values, but this is not essential for correct invocation.

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 schema already covers all 8 parameters, but the description adds substantial legal meaning: monthly_wage is 所定内賃金 excluding allowances such as overtime, commuting, and bonuses; monthly_days is required for the three-quarter test; workplace_insured_count refers to 健康保険 insured people, excludes the person being judged, and has special 501-person thresholds; employment_months triggers the short-term exception.

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 first sentence states a specific action: deciding insurance coverage and the payment-basis day count for annual determination. It also distinguishes itself from siblings by naming decide_regular_remuneration and judge_monthly_revision as downstream tools and by explicitly excluding the 4-hour 3-day rule.

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?

The description gives explicit when-to-call guidance: before decide_regular_remuneration or judge_monthly_revision whenever the person is not plainly full-time. It also states when not to use it (the 4-hour 3-day rule) and instructs the agent to ask the user for missing facts rather than assume them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_workers_compensation_rates労災保険率 — 事業の種類別AInspect

Workers compensation (労災保険) rates by business type, and the employer premium on a given 賃金総額.

The whole premium falls on the employer — nothing is deducted from the employee, unlike every other statutory premium. Rates run from 2.5/1000 to 88/1000 depending on the industry, a 35-fold spread, so this cannot be estimated. Pass the 事業の種類の番号 from the 労働保険関係成立届; omit it to get the whole table.

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoISO date the wages relate to.
wage_totalNo賃金総額 for the period, in yen — the same wage base employment insurance uses, so a commuting allowance counts and a reimbursement does not.
business_typeNo事業の種類の番号 (02-99), e.g. "35" for 建築事業 or "98" for wholesale and retail.

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses that the entire premium falls on the employer, that nothing is deducted from the employee, that rates vary widely, and how the optional parameter changes output. It does not specify output shape or the effect of as_of in detail, but this is still substantial disclosure.

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?

Two tightly focused paragraphs with the main purpose front-loaded. Every sentence adds useful context: the premium, the rate range, why estimation is unsafe, and how to control the output.

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 3-parameter tool with no output schema and no annotations, the description covers the core invocation logic and key behavioral context well. It is slightly incomplete on as_of semantics and exact return format, but the schema plus the table/premium language close most gaps.

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 description coverage is 100%, so the baseline is 3. The description adds real meaning by tying business_type to the 労働保険関係成立届 and explaining the omit-for-full-table behavior. It also clarifies that wage_total is the base for the employer premium, though as_of is left to the schema.

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 clearly states that the tool lists 労災保険 rates by business type and computes the employer premium on a given 賃金総額. It is specific about the resource and behavior, and the scope is distinct from sibling tools like get_insurance_rates or national_insurance.

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?

It explicitly says to pass the 事業の種類の番号 from the 労働保険関係成立届 and that omitting it returns the whole table. The phrase 'this cannot be estimated' gives a clear reason to use the tool for exact rates. It does not name alternative tools or exclusion conditions, but the context is strong.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_standard_remuneration標準報酬月額の等級照会AInspect

Maps a monthly amount to its health grade (1-50) and pension grade (1-32), with the standard remuneration each resolves to and whether the pension grade was clamped. Use it to check a grade, not to compute premiums — calculate_payslip does that.

ParametersJSON Schema
NameRequiredDescriptionDefault
remunerationNoMonthly remuneration in yen. Omit to get the whole grade table instead of one lookup.

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, so the description itself must carry behavioral disclosure. It states the output semantics, including the clamped-pension-grade flag, and clarifies the tool's scope. It does not explicitly state read-only or error behavior, but 'lookup' and 'check a grade' strongly imply non-mutating behavior.

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?

Two focused sentences with no filler. The core mapping behavior is front-loaded, and the usage distinction is placed right after, making the tool easy to scan and understand quickly.

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?

With no output schema, the description covers the main return contents: health grade, pension grade, resolved standard remuneration, and clamp flag. It lacks exact response field names and out-of-range handling, but for a single optional parameter, this is nearly complete.

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 one parameter is already fully described ('Monthly remuneration in yen. Omit to get the whole grade table instead of one lookup.'). The description adds no additional parameter-level meaning beyond what the schema provides.

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?

Description names a specific verb ('Maps') and resource ('monthly amount' to 'health grade (1-50) and pension grade (1-32)'), and lists the returned elements. It also distinguishes itself from calculate_payslip by stating what it is not for.

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 instructs when to use it ('to check a grade') and when not to ('not to compute premiums'), naming calculate_payslip as the alternative. The schema adds another usage mode: omit the parameter to get the whole grade table.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

national_insurance国民年金・国民健康保険 — 被用者保険に入らない人の側AInspect

For anyone outside employee cover: the self-employed, freelancers, people between jobs.

Use this instead of calculate_payslip when the person is not an employee. Running a freelancer through the payslip returns a figure computed under a different scheme entirely, with nothing in the answer to say so. If you are unsure which side someone is on, judge_worker_type decides it.

The two schemes differ in how far they can be answered, and the difference matters. 国民年金法第87条 makes the pension contribution a statutory amount times a revision rate set each year by cabinet order — the same figure everywhere in the country, flat regardless of income. That comes back as a number.

国民健康保険法第76条 leaves the health contribution to each municipality, collected from the head of the household, and states no figure at all. Around 1,700 municipalities each set their own income-based, per-person and per-household components and their own ceilings. There is no national number to give. Do not estimate one, and do not present a figure from one city as though it were general — tell the person to ask their own municipality, which is what the response says.

Exemptions, deferrals and the student special case all change what is actually paid, and whether they apply turns on income and household. Those are not judged here.

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoDate to judge, YYYY-MM-DD. Outside the year carried it refuses rather than quoting a stale figure.
monthsNoMonths to total. The contribution is flat, so this multiplies.
supplementaryNoAdd the optional 付加保険料 of 400 a month, which raises the basic old-age pension later.

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It explains that the pension contribution comes back as a number, while the health insurance contribution has no national figure due to municipal variation. It also sets expectations about what is not handled, such as exemptions and deferrals.

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 longer than minimal, but each paragraph contributes meaningful routing or behavioral information. It front-loads the target audience and the key alternative tool, and the legal context helps an agent understand why results may be partial.

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 tool with no output schema and rich legal nuance, the description covers what results to expect for pension versus health insurance, when to use it, and what it does not judge. It could be more explicit about the exact return shape, but it gives sufficient context for correct invocation.

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%, so the schema already documents all three parameters. The description adds useful context about flat pension contributions and municipal health variation, but it does not add new parameter-level meaning beyond what the schema provides.

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?

The description clearly identifies the tool's audience (self-employed, freelancers, people between jobs) and its subject matter (国民年金 and 国民健康保険). It distinguishes itself from calculate_payslip, but it never states the core action directly as a verb like 'calculate' or 'estimate' — the function is implied through phrases like 'comes back as a number'.

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?

The description explicitly says to use this tool instead of calculate_payslip when the person is not an employee, and points to judge_worker_type when unsure. It also states that exemptions, deferrals, and special cases are not judged here, giving clear exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_corporate_number法人番号・インボイス登録番号の検証AInspect

Checks the National Tax Agency check digit on a 13-digit 法人番号, or on a qualified invoice registration number (the same 13 digits prefixed with T).

This proves the number is well formed. It does NOT prove the number is registered, and it does not identify the holder: sole proprietors receive invoice numbers that satisfy exactly the same rule, so a passing check digit must not be reported as evidence of a corporation. To confirm registration, use the National Tax Agency's own lookup.

ParametersJSON Schema
NameRequiredDescriptionDefault
baseNoThe 12-digit 会社法人等番号 instead, to compute its check digit and get the 13-digit 法人番号. Use this when registering, not when checking.
numberNo13 digits, or T followed by 13 digits.

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden, and it delivers exceptional transparency. It discloses that the tool only proves well-formedness, not registration or holder identity, explains why sole proprietors can satisfy the same rule, and warns against overreporting the result. This goes well beyond the typical validation-tool description.

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?

Three compact sentences with no filler. The core action is front-loaded, and the critical caveats follow immediately. Every sentence earns its place, including the explicit redirection to the National Tax Agency lookup.

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?

The description is largely sufficient for a simple validation tool: it names accepted formats, states what a passing result means, warns about false implications, and names the right external alternative. Minor gaps remain: it does not mention the batch sibling, the base parameter's number-generation mode, or the return/error behavior, though the input schema covers parameter details.

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%, so the baseline is 3. The description adds useful context about the T prefix and the check-digit-only nature of validation, but it does not explain the base parameter's use case for computing a check digit from a 12-digit 会社法人等番号. The schema already covers this, so the description neither strongly adds nor detracts.

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?

Uses a specific verb ('Checks') and precisely identifies the resource: the National Tax Agency check digit on a 13-digit 法人番号 or a T-prefixed qualified invoice registration number. The description is clear, but it does not explicitly distinguish itself from the sibling validate_invoice_numbers_batch, and it omits the base parameter's alternative behavior of computing a check digit.

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?

Explicitly tells the agent when not to rely on this tool: a passing check digit does not prove registration and must not be reported as evidence of a corporation. It also points to the National Tax Agency's own lookup for registration confirmation. However, it does not mention the batch sibling tool for validating multiple numbers, which is a relevant routing gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_invoice_numbers_batchインボイス登録番号をまとめて形式検査AInspect

Checks the National Tax Agency check digit on many qualified-invoice registration numbers in one call.

Be careful how you report the result. A passing check digit means the shape of the number is right and nothing more. 消費税法第57条の2 provides both for the Commissioner to revoke a registration and for one to lapse, so a well-formed number can be unregistered, revoked or expired. Never tell someone a number is valid, verified or confirmed on the strength of this — say the format checks out, and that the register itself was not consulted.

What it does earn is elimination. Anything failing on shape needs no lookup at all, so the list taken to 国税庁「適格請求書発行事業者公表サイト」 gets shorter. That site publishes the revocation and lapse dates, and offers a bulk download and a Web-API for large lists.

Duplicates come back as given rather than folded together, and each result carries the index of its input, so rows line up with the caller list they came from.

ParametersJSON Schema
NameRequiredDescriptionDefault
numbersYesRegistration numbers as written, including the leading T. Up to 1000 per call.

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations provided, the description fully carries the behavioral disclosure burden. It explicitly warns that a passing check digit does not mean the number is registered, explains revocation/lapse possibilities, says the register is not consulted, and details duplicate and index behavior. This is unusually transparent.

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 longer than average, but it front-loads the core function in the first sentence and organizes the rest into crucial caveats, workflow value, and result behavior. Each section earns its place, though the detail about the public site's bulk download and Web-API is somewhat tangential.

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 one-parameter tool with no output schema, the description covers the important context: what the check does and does not prove, how results are keyed, and how duplicates behave. It does not specify the exact return payload shape, but it gives enough behavioral detail for an agent to call it and interpret results safely.

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?

The only parameter, 'numbers', is already fully described in the schema with the leading T requirement and the 1000-per-call limit, so schema coverage is 100%. The description adds no new parameter-level meaning beyond what the schema already states, making the baseline 3 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 action (checks the National Tax Agency check digit) on a specific resource (qualified-invoice registration numbers) in batch, and clearly differentiates this from the sibling validate_corporate_number tool by targeting invoice registration numbers specifically. The title also reinforces the batch scope.

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 gives clear workflow context: use this to filter out numbers that fail format checks before consulting the official register, and explains why the actual register must be consulted for real validity. It does not explicitly name alternative sibling tools or state 'when not to use', so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 30 tool updates
    • First observedbusiness_days
    • First observedcalculate_annual_cost
    • First observedcalculate_bonus
    • First observedcalculate_overtime_pay
    • First observedcalculate_payroll_batch
    • First observedcalculate_payslip
    • First observedcalculate_withholding_tax
    • First observedcalculate_year_end_adjustment
    • First observedcheck_data_freshness
    • First observedcheck_insurance_eligibility
    • First observedcheck_leave_exemption
    • First observedcommuting_allowance_exemption
    • First observedconsumption_tax
    • First observeddecide_regular_remuneration
    • First observeddecide_regular_remuneration_batch
    • First observedestimate_resident_tax
    • First observedget_age_milestones
    • First observedget_insurance_rates
    • First observedget_minimum_wage
    • First observedget_statute_text
    • First observedjudge_annual_average
    • First observedjudge_annual_leave
    • First observedjudge_leave_end_revision
    • First observedjudge_monthly_revision
    • First observedjudge_worker_type
    • First observedlist_workers_compensation_rates
    • First observedlookup_standard_remuneration
    • First observednational_insurance
    • First observedvalidate_corporate_number
    • First observedvalidate_invoice_numbers_batch

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Taiwan statutory payroll calculation — labor & health insurance, labor pension, 2nd-gen NHI supplementary premium, income-tax withholding, and old-age benefits. Sourced from official gazettes, verified against official sample data.
    9
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides access to Japanese labor and social insurance laws and administrative circulars from sources like the e-Gov API and the Ministry of Health, Labour and Welfare. It enables users to search for and retrieve legal texts and notices to ensure accuracy in labor-related inquiries.
    6
    2,551
    61
    MIT
  • -
    license
    Not graded
    quality
    C
    maintenance
    Enables access to Japanese labor and social insurance law data via e-Gov API and official notices from MHLW and JAISH, running as a local MCP server on Windows.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    日本の公的制度(補助金/法令/税務/法人/判例)を提供する MCP サーバー。261 ツール、¥3/billable unit、匿名 3/日 free。Evidence Packets with source_url + source_fetched_at + known_gaps. PyPI: autonomath-mcp.
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.8/5.0
Disambiguation4/5

Most tools have distinct, well-defined jobs—payroll calculations, revision judgments, eligibility checks, and data lookups are clearly separated. The main remaining risk is among the standard-remuneration judgment tools and the batch/singleton pairs, but their descriptions are detailed enough to prevent serious misselection.

Naming Consistency3/5

There is a reasonably recognizable pattern with calculate_, judge_, check_, get_, and validate_ groups. However, several noun-phrase names (business_days, consumption_tax, national_insurance, commuting_allowance_exemption) and overlapping verb choices (decide_ vs judge_ vs check_) prevent a fully consistent verb_noun convention.

Tool Count2/5

At 30 tools, the surface is materially larger than the 3–15 range that keeps an agent's selection burden low. Batch variants and three separate standard-remuneration revision tools add complexity, and although the domain is broad, the count feels heavy for an assistant to choose from confidently.

Completeness4/5

The core workflows are well covered: monthly pay, bonuses, overtime, standard-remuneration determination, year-end adjustment, resident tax, leave, worker classification, and invoice validation. Gaps exist around statutory benefit payments such as sickness or maternity allowances and retirement-specific processing, but most payroll and social insurance tasks can be completed without dead ends.