# Japan Agent API

> Japan JMA warnings, typhoons, volcano levels and municipality code history in English; x402 checks

- name: io.github.mk-career-planning/japan-agent-api
- version: 0.4.1
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 80/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.mk-career-planning%2Fjapan-agent-api
- tools: https://api.protogrid.dev/v1/servers/io.github.mk-career-planning%2Fjapan-agent-api/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "japan-agent-api": {
      "type": "http",
      "url": "https://japan-agent-api-production.mk-career-planning.workers.dev/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 100
- provenance: 45
- drivers: +website +reachable +uptime-97% +updated-10d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 80/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 8 of 8 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: jp_municipality_batch (destructiveHint, idempotentHint); catalog (destructiveHint, idempotentHint, openWorldHint); jp_warnings (destructiveHint, idempotentHint); …
- pass `tools.token_cost`: about 1,891 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 75 (weight 15)

- warn `stability.changes`: 15 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 8, about 1,891 tokens to load them all
- tool set hash: 559bcd22fb1eab4a64357b13b348bbff
- tools last changed: 2026-10-12T01:27:26.645Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.mk-career-planning/japan-agent-api.svg)](https://protogrid.dev/servers/io.github.mk-career-planning/japan-agent-api)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-12 `jp_municipality_batch` changed (description)
  - before: Batch (up to 50) Japanese municipality code lookups as of a date, from e-Stat LOD change history (CC BY 4.0): status mapped / split_candidates (all successors, not apportioned) / unknown / invalid, the code valid on as_of with English and Japanese names, change type and date, confirmed JMA warning areas only, and J-LIS convenience-store certificate availability (available / not_listed / unknown). Facts only; no document preparation or legal advice. Retrying with the same payment is not charged.
  - after: Which codes are valid on a date for up to 50 Japanese municipalities? e-Stat LOD change history (CC BY 4.0): status mapped / split_candidates (all successors, not apportioned) / unknown / invalid, the code valid on as_of with English and Japanese names, change type and date, confirmed JMA warning areas only, and J-LIS convenience-store certificate availability (available / not_listed / unknown). Facts only; no document preparation or legal advice. Retrying with the same payment is not charged.
- 2026-10-12 `jp_trip_impact_check` changed (description)
  - before: Check a Japan itinerary [{date, prefecture}] against JMA warnings/advisories in effect now. Per stop: matched_advisory (with severity), no_match_in_checked_sources (NOT a statement of no impact) or unknown (data missing, or date not today/tomorrow JST). Returns checked sources and areas, unchecked areas, issued_at, retrieved_at, and current JMA typhoon/volcano bulletins (listed, not matched). No forecast. Retrying with the same payment is not charged; use receipt_id with get_receipt.
  - after: Does a JMA warning or advisory in effect now match a stop on this Japan itinerary [{date, prefecture}]? Per stop: matched_advisory (with severity), no_match_in_checked_sources (NOT a statement of no impact) or unknown (data missing, or date not today/tomorrow JST). Returns checked sources and areas, unchecked areas, issued_at, retrieved_at, and current JMA typhoon/volcano bulletins (listed, not matched). No forecast. Retrying with the same payment is not charged; use receipt_id with get_receipt.
- 2026-10-12 `jp_municipality` changed (description)
  - before: Look up one Japanese municipality code as of a date (default today): give a 5/6-digit code, or prefecture and name (old names OK). Returns status mapped / split_candidates / unknown / invalid, the valid code with English and Japanese names, change type and date (merger, incorporation, division, designated city, name change), confirmed JMA warning areas only, and J-LIS convenience-store certificate availability for 8 certificate types. Facts only, from e-Stat LOD (CC BY 4.0) and J-LIS.
  - after: Which code does this Japanese municipality have on a date (default today)? Give a 5/6-digit code, or prefecture and name (old names OK). Returns status mapped / split_candidates / unknown / invalid, the valid code with English and Japanese names, change type and date (merger, incorporation, division, designated city, name change), confirmed JMA warning areas only, and J-LIS convenience-store certificate availability for 8 certificate types. Facts only, from e-Stat LOD (CC BY 4.0) and J-LIS.
- 2026-10-12 `jp_volcanoes` changed (description)
  - before: Current JMA Volcanic Alert Levels (1-5) or warning kinds for volcanoes without levels, for all JMA-monitored volcanoes or one (name in English or Japanese, or 3-digit JMA code): JMA English and Japanese names, level, previous level and change, issue time, prefectures named in JMA bulletins, source URL and freshness receipt. Relay only; no forecast or interpretation. Gaps filled from JMA website lists (newer wins). No JMA source seen = not_seen_in_checked_feeds, never assumed level 1.
  - after: What is the current JMA Volcanic Alert Level (1-5, or warning kind) of this volcano or of every JMA-monitored volcano? Name in English or Japanese, or 3-digit JMA code. Returns JMA English and Japanese names, level, previous level and change, issue time, prefectures named in JMA bulletins, source URL and freshness receipt. Relay only; no forecast or interpretation. Gaps filled from JMA website lists (newer wins). No JMA source seen = not_seen_in_checked_feeds, never assumed level 1.
- 2026-10-12 `jp_typhoons` changed (description)
  - before: Typhoons JMA is currently issuing bulletins for: number, name, center position, central pressure, maximum wind, issue time, and forecast-circle centers, radii and times, relayed as structured JSON from JMA bulletins (VPTW60-65). No independent forecast, interpolation or track extension.
  - after: Which typhoons is JMA issuing bulletins for right now, and what do the bulletins forecast? Number, name, center position, central pressure, maximum wind, issue time, and forecast-circle centers, radii and times, relayed as structured JSON from JMA bulletins (VPTW60-65). No independent forecast, interpolation or track extension.
- 2026-10-12 `jp_warnings` changed (description)
  - before: Current Japan Meteorological Agency (JMA) weather emergency warnings, warnings and advisories for one prefecture, as structured JSON in English and Japanese (type, level, status, areas with JMA's English names, issued_at, source URL). Relay only; no independent forecast.
  - after: Which JMA weather emergency warnings, warnings and advisories are in effect in this Japanese prefecture now? Structured JSON in English and Japanese (type, level, status, areas with JMA's English names, issued_at, source URL). Relay only; no independent forecast.
- 2026-10-11 `jp_volcanoes` changed (description, outputSchema)
  - before: Current JMA Volcanic Alert Levels (1-5) or warning kinds for volcanoes without levels, for all JMA-monitored volcanoes or one (name in English or Japanese, or 3-digit JMA code): JMA English and Japanese names, level, previous level and change, issue time, prefectures named in JMA bulletins, source URL and freshness receipt. Relay only; no forecast or interpretation. Volcanoes with no bulletin seen yet are not_seen_in_checked_feeds, never assumed level 1.
  - after: Current JMA Volcanic Alert Levels (1-5) or warning kinds for volcanoes without levels, for all JMA-monitored volcanoes or one (name in English or Japanese, or 3-digit JMA code): JMA English and Japanese names, level, previous level and change, issue time, prefectures named in JMA bulletins, source URL and freshness receipt. Relay only; no forecast or interpretation. Gaps filled from JMA website lists (newer wins). No JMA source seen = not_seen_in_checked_feeds, never assumed level 1.
- 2026-10-11 `jp_municipality_batch` changed (title, outputSchema)
- 2026-10-11 `jp_trip_impact_check` changed (title, description, inputSchema, outputSchema)
  - before: Check a Japan itinerary [{date, prefecture}] against JMA warnings/advisories in effect now. Per stop: matched_advisory (with severity), no_match_in_checked_sources (NOT a statement of no impact) or unknown (data missing, or date not today/tomorrow JST). Returns checked sources and areas, unchecked areas, issued_at, retrieved_at, and current JMA typhoon bulletins (listed, not matched). No forecast. Retrying with the same payment is not charged; use receipt_id with get_receipt.
  - after: Check a Japan itinerary [{date, prefecture}] against JMA warnings/advisories in effect now. Per stop: matched_advisory (with severity), no_match_in_checked_sources (NOT a statement of no impact) or unknown (data missing, or date not today/tomorrow JST). Returns checked sources and areas, unchecked areas, issued_at, retrieved_at, and current JMA typhoon/volcano bulletins (listed, not matched). No forecast. Retrying with the same payment is not charged; use receipt_id with get_receipt.
- 2026-10-11 `get_receipt` changed (title, outputSchema)

Full history: https://api.protogrid.dev/v1/servers/io.github.mk-career-planning%2Fjapan-agent-api/changes

## Remotes

- https://japan-agent-api-production.mk-career-planning.workers.dev/mcp (streamable-http, auth none, reachable true, uptime30d 0.9736842)

## Packages

_none_

## Tools (8)

- `catalog`: List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
- `get_receipt`: Re-fetch the stored result of a settled paid call (e.g. jp_trip_impact_check) 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 90 days after settlement.
- `jp_municipality`: Which code does this Japanese municipality have on a date (default today)? Give a 5/6-digit code, or prefecture and name (old names OK). Returns status mapped / split_candidates / unknown / invalid, the valid code with English and Japanese names, change type and date (merger, incorporation, division, designated city, name change), confirmed JMA warning areas only, and J-LIS convenience-store certificate availability for 8 certificate types. Facts only, from e-Stat LOD (CC BY 4.0) and J-LIS.
- `jp_municipality_batch`: Which codes are valid on a date for up to 50 Japanese municipalities? e-Stat LOD change history (CC BY 4.0): status mapped / split_candidates (all successors, not apportioned) / unknown / invalid, the code valid on as_of with English and Japanese names, change type and date, confirmed JMA warning areas only, and J-LIS convenience-store certificate availability (available / not_listed / unknown). Facts only; no document preparation or legal advice. Retrying with the same payment is not charged.
- `jp_trip_impact_check`: Does a JMA warning or advisory in effect now match a stop on this Japan itinerary [{date, prefecture}]? Per stop: matched_advisory (with severity), no_match_in_checked_sources (NOT a statement of no impact) or unknown (data missing, or date not today/tomorrow JST). Returns checked sources and areas, unchecked areas, issued_at, retrieved_at, and current JMA typhoon/volcano bulletins (listed, not matched). No forecast. Retrying with the same payment is not charged; use receipt_id with get_receipt.
- `jp_typhoons`: Which typhoons is JMA issuing bulletins for right now, and what do the bulletins forecast? Number, name, center position, central pressure, maximum wind, issue time, and forecast-circle centers, radii and times, relayed as structured JSON from JMA bulletins (VPTW60-65). No independent forecast, interpolation or track extension.
- `jp_volcanoes`: What is the current JMA Volcanic Alert Level (1-5, or warning kind) of this volcano or of every JMA-monitored volcano? Name in English or Japanese, or 3-digit JMA code. Returns JMA English and Japanese names, level, previous level and change, issue time, prefectures named in JMA bulletins, source URL and freshness receipt. Relay only; no forecast or interpretation. Gaps filled from JMA website lists (newer wins). No JMA source seen = not_seen_in_checked_feeds, never assumed level 1.
- `jp_warnings`: Which JMA weather emergency warnings, warnings and advisories are in effect in this Japanese prefecture now? Structured JSON in English and Japanese (type, level, status, areas with JMA's English names, issued_at, source URL). Relay only; no independent forecast.
