# 日本の給与・社会保険・労働法 (io.github.kishida-devil/jp-payroll-mcp): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/io.github.kishida-devil%2Fjp-payroll-mcp/versions/latest)
- Connected to: https://japan-payroll-api.tsumugi.workers.dev/mcp
- Repository: https://github.com/kishida-devil/jp-payroll-mcp
- Scoring rules: v2
- Tools: 30
- Average: 51.1 / 100 (Cloudy)
- Near-identical pairs: 0

This page shows how 日本の給与・社会保険・労働法 (io.github.kishida-devil/jp-payroll-mcp)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Minor: 30 tools. Above 25, models start to tell tools apart less well.
- Minor: The server's instructions are 3260 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.

## Tools

- `consumption_tax`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `list_workers_compensation_rates`: 37 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `validate_corporate_number`: 37 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_bonus`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: dependants.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `decide_regular_remuneration`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Major: It may be destructive, but destructiveHint is not set.
- `lookup_standard_remuneration`: 42 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `business_days`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_payroll_batch`: 46 / 100
  - Major: Arguments without a description: employees[].age, employees[].business_type, employees[].column, employees[].dependants, employees[].income_tax, employees[].resident_tax, employees[].workers_comp_type, employees[].employment_type, defaults.prefecture, defaults.age, defaults.business_type, defaults.column, defaults.dependants, defaults.income_tax, defaults.resident_tax, defaults.workers_comp_type.
  - Minor: String arguments with no constraint or example: employees[].business_type, employees[].workers_comp_type, defaults.prefecture, defaults.business_type, defaults.workers_comp_type.
  - Minor: The meaning of the boolean argument employees[].income_tax is unclear.
  - Minor: The meaning of the boolean argument defaults.income_tax is unclear.
- `get_age_milestones`: 47 / 100
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `get_insurance_rates`: 47 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `estimate_resident_tax`: 48 / 100
  - Major: Arguments without a description: other_income, mutual_aid, life_insurance.new_general, life_insurance.old_general, life_insurance.care_medical, life_insurance.new_pension, life_insurance.old_pension, earthquake_insurance, earthquake_insurance.earthquake, earthquake_insurance.old_long_term, medical_expenses, medical_reimbursed, casualty_loss, disaster_related_expense, dependants, dependants.general, dependants.specified, dependants.elderly, dependants.elderly_cohabiting_parent, dependants.under_23, disabilities, disabilities.general, disabilities.special, disabilities.special_cohabiting, flags, flags.widow, flags.single_parent, flags.single_parent_father, flags.working_student, flags.self_special_disabled, flags.minor, specified_relatives, income_adjustment.
  - Minor: The meaning of the boolean argument flags.widow is unclear.
  - Minor: The meaning of the boolean argument flags.single_parent is unclear.
  - Minor: The meaning of the boolean argument flags.single_parent_father is unclear.
  - Minor: The meaning of the boolean argument flags.working_student is unclear.
  - Minor: The meaning of the boolean argument flags.self_special_disabled is unclear.
  - Minor: The meaning of the boolean argument flags.minor is unclear.
  - Minor: The meaning of the boolean argument income_adjustment is unclear.
  - Minor: Says nothing about what it returns.
- `judge_leave_end_revision`: 48 / 100
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `check_insurance_eligibility`: 50 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `get_minimum_wage`: 50 / 100
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `judge_worker_type`: 50 / 100
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_annual_cost`: 51 / 100
  - Minor: Arguments without a description: business_type, dependants.
  - Minor: Says nothing about what it returns.
- `calculate_year_end_adjustment`: 52 / 100
  - Major: Arguments without a description: life_insurance.new_general, life_insurance.old_general, life_insurance.care_medical, life_insurance.new_pension, life_insurance.old_pension, earthquake_insurance.earthquake, earthquake_insurance.old_long_term, spouse, dependants, disabilities.general, disabilities.special, disabilities.special_cohabiting, flags, flags.widow, flags.single_parent, flags.working_student, flags.self_special_disabled, tax_return.medical_expenses, tax_return.medical_reimbursed, tax_return.self_medication, tax_return.donations, tax_return.casualty_loss, tax_return.disaster_related_expense.
  - Minor: The meaning of the boolean argument flags.widow is unclear.
  - Minor: The meaning of the boolean argument flags.single_parent is unclear.
  - Minor: The meaning of the boolean argument flags.working_student is unclear.
  - Minor: The meaning of the boolean argument flags.self_special_disabled is unclear.
- `commuting_allowance_exemption`: 52 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `get_statute_text`: 54 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `judge_annual_average`: 55 / 100
  - Minor: Arguments without a description: months[].payment_basis_days.
  - Minor: String arguments with no constraint or example: months[].month.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `judge_annual_leave`: 55 / 100
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_payslip`: 57 / 100
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `check_data_freshness`: 57 / 100
- `check_leave_exemption`: 57 / 100
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `validate_invoice_numbers_batch`: 57 / 100
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `national_insurance`: 59 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `decide_regular_remuneration_batch`: 61 / 100
  - Minor: Arguments without a description: employees[].worker_type, defaults.worker_type, defaults.previous_remuneration.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_withholding_tax`: 62 / 100
  - Minor: Arguments without a description: dependants.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `calculate_overtime_pay`: 67 / 100
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `judge_monthly_revision`: 75 / 100
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
