Skip to main content
Glama

Japan trip impact check (paid)

jp_trip_impact_check
Read-only

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.

Input Schema

NameRequiredDescriptionDefault
itineraryYes1 to 14 stops {date, prefecture}, in travel order. Only stops dated today or tomorrow (Japan time) can be matched; others return unknown, but typhoon and volcano bulletins currently in effect are still listed (not matched).

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / itinerary / description
      Previous value: -"1 to 14 stops {date, prefecture}, in travel order. Only stops dated today or tomorrow (Japan time) can be matched; others return unknown."New value: +"1 to 14 stops {date, prefecture}, in travel order. Only stops dated today or tomorrow (Japan time) can be matched; others return unknown, but typhoon and volcano bulletins currently in effect are still listed (not matched)."
  2. Changed2 schema fields changed
    • addedInput schema / properties / itinerary / description
      Added value: +"1 to 14 stops {date, prefecture}, in travel order. Only stops dated today or tomorrow (Japan time) can be matched; others return unknown."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "anyOf": [
      +    {
      +      "additionalProperties": {},
      +      "properties": {
      +        "checked_at_jst_date": {
      +          "type": "string"
      +        },
      +        "disclaimer": {
      +          "type": "string"
      +        },
      +        "license_note": {
      +          "type": "string"
      +        },
      +        "not_covered": {},
      +        "provenance": {
      +          "description": "Freshness receipts for every upstream source used.",
      +          "items": {
      +            "additionalProperties": {},
      +            "description": "Freshness receipt for one upstream source.",
      +            "properties": {
      +              "content_sha256": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "fetch_status": {
      +                "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values).",
      +                "enum": [
      +                  "found",
      +                  "empty",
      +                  "stale",
      +                  "unavailable",
      +                  "unsupported"
      +                ],
      +                "type": "string"
      +              },
      +              "parser_version": {
      +                "type": "string"
      +              },
      +              "processed_by": {
      +                "type": "string"
      +              },
      +              "retrieved_at": {
      +                "description": "When this service retrieved the upstream data (null if unknown).",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "source": {
      +                "additionalProperties": {},
      +                "description": "Publisher and URL of the upstream document or dataset.",
      +                "properties": {
      +                  "publisher": {
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "publisher",
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "upstream_updated_at": {
      +                "description": "Update time stated by the upstream, or null when it states none.",
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              }
      +            },
      +            "required": [
      +              "source",
      +              "upstream_updated_at",
      +              "retrieved_at",
      +              "content_sha256",
      +              "parser_version",
      +              "fetch_status",
      +              "processed_by"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "receipt_id": {
      +          "description": "Receipt id of the settled paid call (\"rcpt_\" + 64 hex). Use with get_receipt.",
      +          "type": "string"
      +        },
      +        "related_bulletins": {
      +          "additionalProperties": {},
      +          "properties": {
      +            "matched_against_stops": {
      +              "type": "boolean"
      +            },
      +            "typhoon_status": {
      +              "enum": [
      +                "bulletin_listed_not_matched",
      +                "no_bulletin_in_checked_sources",
      +                "not_checked",
      +                "unknown"
      +              ],
      +              "type": "string"
      +            },
      +            "typhoons": {
      +              "items": {
      +                "additionalProperties": {},
      +                "properties": {},
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "volcano_matched_against_stops": {
      +              "type": "boolean"
      +            },
      +            "volcano_status": {
      +              "enum": [
      +                "bulletin_listed_not_matched",
      +                "no_alert_in_checked_sources",
      +                "not_checked",
      +                "unknown"
      +              ],
      +              "type": "string"
      +            },
      +            "volcanoes": {
      +              "items": {
      +                "additionalProperties": {},
      +                "properties": {},
      +                "type": "object"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "typhoon_status",
      +            "typhoons",
      +            "matched_against_stops",
      +            "volcano_status",
      +            "volcanoes",
      +            "volcano_matched_against_stops"
      +          ],
      +          "type": "object"
      +        },
      +        "responded_at": {
      +          "type": "string"
      +        },
      +        "results": {
      +          "description": "One result per itinerary stop, in order.",
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "checked_areas": {
      +                "items": {
      +                  "additionalProperties": {},
      +                  "properties": {},
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "checked_sources": {
      +                "items": {
      +                  "additionalProperties": {},
      +                  "properties": {},
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "date": {
      +                "type": "string"
      +              },
      +              "impact": {
      +                "description": "matched_advisory / no_match_in_checked_sources (NOT a statement of no impact) / unknown.",
      +                "enum": [
      +                  "matched_advisory",
      +                  "no_match_in_checked_sources",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "issued_at": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "prefecture": {
      +                "additionalProperties": {},
      +                "properties": {
      +                  "input": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "input"
      +                ],
      +                "type": "object"
      +              },
      +              "provenance": {
      +                "description": "Freshness receipts for every upstream source used.",
      +                "items": {
      +                  "additionalProperties": {},
      +                  "description": "Freshness receipt for one upstream source.",
      +                  "properties": {
      +                    "content_sha256": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "fetch_status": {
      +                      "description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values).",
      +                      "enum": [
      +                        "found",
      +                        "empty",
      +                        "stale",
      +                        "unavailable",
      +                        "unsupported"
      +                      ],
      +                      "type": "string"
      +                    },
      +                    "parser_version": {
      +                      "type": "string"
      +                    },
      +                    "processed_by": {
      +                      "type": "string"
      +                    },
      +                    "retrieved_at": {
      +                      "description": "When this service retrieved the upstream data (null if unknown).",
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "source": {
      +                      "additionalProperties": {},
      +                      "description": "Publisher and URL of the upstream document or dataset.",
      +                      "properties": {
      +                        "publisher": {
      +                          "type": "string"
      +                        },
      +                        "url": {
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "publisher",
      +                        "url"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "upstream_updated_at": {
      +                      "description": "Update time stated by the upstream, or null when it states none.",
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    }
      +                  },
      +                  "required": [
      +                    "source",
      +                    "upstream_updated_at",
      +                    "retrieved_at",
      +                    "content_sha256",
      +                    "parser_version",
      +                    "fetch_status",
      +                    "processed_by"
      +                  ],
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "retrieved_at": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "severity": {
      +                "anyOf": [
      +                  {
      +                    "enum": [
      +                      "emergency",
      +                      "warning",
      +                      "advisory"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "typhoon": {
      +                "enum": [
      +                  "bulletin_listed_not_matched",
      +                  "no_bulletin_in_checked_sources",
      +                  "not_checked",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "unchecked_areas": {
      +                "items": {
      +                  "additionalProperties": {},
      +                  "properties": {},
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "date",
      +              "prefecture",
      +              "impact",
      +              "severity",
      +              "typhoon",
      +              "issued_at",
      +              "retrieved_at",
      +              "checked_sources",
      +              "checked_areas",
      +              "unchecked_areas",
      +              "provenance"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "retrieved_at": {
      +          "description": "When the upstream data was retrieved (ISO 8601).",
      +          "type": "string"
      +        },
      +        "rules": {},
      +        "source": {
      +          "description": "Data source and processor.",
      +          "type": "string"
      +        },
      +        "summary": {
      +          "additionalProperties": {},
      +          "properties": {
      +            "matched_advisory": {
      +              "type": "number"
      +            },
      +            "no_match_in_checked_sources": {
      +              "type": "number"
      +            },
      +            "unknown": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "matched_advisory",
      +            "no_match_in_checked_sources",
      +            "unknown"
      +          ],
      +          "type": "object"
      +        },
      +        "terms": {
      +          "description": "URL of the terms of service.",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "receipt_id",
      +        "checked_at_jst_date",
      +        "summary",
      +        "results",
      +        "related_bulletins",
      +        "rules",
      +        "not_covered",
      +        "disclaimer",
      +        "provenance",
      +        "source",
      +        "retrieved_at",
      +        "responded_at",
      +        "license_note",
      +        "terms"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "additionalProperties": {},
      +      "description": "x402 PaymentRequired (returned with isError true when payment is required or was not accepted).",
      +      "properties": {
      +        "accepts": {
      +          "description": "Payment options (x402 v2 PaymentRequirements).",
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "network": {
      +                "type": "string"
      +              },
      +              "scheme": {
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "scheme",
      +              "network"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "error": {
      +          "type": "string"
      +        },
      +        "resource": {
      +          "additionalProperties": {},
      +          "properties": {
      +            "url": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "url"
      +          ],
      +          "type": "object"
      +        },
      +        "x402Version": {
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "x402Version",
      +        "accepts"
      +      ],
      +      "type": "object"
      +    }
      +  ],
      +  "description": "Either the paid result (with receipt_id) or, with isError true, the x402 PaymentRequired to pay and retry.",
      +  "properties": {},
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Beyond readOnlyHint/openWorldHint, the description discloses the paid nature and retry billing rule ('Retrying with the same payment is not charged'), the receipt_id hand-off to get_receipt, the false-negative caveat that no_match_in_checked_sources is 'NOT a statement of no impact', the unknown condition, and structured return fields including unchecked areas. This is exactly the behavioral context annotations cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

Front-loaded with the core question in the first clause, then packed with essential caveats in dense but purposeful parentheticals. Every sentence carries load (match semantics, return fields, billing, receipt hand-off), though the telegraphic style makes it slightly harder to scan than an ideal multi-sentence layout.

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 an output schema present, the description need not enumerate return values, yet it interprets the most dangerous one (no_match_in_checked_sources) and the unknown case, covers payment/retry and receipt retrieval, and states the no-forecast limitation. An agent has everything needed to call this correctly and interpret the result safely.

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?

Schema coverage is 100%, so the baseline is 3; the description earns more by adding meaning to the itinerary parameter that the schema only partially conveys — that non-today/tomorrow dates yield unknown and that typhoon/volcano bulletins are still listed regardless. It does not re-explain the prefecture/date formats, but the schema already does that well.

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 opening sentence states a specific verb and resource: matching an in-effect JMA warning/advisory against stops on a Japan itinerary. It also draws the boundary against related-but-different tools by scoping to itinerary matching, and against jp_warnings-style raw data by noting bulletins are 'listed, not matched' and that there is 'No forecast'. An agent can place this tool precisely without opening any sibling schema.

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?

Usage context is clear: you supply a dated itinerary and get a match/no-match/unknown verdict, with the crucial precondition that only stops dated today or tomorrow JST can be matched. It does not, however, explicitly name alternatives (e.g. jp_warnings, jp_typhoons) or state when to prefer them over this paid call, so the routing guidance is implied rather than spelled out.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources