Japan Weather Forecast Archive (JMA, as issued)
Server Details
What did Japan's weather agency forecast, as issued at a past time? Archive of JMA bulletins.
- Status
- Healthy
- Uptime
- 100.0% over 16 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
The four tools serve clearly different roles: catalog metadata, archived forecast content, issuance listing, and receipt recovery. The two forecast tools are close in domain but explicitly separated by list-vs-get behavior, with forecast_issuances directing content retrieval to forecast_as_issued.
All names use snake_case, but the conventions are mixed: catalog is a bare noun, forecast_as_issued and forecast_issuances are noun phrases, and get_receipt is verb_noun. The names are readable but do not follow a predictable verb_noun pattern.
Four tools is well-scoped for a small archival weather API: metadata, issuance discovery, content retrieval, and paid-call receipt recovery. Each tool has a distinct, necessary purpose without obvious padding.
The archive surface covers discovery, retrieval, metadata, and receipt recovery, which is strong for the stated purpose. A minor gap is the lack of an area/prefecture enumeration tool, so agents must already know valid area identifiers or infer them.
Available Tools
4 toolscatalogCatalog: tools, prices and limitsARead-onlyInspect
List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| legal | Yes | |
| terms | Yes | URL of the terms of service. |
| tools | Yes | Every tool of this server with its price. |
| paused | Yes | Operator pause flags (true = paused). |
| server | Yes | |
| payment | Yes | |
| provenance | No | Freshness receipts for every upstream source used. |
| daily_limits | Yes | Daily limits of paid calls (calls, usd, timezone) or a misconfiguration notice. |
| fetch_status_values | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so safety is covered. The description adds the content categories returned (prices, licensing, limits, freshness), which is useful context, but an output schema exists and would surface the same structure, so the incremental disclosure is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; every clause enumerates distinct payload content, so nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, a read-only annotation, and an output schema present, the description need not explain return values or safety. It is nearly complete for this simple tool; only a hint about when to reach for it is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies under the '0 params' rule.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb ("List") plus resource ("the tools of this server") and an enumeration of the payload contents (prices, data sources, licensing, daily limits, freshness). It is plainly distinguishable from siblings like get_receipt or drone_flight_check, though it does not explicitly name or contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is given; usage is only implied by the discovery framing ("the tools of this server"). An agent can infer this is the entry point for learning available tools and pricing, but nothing states that intent directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
forecast_as_issuedJMA forecast as issued at a past timeARead-onlyInspect
Archived JMA prefectural weather forecast as issued. Give an area and at (forecast in effect then) or issued_at (exact JMA issue time). Returns JMA's bulletin as published (Japanese weather text, wind, waves, 6-hour rain probability, temperatures) with report_datetime (JMA's issue time) apart from fetched_at (ours). Status found, not_archived (before this archive started), unknown or no_issuance_at_that_time. Not the current forecast: check JMA.
| Name | Required | Description | Default |
|---|---|---|---|
| at | No | ISO 8601 date-time with time zone: return the issuance in effect at this time, e.g. 2026-10-12T09:00:00+09:00 | |
| area | Yes | JMA forecast office code (130000), sub-area code (130010), prefecture (Tokyo, 東京都, 13) or JMA area name (Kushiro Nemuro). Prefectures with several offices (Hokkaido, Kagoshima, Okinawa) need the office or sub-area | |
| issued_at | No | ISO 8601 date-time with time zone: return the issuance with exactly this JMA issue time, e.g. 2026-10-12T05:00:00+09:00 |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| terms | Yes | URL of the terms of service. |
| status | Yes | found = the archived issuance; not_archived = before this archive's start (JMA does not publish past forecasts); unknown = the feed was not read for part of the period or the bulletin could not be read; no_issuance_at_that_time = feed read, no issuance with exactly that issue time. |
| archive | Yes | |
| issuance | Yes | |
| provenance | Yes | Freshness receipts for every upstream source used. |
| answered_at | Yes | |
| attribution | Yes | |
| status_note | Yes | |
| legal_notice | Yes | |
| archive_notice | Yes | Every answer is an archived issuance, not the current forecast and not a forecast made by this service. |
| official_check | Yes | Read first: this is an archive of what JMA issued; for current forecasts check the JMA pages listed here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover readOnly/openWorld, so the description carries real weight: it discloses the archive's temporal limit ('before this archive started'), the full status vocabulary (found, not_archived, unknown, no_issuance_at_that_time), and the report_datetime vs fetched_at distinction. That is materially more than the annotations provide, though return-field detail partly overlaps the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose, then parameter usage, return contents, statuses, and the routing caveat, with almost no filler. Dense but every clause carries information; the run-on return sentence could be split for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A complete definition for a read-only archival lookup: purpose, parameter selection rules, return payload, issue-time vs fetch-time semantics, status outcomes, and the explicit pointer away from the live forecast. With annotations and an output schema present, nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already defines area codes and the ISO-8601 format of 'at' and 'issued_at'. The description restates those semantics in terser form and distinguishes the two time params, but adds little that the schema does not already say; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: an archived JMA prefectural weather forecast as it was originally issued. It clearly contrasts itself with the live/current forecast, though it never names its actual siblings (forecast_issuances, catalog), so sibling differentiation is only partial.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete selection guidance between the two time parameters: use 'at' for the issuance in effect at a time, 'issued_at' for an exact JMA issue time, plus area requirements. It does not spell out forbidden cases beyond 'not the current forecast', so no explicit when-not clause against siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
forecast_issuancesList of JMA forecast issuances for an areaARead-onlyInspect
Which prefectural weather forecasts did JMA issue for an area between two times? Lists each archived issuance (JMA issue time, transmission time, our fetch time, scheduled/unscheduled/correction/cancellation, bulletin URL and SHA-256) with coverage gaps where JMA's feed could not be read. Free window: last 30 days (an earlier since is clamped; see history_window). Use forecast_as_issued for the content. An archive, not a forecast service.
| Name | Required | Description | Default |
|---|---|---|---|
| area | Yes | JMA forecast office code (130000), sub-area code (130010), prefecture (Tokyo, 東京都, 13) or JMA area name (Kushiro Nemuro). Prefectures with several offices (Hokkaido, Kagoshima, Okinawa) need the office or sub-area | |
| limit | No | Maximum number of issuances, 1-500 (default 100) | |
| since | Yes | Issuances after this: ISO 8601 date (00:00 Japan time) or date-time with time zone, e.g. 2026-10-12 or 2026-10-12T05:00:00+09:00 | |
| until | No | Optional end: ISO 8601 date (00:00 Japan time) or date-time with time zone (default now) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| terms | Yes | URL of the terms of service. |
| archive | Yes | |
| coverage | Yes | |
| issuances | Yes | JMA issuances held for this office, oldest first. |
| truncated | Yes | |
| provenance | Yes | Freshness receipts for every upstream source used. |
| answered_at | Yes | |
| attribution | Yes | |
| legal_notice | Yes | |
| archive_notice | Yes | Every answer is an archived issuance, not the current forecast and not a forecast made by this service. |
| history_window | Yes | Free history window applied to this answer. |
| official_check | Yes | Read first: this is an archive of what JMA issued; for current forecasts check the JMA pages listed here. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnly and openWorld; the description goes well beyond them by disclosing coverage gaps where JMA's feed could not be read, the 30-day window with clamping behavior, and the full record contents (issue/transmission/fetch times, status categories, bulletin URL, SHA-256). These are material traits an agent could not infer from the annotations or schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences with no filler: question-form scope first, contents second, window constraint third, routing/negative framing last. Every sentence carries information the agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and the description still covers routing, the time window, and data-quality caveats. Nothing an agent needs to select or invoke this tool correctly is missing; the 'see history_window' pointer is a minor loose end but not a blocker.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents area, since, until and limit thoroughly (formats, defaults, ranges), which sets the baseline at 3. The description adds one genuinely new parameter behavior the schema does not state: that an earlier 'since' is clamped, which affects how the caller should interpret a query.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence states a precise verb+resource+scope: which archived JMA prefectural forecast issuances exist for an area within a time range, and it enumerates exactly what each record contains. It is immediately distinguishable from forecast_as_issued, which the description explicitly routes content requests to.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the alternative (forecast_as_issued) and the condition that selects it ('Use forecast_as_issued for the content'), plus states the 30-day free window and that earlier 'since' values are clamped. 'An archive, not a forecast service' is an explicit when-not statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_receiptGet receipt of a paid callARead-onlyInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | Yes | The receipt_id returned with a paid result ("rcpt_" + 64 hex characters). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tool | Yes | Name of the paid tool that produced the result. |
| terms | Yes | URL of the terms of service. |
| result | Yes | The stored result, exactly as returned by the paid call. |
| payment | Yes | |
| provenance | Yes | Freshness receipts for every upstream source used. |
| receipt_id | Yes | Receipt id of the settled paid call ("rcpt_" + 64 hex). Use with get_receipt. |
| settled_at | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond readOnlyHint=true, the description discloses pricing ('Free'), error behavior for unknown/unsettled ids (RECEIPT_NOT_FOUND), and a retention window (30 days after settlement). These are substantive operational facts an agent cannot get from the annotations or schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the purpose, followed by cost, error case, and retention. No sentence is redundant and nothing is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and the annotations cover safety. The description still covers cost, failure mode, and data lifetime, leaving no material gap for an agent calling this single-param read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents the 'rcpt_' + 64 hex format, so the baseline is 3. The description adds semantic constraint by implying the id must belong to a settled paid call, which goes slightly beyond the schema's format-only documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb+resource: 'Re-fetch the stored result of a settled paid call by its receipt_id.' This is unambiguous and an agent can immediately tell what the tool returns and what it operates on, even though the sibling tools are unrelated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the triggering condition clearly ('for when the response was lost after payment'), which is exactly the scenario that should select this tool. It also implicitly scopes usage to settled calls via the RECEIPT_NOT_FOUND note, though it names no alternative tools for other recovery paths.
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.
4 tool updates
- First observed
catalog - First observed
forecast_as_issued - First observed
forecast_issuances - First observed
get_receipt
Related MCP Connectors
Official JMA short-term forecasts by prefecture.
JMA tsunami forecasts and warnings for the Japanese coast.
JMA volcano warnings and eruption forecasts.
Japan JMA warnings, typhoons, volcano levels and municipality code history in English; x402 checks
Related MCP Servers
- MIT
- AlicenseAqualityAmaintenanceProvides access to Japan Meteorological Agency (JMA) weather data including real-time observations, historical weather data, and forecasts from 1286 AMeDAS stations across Japan.111MIT
- AlicenseNot gradedqualityBmaintenanceEnables you to retrieve JMA weather forecasts, warnings/advisories, and earthquake reports by place name, with no API key required.602 npmMIT
- AlicenseAqualityAmaintenanceEnables access to Japan Meteorological Agency data through MCP, covering weather forecasts, warnings, earthquakes with seismic intensity, tsunami bulletins, and volcano alerts, with place-name lookup in kanji, kana, or romaji and no API key.7MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.