Skip to main content
Glama
atushi1841

japan-minimum-wage

by atushi1841

Japan Minimum Wage MCP — 日本の地域別最低賃金(厚生労働省 公式統計)

MCP License: Gov Terms 2.0

MHLW(厚生労働省)公式統計「地域別最低賃金の全国一覧」から、日本の 47 都道府県の地域別最低賃金 を AI エージェント(Claude, ChatGPT 等)から MCP ツールとして照会できるサーバーです。

LLM の記憶は設計上すぐに古くなります。最低賃金は毎年 10 月に改定されるため、 「現在の正しい最低賃金」を答えるには常に最新の公式ソースが必要です。 HR SaaS・給与計算・コンプライアンス・コスト見積もりの自動化に利用できます。

提供ツール

ツール

内容

get_minimum_wage

指定都道府県の最新年度最低賃金時間額+前年度額+引上げ額+発効日(全国加重平均も可)

get_minimum_wage_history

指定都道府県の過去 N 年度の改定履歴(金額+発効日、min/max 付き)

rank_minimum_wages

47 都道府県の時間額ランキング(安い順+高い順、全国加重平均付き)

list_prefectures

照会可能な都道府県名(漢字・ローマ字)・利用可能年度・最新年度の一覧

Related MCP server: Japan Data MCP

データ

  • ソース: 厚生労働省「地域別最低賃金の全国一覧」 (https://www.mhlw.go.jp/stf/seisakunitsuite/bunya/koyou_roudou/roudoukijun/minimumichiran/

  • 最新年度: 令和 7 年度(2025 年 10 月〜 2026 年 3 月にかけて順次発効)

  • 履歴: 平成 14 年度(2002)〜 令和 7 年度まで 24 年度分

  • 全国加重平均: 1,121 円/時間(令和 7 年度)

  • 単位: 円/時間(JPY per hour)

  • ライセンス: 政府標準利用規約 2.0(出典明示で商用利用可)

クイックスタート

uv run src/stdio_main.py          # stdio MCP サーバー(Claude Desktop / Cursor / Smithery)

Claude Desktop の claude_desktop_config.json:

{
  "mcpServers": {
    "japan-minimum-wage": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/japan-minimum-wage-mcp", "src/stdio_main.py"]
    }
  }
}

REST(RapidAPI / OpenAPI ゲートウェイ用)

Apify Standby 起動時(uv run -m src.main)は /mcp(streamable-http)に加え、 素の GET エンドポイントも公開します(RapidAPI freemium 公開用):

エンドポイント

説明

GET /rest/latest?prefecture=tokyo

最新最低賃金

GET /rest/history?prefecture=osaka&years=5

改定履歴

GET /rest/rank?limit=10

安い順ランキング

GET /rest/prefectures

都道府県・年度一覧

GET /openapi.json

OpenAPI ドキュメント

開発

uv venv && uv pip install -e .
uv pip install pytest
python scripts/build_seed.py     # data/minwage.json を MHLW XLSX から再生成
pytest -q                       # 18 tests
python scripts/sync_manifest_tools.py   # manifest.json の tools をサーバーから同期
python scripts/pack_mcpb.py             # server.mcpb(Smithery 公開用)を生成

仕様

  • 完全ローカル実行(API キー不要)。同梱シードキャッシュ(data/minwage.json)から即応答

  • force=True 指定時のみ MHLW 公式 XLSX を再取得(年 1 回更新のため TTL 24h)

  • 読み取り専用・閉世界(ツールは失敗しない)設計


出典: 厚生労働省「地域別最低賃金の全国一覧」/ Government Standard Terms of Use 2.0.

Available Tools

4 tools
get_minimum_wageA
Read-onlyIdempotent

Get the current regional minimum wage (hourly rate) for a Japanese prefecture.

Official MHLW (Ministry of Health, Labour and Welfare) regional minimum wage, revised every October. Returns the latest fiscal-year hourly rate, previous rate, the amount of increase, and the effective date. LLM memory is stale by design — this tool always returns the current official figures.

