Japan Corporate Number (NTA) MCP
An MCP server that relays and processes data from the National Tax Agency of Japan's Corporate Number System Web-API. It allows agents to look up corporate details by number or search by name, providing assignment dates, closure records, and candidate matches without requiring user accounts or API keys.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://jp-corporate-number-production.mk-career-planning.workers.dev/mcpWhat its tools do
4 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Lookup corporate details by 13-digit number
- Search corporate numbers by organization name
- Retrieve closure dates and cause codes
- Get change history for a corporate entity
Source and maintenance
Protocol and capabilities
- Server
- jp-corporate-number 0.1.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 4 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Tools
4 advertised
catalog — Catalog: tools, prices and limits
List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"server",
"payment",
"daily_limits",
"paused",
"tools",
"legal",
"terms"
],
"properties": {
"legal": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
},
"tools": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"price_usd",
"description"
],
"properties": {
"name": {
"type": "string"
},
"price_usd": {
"type": "number",
"description": "Price per call in USD (0 = free)."
},
"description": {
"type": "string"
}
},
"additionalProperties": {}
},
"description": "Every tool of this server with its price."
},
"paused": {
"type": "object",
"description": "Operator pause flags (true = paused).",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "boolean"
}
},
"server": {
"type": "object",
"required": [
"name",
"version",
"stage"
],
"properties": {
"name": {
"type": "string"
},
"stage": {
"type": "string"
},
"version": {
"type": "string"
}
},
"additionalProperties": {}
},
"payment": {
"type": "object",
"required": [
"protocol",
"network",
"asset",
"enabled"
],
"properties": {
"asset": {
"type": "string"
},
"enabled": {
"type": "boolean"
},
"network": {
"type": "string"
},
"protocol": {
"type": "string"
}
},
"additionalProperties": {}
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"properties": {
"source": {
"type": "object",
"required": [
"publisher",
"url"
],
"properties": {
"url": {
"type": "string"
},
"publisher": {
"type": "string"
}
},
"description": "Publisher and URL of the upstream document or dataset.",
"additionalProperties": {}
},
"fetch_status": {
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"type": "string",
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
},
"retrieved_at": {
"type": [
"string",
"null"
],
"description": "When this service retrieved the upstream data (null if unknown)."
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"upstream_updated_at": {
"type": [
"string",
"null"
],
"description": "Update time stated by the upstream, or null when it states none."
}
},
"description": "Freshness receipt for one upstream source.",
"additionalProperties": {}
},
"description": "Freshness receipts for every upstream source used."
},
"daily_limits": {
"type": "object",
"properties": {},
"description": "Daily limits of paid calls (calls, usd, timezone) or a misconfiguration notice.",
"additionalProperties": {}
},
"fetch_status_values": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": {}
}{
"readOnlyHint": true
}nta_corporate_number_lookup — National Tax Agency record for a corporate number
What does Japan's National Tax Agency (NTA) publish for this 13-digit corporate number? Returns the name, furigana, English name, kind, location, assignment date and, when the record states it, the closure date with the recorded cause code and successor corporate number (no reason is inferred). Optional change history. Distinguishes not found in the NTA records from could not check. Carries the NTA Web-API source statement. Not an official result.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"corporate_number"
],
"properties": {
"include_history": {
"anyOf": [
{
"type": "boolean"
},
{
"enum": [
"0",
"1",
"true",
"false"
],
"type": "string"
}
],
"description": "true: also return the NTA record of changes (name, location, closure), oldest first. Default false."
},
"corporate_number": {
"type": "string",
"maxLength": 20,
"description": "13-digit Japanese corporate number (houjin bangou), e.g. 7000012050002. The check digit is verified; nothing is requested for an invalid number."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"attribution",
"legal_notice",
"query",
"registry",
"status",
"unknown_reason",
"status_as_of",
"last_observed_at",
"source_url",
"matched_records",
"match_basis",
"limitations",
"record",
"record_state",
"closure",
"history",
"fetched_at",
"answered_at",
"provenance",
"terms"
],
"properties": {
"query": {
"type": "object",
"required": [
"corporate_number",
"include_history"
],
"properties": {
"include_history": {
"type": "boolean"
},
"corporate_number": {
"type": "string"
}
},
"additionalProperties": {}
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
},
"record": {
"anyOf": [
{
"type": "object",
"required": [
"corporate_number"
],
"properties": {
"corporate_number": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"status": {
"enum": [
"listed",
"not_found_in_checked_records",
"no_longer_listed_since",
"expired",
"unknown"
],
"type": "string",
"description": "listed / not_found_in_checked_records / unknown (see unknown_reason). A failure or a missing application ID is never reported as not found."
},
"closure": {
"anyOf": [
{
"type": "object",
"required": [
"recorded",
"close_date",
"close_cause"
],
"properties": {
"recorded": {
"type": "boolean"
},
"close_date": {
"type": [
"string",
"null"
]
},
"close_cause": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"history": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
{
"type": "null"
}
]
},
"registry": {
"type": "string"
},
"fetched_at": {
"type": [
"string",
"null"
]
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"properties": {
"source": {
"type": "object",
"required": [
"publisher",
"url"
],
"properties": {
"url": {
"type": "string"
},
"publisher": {
"type": "string"
}
},
"description": "Publisher and URL of the upstream document or dataset.",
"additionalProperties": {}
},
"fetch_status": {
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"type": "string",
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
},
"retrieved_at": {
"type": [
"string",
"null"
],
"description": "When this service retrieved the upstream data (null if unknown)."
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"upstream_updated_at": {
"type": [
"string",
"null"
],
"description": "Update time stated by the upstream, or null when it states none."
}
},
"description": "Freshness receipt for one upstream source.",
"additionalProperties": {}
},
"description": "Freshness receipts for every upstream source used."
},
"source_url": {
"type": "string"
},
"answered_at": {
"type": "string"
},
"attribution": {
"type": "object",
"required": [
"source_statement_ja",
"source_statement_en",
"notice_ja",
"notice_en",
"fetched_at",
"retrieved_on",
"notice_ja_with_date",
"not_official_ja",
"not_official_en",
"source_url",
"webapi_terms_url",
"processed_by"
],
"properties": {
"notice_en": {
"type": "string"
},
"notice_ja": {
"type": "string"
},
"fetched_at": {
"type": [
"string",
"null"
]
},
"source_url": {
"type": "string"
},
"processed_by": {
"type": "string"
},
"retrieved_on": {
"type": [
"string",
"null"
]
},
"not_official_en": {
"type": "string"
},
"not_official_ja": {
"type": "string"
},
"webapi_terms_url": {
"type": "string"
},
"notice_ja_with_date": {
"type": [
"string",
"null"
]
},
"source_statement_en": {
"type": "string"
},
"source_statement_ja": {
"type": "string"
}
},
"description": "Required source statement of the NTA Corporate Number System Web-API terms (Article 6; source_statement_ja is the required wording), the source notice with the retrieval date, and the statement that this is processed by MK Career Planning and is not an official government result. Keep it when you pass results on.",
"additionalProperties": {}
},
"limitations": {
"type": "array",
"items": {
"type": "string"
}
},
"match_basis": {
"enum": [
"exact_id",
"exact_name",
"fuzzy_candidate",
"none"
],
"type": "string"
},
"legal_notice": {
"type": "string"
},
"record_state": {
"anyOf": [
{
"enum": [
"closure_recorded",
"no_closure_recorded",
"record_withdrawn"
],
"type": "string"
},
{
"type": "null"
}
]
},
"status_as_of": {
"type": [
"string",
"null"
],
"description": "lastUpdateDate stated by the NTA Web-API."
},
"unknown_reason": {
"type": [
"string",
"null"
],
"description": "One of upstream_not_configured, rate_capped, too_many_results, upstream_access_restricted, upstream_app_id_rejected, upstream_error, record_withdrawn when status is unknown."
},
"matched_records": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"last_observed_at": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}nta_corporate_number_search — Corporate number candidates for an organization name (NTA)
Which Japanese corporate numbers could this organization name refer to? Searches the National Tax Agency (NTA) Web-API by name (prefix match after the legal form, with the NTA's fuzzy matching), optionally within a prefecture, and returns every candidate with corporate number, name, location and recorded closure date, marked exact_name or fuzzy_candidate. Never picks one for you. Carries the NTA Web-API source statement. Not an official result.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 100,
"description": "Organization name in Japanese, 1-100 characters, e.g. 国税庁 or a company name. The legal form (株式会社 etc.) is removed before the prefix search."
},
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "Number of candidates to detail, 1-50 (default 20). candidate_corporate_numbers lists all of them (up to 200)."
},
"prefecture": {
"type": "string",
"maxLength": 20,
"description": "Optional prefecture code 01-47 (e.g. 13) or name (Tokyo or 東京都) to narrow the search to that prefecture."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"attribution",
"legal_notice",
"query",
"status",
"unknown_reason",
"total",
"returned",
"truncated",
"exact_name_matches",
"candidate_corporate_numbers",
"candidate_corporate_numbers_truncated",
"candidates",
"status_as_of",
"source_url",
"fetched_at",
"answered_at",
"limitations",
"provenance",
"terms"
],
"properties": {
"query": {
"type": "object",
"required": [
"name",
"prefecture",
"limit"
],
"properties": {
"name": {
"type": "string"
},
"limit": {
"type": "number"
},
"prefecture": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
},
"total": {
"type": [
"number",
"null"
],
"description": "Number of organizations the NTA counted for this search."
},
"status": {
"enum": [
"candidates_found",
"no_candidates_found",
"unknown"
],
"type": "string",
"description": "candidates_found / no_candidates_found / unknown (see unknown_reason). A failure is never reported as no candidates."
},
"returned": {
"type": "number"
},
"truncated": {
"type": "boolean"
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"required": [
"corporate_number",
"name",
"location",
"close_date",
"match_basis",
"nta_record_url"
],
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"location": {
"type": [
"string",
"null"
]
},
"close_date": {
"type": [
"string",
"null"
]
},
"match_basis": {
"enum": [
"exact_name",
"fuzzy_candidate"
],
"type": "string"
},
"nta_record_url": {
"type": "string"
},
"corporate_number": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
}
},
"fetched_at": {
"type": [
"string",
"null"
]
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"properties": {
"source": {
"type": "object",
"required": [
"publisher",
"url"
],
"properties": {
"url": {
"type": "string"
},
"publisher": {
"type": "string"
}
},
"description": "Publisher and URL of the upstream document or dataset.",
"additionalProperties": {}
},
"fetch_status": {
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"type": "string",
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
},
"retrieved_at": {
"type": [
"string",
"null"
],
"description": "When this service retrieved the upstream data (null if unknown)."
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"upstream_updated_at": {
"type": [
"string",
"null"
],
"description": "Update time stated by the upstream, or null when it states none."
}
},
"description": "Freshness receipt for one upstream source.",
"additionalProperties": {}
},
"description": "Freshness receipts for every upstream source used."
},
"source_url": {
"type": "string"
},
"answered_at": {
"type": "string"
},
"attribution": {
"type": "object",
"required": [
"source_statement_ja",
"source_statement_en",
"notice_ja",
"notice_en",
"fetched_at",
"retrieved_on",
"notice_ja_with_date",
"not_official_ja",
"not_official_en",
"source_url",
"webapi_terms_url",
"processed_by"
],
"properties": {
"notice_en": {
"type": "string"
},
"notice_ja": {
"type": "string"
},
"fetched_at": {
"type": [
"string",
"null"
]
},
"source_url": {
"type": "string"
},
"processed_by": {
"type": "string"
},
"retrieved_on": {
"type": [
"string",
"null"
]
},
"not_official_en": {
"type": "string"
},
"not_official_ja": {
"type": "string"
},
"webapi_terms_url": {
"type": "string"
},
"notice_ja_with_date": {
"type": [
"string",
"null"
]
},
"source_statement_en": {
"type": "string"
},
"source_statement_ja": {
"type": "string"
}
},
"description": "Required source statement of the NTA Corporate Number System Web-API terms (Article 6; source_statement_ja is the required wording), the source notice with the retrieval date, and the statement that this is processed by MK Career Planning and is not an official government result. Keep it when you pass results on.",
"additionalProperties": {}
},
"limitations": {
"type": "array",
"items": {
"type": "string"
}
},
"legal_notice": {
"type": "string"
},
"status_as_of": {
"type": [
"string",
"null"
]
},
"unknown_reason": {
"anyOf": [
{
"enum": [
"upstream_not_configured",
"rate_capped",
"too_many_results",
"upstream_access_restricted",
"upstream_app_id_rejected",
"upstream_error"
],
"type": "string"
},
{
"type": "null"
}
]
},
"exact_name_matches": {
"type": "number"
},
"candidate_corporate_numbers": {
"type": "array",
"items": {
"type": "string"
},
"description": "Every candidate's corporate number kept by this service (up to 200), including those not detailed in candidates (never collapsed to one)."
},
"candidate_corporate_numbers_truncated": {
"type": "boolean"
}
},
"additionalProperties": {}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true
}get_receipt — Get receipt of a paid call
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.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"receipt_id"
],
"properties": {
"receipt_id": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "The receipt_id returned with a paid result (\"rcpt_\" + 64 hex characters)."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"receipt_id",
"tool",
"settled_at",
"payment",
"result",
"provenance",
"terms"
],
"properties": {
"tool": {
"type": "string",
"description": "Name of the paid tool that produced the result."
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
},
"result": {
"description": "The stored result, exactly as returned by the paid call."
},
"payment": {
"type": "object",
"required": [
"network",
"transaction"
],
"properties": {
"network": {
"type": [
"string",
"null"
]
},
"transaction": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"properties": {
"source": {
"type": "object",
"required": [
"publisher",
"url"
],
"properties": {
"url": {
"type": "string"
},
"publisher": {
"type": "string"
}
},
"description": "Publisher and URL of the upstream document or dataset.",
"additionalProperties": {}
},
"fetch_status": {
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"type": "string",
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
},
"retrieved_at": {
"type": [
"string",
"null"
],
"description": "When this service retrieved the upstream data (null if unknown)."
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"upstream_updated_at": {
"type": [
"string",
"null"
],
"description": "Update time stated by the upstream, or null when it states none."
}
},
"description": "Freshness receipt for one upstream source.",
"additionalProperties": {}
},
"description": "Freshness receipts for every upstream source used."
},
"receipt_id": {
"type": "string",
"description": "Receipt id of the settled paid call (\"rcpt_\" + 64 hex). Use with get_receipt."
},
"settled_at": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": {}
}{
"readOnlyHint": true
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 846 ms
- 95th percentile latency
- 846 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 846 ms · metadata changed · 4 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http japan-corporate-number-nta-mcp https://jp-corporate-number-production.mk-career-planning.workers.dev/mcpCodex
codex mcp add japan-corporate-number-nta-mcp --url https://jp-corporate-number-production.mk-career-planning.workers.dev/mcpCursor
{
"mcpServers": {
"japan-corporate-number-nta-mcp": {
"url": "https://jp-corporate-number-production.mk-career-planning.workers.dev/mcp"
}
}
}Cline
{
"mcpServers": {
"japan-corporate-number-nta-mcp": {
"type": "streamableHttp",
"url": "https://jp-corporate-number-production.mk-career-planning.workers.dev/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"japan-corporate-number-nta-mcp": {
"type": "http",
"url": "https://jp-corporate-number-production.mk-career-planning.workers.dev/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http japan-corporate-number-nta-mcp https://jp-corporate-number-production.mk-career-planning.workers.dev/mcpClaude Desktop
https://jp-corporate-number-production.mk-career-planning.workers.dev/mcpWindsurf
{
"mcpServers": {
"japan-corporate-number-nta-mcp": {
"serverUrl": "https://jp-corporate-number-production.mk-career-planning.workers.dev/mcp"
}
}
}Let your agent find its tools
Find servers like Japan Corporate Number (NTA) MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.