# jp-exam-results

> How many people applied for, sat and passed each Japanese national licensing exam announced by the Ministry of Health, Labour and Welfare (MHLW) in a given year, and what pass rate was published? About 22 exams: physician, dentist, public health nurse, midwife, nurse, pharmacist, radiological and clinical laboratory technologist, physical and occupational therapist, registered dietitian, emergency life-saving technician, judo therapist and others. Counts and rates as published (text and numbers), all candidates and new graduates where published, with the exam, the session (dai N kai), the announcement date, source URL, retrieved_at, page SHA-256 and a check that passers / examinees rounds to the published rate. Changes of published counts between page versions are recorded. Counts describe exams already held, not any candidate's chances. Hosted MCP and HTTP: no install. Free. Check the official announcement page.

Data source: Ministry of Health, Labour and Welfare of Japan (MHLW), national exam pass announcements (kokka shiken goukaku happyou), https://www.mhlw.go.jp/kouseiroudoushou/shikaku_shiken/goukaku.html and each exam's announcement page. Reused under the Public Data License 1.0 (PDL1.0; MHLW website terms https://www.mhlw.go.jp/chosakuken/index.html). Processed by MK Career Planning (numbers read from the pages, English labels and stable ids added, pass rate compared with the counts, corrections recorded); not official, and not a service of MHLW or the Government of Japan.
Relay of the pass results (applicants, examinees, passers and pass rate) of Japanese national exams as published by the Ministry of Health, Labour and Welfare of Japan (MHLW) on its pass announcement pages, processed by MK Career Planning (not official). Counts are as published at retrieved_at and describe exams already held; they say nothing about any individual candidate. This service gives no advice on eligibility, study or applications. Per-prefecture and per-school figures, pass marks and the lists of passing examinee numbers are not read and not covered here.
Official check: Counts as published by MHLW at retrieved_at; check the official announcement page.
Statuses: found (Counts for this exam were read from MHLW's announcement page linked from the current pass announcement list (see results).) not_found_in_checked_records (No exam with this name or id on MHLW's current pass announcement list page, or the requested session is not among those this service has read. Results of many exams are announced by other bodies and are not on this page.) unknown (Could not be determined: the list page is not loaded yet or is stale (list_not_loaded_yet, stale), the exam's announcement page has not been read yet or could not be fetched (page_not_read_yet, page_fetch_failed), its counts could not be read (page_unreadable), or only partial-name candidates were found (candidates_only).)
Segments: all = All candidates, as published (zentai). new_graduates = First-time candidates who graduated that year, as published (shinsotsusha); included in all.
Consistency: rate_matches_counts: true when passers / examinees, rounded to the number of decimals of the published rate, equals the published rate; false when it does not (the published numbers are still relayed as published); null when it cannot be computed.
Revisions: Changes of the published counts for the same session between page versions read by this service (before and after), oldest first.
Not covered: Sessions announced before this service first read the announcement page (past years are on MHLW's site but are not read in v1). Pass marks (passing scores), questions excluded from scoring and answer keys. Per-prefecture, per-school and per-region figures (separate PDF files; not read in v1). Lists of passing examinee numbers (hpNN pages; never read or stored). Exams whose results are not on MHLW's pass announcement list page (for example exams run by other bodies).

## Privacy at a glance

- No account, no email, no API key. Free tools need nothing but the call.
- Free tools: we do not store your inputs (for example the number or name you looked up) in our database (except as noted below), and we do not keep Cloudflare's request logs, so your IP address and User-Agent are not logged by us. Usage is counted only as daily totals.
- This server takes no payments.
- This service has its own data notes (for example what it passes to another source or keeps as a hash): see section 1 of the Privacy Policy.
- Details and exceptions (short error logs kept up to 7 days, Cloudflare's own processing): https://jp-exam-results-production.mk-career-planning.workers.dev/privacy

## Connect

- MCP (streamable HTTP): https://jp-exam-results-production.mk-career-planning.workers.dev/mcp
- OpenAPI: https://jp-exam-results-production.mk-career-planning.workers.dev/openapi.json
- x402 discovery: https://jp-exam-results-production.mk-career-planning.workers.dev/.well-known/x402

## Quickstart

- Developer quickstart (MCP client configs, free curl/TypeScript calls, how to read official_check, segments, consistency, revisions and source): https://jp-exam-results-production.mk-career-planning.workers.dev/quickstart

## Free tools

- catalog: List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
- exam_results_lookup: How many sat and passed this Japanese national exam, and what pass rate did MHLW publish? Give exam (exam_id like nurse or physician, or the name in Japanese or English) and optionally session (dai N kai). Returns applicants, examinees, passers and pass rate as published for all candidates and new graduates, a consistency check, revisions, source URL, retrieved_at and page SHA-256. Status found, not_found_in_checked_records or unknown. Check the official page.
- exam_results_list: Which national exams are on MHLW's current pass announcement list, and what were the headline counts (examinees, passers, pass rate as published, all candidates) of each? One row per exam in page order with session, announcement date, consistency check, page URL and retrieved_at; status unknown where the page was not read or could not be read. Use exam_results_lookup for new graduates, revisions and earlier sessions.
- get_receipt: Re-fetch the stored result of a settled paid call by its receipt_id, for when the response was lost after payment. Free. Unknown or unsettled receipt ids return RECEIPT_NOT_FOUND. Results are kept for 30 days after settlement.
- HTTP: GET https://jp-exam-results-production.mk-career-planning.workers.dev/v1/exam-results, GET https://jp-exam-results-production.mk-career-planning.workers.dev/v1/exam-results/list return the same data as the MCP tools. GET https://jp-exam-results-production.mk-career-planning.workers.dev/v1/receipts/<receipt_id> is get_receipt.

## Payments

This server offers free tools only. It does not request or accept x402 payments.

## Rate limits

- Free calls (free HTTP endpoints under /v1/ and free MCP tools) are limited to 300 requests per 60 seconds per client (a client is keyed by a one-way hash of its IP address and the first 64 characters of its User-Agent; neither is stored. The User-Agent can be set by anyone, so this split is for fairness between clients behind a shared gateway, not a security control). Over the limit, HTTP returns 429 RATE_LIMITED with a Retry-After header and MCP tools return the error RATE_LIMITED. Paid calls are not rate limited.

## Provenance and fetch_status

Responses carry provenance[] (source, upstream_updated_at, retrieved_at, content_sha256, parser_version, fetch_status). fetch_status values:

- found: The upstream document was retrieved and contains the data used for this answer.
- empty: The upstream was retrieved, but it has no item for this query (for example JMA had no bulletin for that area in its feeds, or the municipality is not in the list). The state is unknown: empty does NOT mean 'none in effect'.
- stale: The data was retrieved but is older than the freshness threshold for its kind; treat it with care.
- unavailable: The upstream could not be retrieved, read or used (network error, withdrawn bulletin, paused source, or data not yet loaded).
- unsupported: The query is outside what this source covers (for example a date JMA does not issue warnings for yet, or a period before the source's records).

## Errors

- RECEIPT_NOT_FOUND (get_receipt)
- RATE_LIMITED (free calls over the per-client limit; HTTP 429 with Retry-After; not charged)

## Terms

- Fresh: MHLW's pass announcement list page was read successfully within 48 hours. Otherwise lookups return unknown and no counts.
- Keep the attribution (source and 'processed by MK Career Planning, not official') and the announcement page URLs when you pass results on.

## Privacy and support

- Operator: MK Career Planning
- Terms of Service: https://jp-exam-results-production.mk-career-planning.workers.dev/terms
- Privacy policy: https://jp-exam-results-production.mk-career-planning.workers.dev/privacy
- Support (free): https://jp-exam-results-production.mk-career-planning.workers.dev/support (mk.career.planning@gmail.com)