ParametersJSON Schema
NameRequiredDescriptionDefault
prefectureNoprefecture name in kanji, romaji, or with 都/府/県 suffix (e.g. 東京, tokyo, 東京都). Use 全国/nationwide for the national weighted average.東京

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, non-destructive behavior. The description adds valuable context beyond that: the data source (MHLW), the annual October revision, the returned fields (latest rate, previous rate, increase, effective date), and the warning that LLM memory is stale. This is meaningful 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.

Conciseness5/5

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

Two focused sentences: the first states the core purpose and scope, the second adds official source, revision timing, return contents, and the stale-memory warning. Every sentence earns its place with no filler.

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

Completeness5/5

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

With one optional parameter, complete schema coverage, rich annotations, and an output schema present, the description covers everything else an agent needs: what the tool returns, when data updates, and why the tool should be trusted over the model's own knowledge.

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, 'prefecture', has 100% schema description coverage with format examples, default, and the '全国/nationwide' special case. The tool description itself adds little parameter-specific meaning, but the schema already carries the full burden, so the baseline of 3 applies.

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 verb ('Get'), a specific resource ('regional minimum wage for a Japanese prefecture'), and clarifies it returns the hourly rate. It also distinguishes itself from sibling tools by emphasizing 'current' figures versus history, ranking, or prefecture listing.

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 provides clear context for when to use this tool: when you need the current official minimum wage for a prefecture, explicitly noting the October revision cycle and that LLM memory is stale by design. It does not explicitly say 'use get_minimum_wage_history for historical data' or 'use rank_minimum_wages for comparisons,' so exclusions are only implied.

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

get_minimum_wage_historyA
Read-onlyIdempotent

Get the revision history of a prefecture's minimum wage over recent fiscal years.

Official MHLW data back to FY2002 (平成14年度). Returns per-fiscal-year amount and effective date, plus min/max across the window.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearsNonumber of recent fiscal years to return (default 5, max 24)
prefectureNoprefecture name (kanji or romaji)東京

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, covering the safety profile. The description adds meaningful context by noting the official MHLW data source, the time range back to FY2002, and the return structure (per-fiscal-year amount, effective date, and min/max). This goes beyond the annotations and helps the agent understand what to expect.

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 two sentences with no fluff. The main purpose is front-loaded, followed by a concise note on data availability and return content. Every sentence adds value, making it well-structured and efficient.

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?

Given the tool's moderate complexity (2 optional params, defaults, and an output schema), the description is complete. It explains what is returned (per-year amount, effective date, min/max) and notes the data range, which is sufficient for an agent to understand the tool's behavior. The output schema exists, so the description need not detail return fields further.

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 both parameters (years and prefecture). The description adds no new meaning to the parameters beyond what the schema states, such as the meaning of 'fiscal years' which is already in the schema. Thus the baseline of 3 applies, as the description doesn't need to compensate.

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 the tool retrieves the revision history of a prefecture's minimum wage over recent fiscal years, with a specific verb and resource. It distinguishes itself from siblings like get_minimum_wage (likely current wage) and rank_minimum_wages (ranking), making its unique purpose evident.

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 provides clear context that this tool is for historical revision data, which implies when to use it versus alternatives like get_minimum_wage. However, it does not explicitly exclude other scenarios or name alternatives, so it lacks explicit when-not guidance. The context is clear but not exhaustive.

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

list_prefecturesA
Read-onlyIdempotent

List all 47 prefectures with romaji aliases and the available fiscal years.

Call this first if unsure which prefecture names are valid, or to discover the historical coverage (平成14年度 through 令和7年度).

Returns: Prefectures with kanji + romaji names, fiscal years available, latest fiscal year, and the national weighted average.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral details beyond annotations: the exact fiscal-year range, that the tool is intended as a first call, and what the response contains, including the national weighted average.

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 with the core purpose, followed by a clear usage directive and a concise return summary. Every sentence adds value; there is no filler or repetition of structured information.

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?

Given zero parameters, a present output schema, and rich annotations, the description is complete. It tells the agent what the tool returns, when to call it, and the scope of data covered, leaving no important gap for correct 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?

The tool has zero parameters and an empty input schema, so there is nothing for the description to explain about parameters. The schema coverage is 100% trivially, and the description correctly focuses on return content rather than parameter semantics.

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 verb and resource: 'List all 47 prefectures with romaji aliases and the available fiscal years.' This clearly distinguishes it from the sibling tools, which retrieve minimum-wage data rather than enumerate prefectures and fiscal coverage.

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 context: 'Call this first if unsure which prefecture names are valid, or to discover the historical coverage.' It does not explicitly enumerate when not to use it or name alternatives, but the usage context is clear enough for an agent to select it as a discovery/prerequisite tool.

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

rank_minimum_wagesA
Read-onlyIdempotent

Rank Japan's 47 prefectures by current minimum wage (cheapest first, plus most expensive).

Useful for cost-of-labor comparisons, relocation planning, and HR budgeting. National weighted average is included for reference.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoentries per end of the ranking (default 10, max 47)

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior, so the bar for additional disclosure is lower. The description adds that the national weighted average is included and specifies the ordering ('cheapest first'), which is useful. However, the phrase 'plus most expensive' is ambiguous—it could mean the ranking includes both ends or simply that the most expensive is at the end. No contradiction with annotations, but the behavioral disclosure is minimal and slightly unclear.

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 with the core purpose, followed by use cases and a note about the national average. No redundant sentences; every line earns its place. It is well-structured for quick agent parsing.

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 simplicity (one optional parameter, output schema present), the description covers the essential aspects: what it ranks, ordering, and the inclusion of the national average. It does not explicitly describe the output format, but the output schema handles that. It could mention limit behavior explicitly, but the schema already does. Overall complete enough for an agent to call correctly.

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%, with a single parameter 'limit' fully described in the schema (default, max, purpose). The description adds no additional parameter semantics, which is acceptable given the high coverage. Baseline of 3 applies.

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 the tool's function: ranking Japan's 47 prefectures by current minimum wage, with an explicit ordering ('cheapest first') and inclusion of the most expensive. This is a specific verb+resource that distinguishes it from sibling tools like get_minimum_wage (single lookup), get_minimum_wage_history (historical data), and list_prefectures (just listing). No ambiguity.

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 provides clear use cases ('cost-of-labor comparisons, relocation planning, and HR budgeting') that signal when this tool is appropriate. However, it does not explicitly contrast with sibling tools or state when not to use it. The context is helpful but lacks explicit exclusions or alternative routing.

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.

  1. 4 tool updatesv0.1.0
    • First observedget_minimum_wage
    • First observedget_minimum_wage_history
    • First observedlist_prefectures
    • First observedrank_minimum_wages

TDQS

A4.4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a clearly distinct function: current wage lookup, historical wage lookup, ranking across prefectures, and prefecture metadata. There is no overlap or ambiguity between the tool purposes.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: get_minimum_wage, get_minimum_wage_history, rank_minimum_wages, and list_prefectures. The naming is predictable and conventional.

Tool Count5/5

Four tools is well-scoped for this domain. Each tool serves a distinct and necessary purpose without unnecessary bloat or missing core functionality.

Completeness5/5

The tool set covers current wage lookup, historical trends, cross-prefecture ranking, and prefecture enumeration. The national weighted average is included as supplementary data, so no major gaps are apparent for the stated domain.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Japanese national laws and ordinances via the e-Gov Law API, allowing AI agents to access legal data through natural language questions.
    6 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to query Japanese public data (laws, corporations, statistics) from official government APIs, returning normalized English metadata with source attribution.
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides current, source-cited US minimum wage, tipped wage, and FLSA overtime data for AI agents, with tools to query rates, verify wage floors, and list scheduled changes. It refreshes state-level wage information from DOL sources and refuses to guess when data is unavailable.
    MIT