关于 Jma
Jma 是基于日本气象厅公开数据的 MCP 服务,面向需要查询日本天气与防灾信息的用户。它支持按地名解析预报区域,并提供预报、警报及近期地震报告。
主要功能
- 01按地名解析预报区域
- 02提供三日及七日天气预报
- 03查询区域警报与注意报
- 04查看近期地震及震度信息
适用场景
- 01查询日本城市的短期及一周天气
- 02了解指定地区当前生效的警报
- 03查看近期地震的震级和最大震度
MCP 相关
向 MCP 客户端提供日本气象厅天气预报、警报及地震查询工具,数据来自其公开 bosai JSON 源。支持网关连接,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/jma/mcpclaude mcp add --transport http pipeworx-io-jma https://gateway.pipeworx.io/jma/mcp{"mcpServers":{"pipeworx-io-jma":{"type":"http","url":"https://gateway.pipeworx.io/jma/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-jma":{"type":"http","url":"https://gateway.pipeworx.io/jma/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-jma":{"type":"http","url":"https://gateway.pipeworx.io/jma/mcp"}}}{"mcpServers":{"pipeworx-io-jma":{"serverUrl":"https://gateway.pipeworx.io/jma/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
@pipeworx/jma
日本气象厅(JMA)的天气预报、警报/注意报和地震报告——直接来自 JMA 公共 bosai JSON 数据源,无需密钥。
属于 Pipeworx——一个将 AI Agent 连接到 1882+ 个实时数据源的 MCP 网关。这是一项独立的非官方集成,与上游提供方无关,未获其认可,也并非由其发布。
工具
jma_resolve_area(query)— 将地名(英文罗马字或日语,例如 "Tokyo"、"Sapporo"、"大阪")或 JMA 地区代码解析为jma_forecast/jma_warnings使用的预报机构代码。jma_forecast(area)— 按子区域提供 3 天短期预报(天气、降水概率、气温)以及 7 天周预报(天气、降水概率、预报可靠性、最低/最高气温及置信区间)。可直接接受地名——内部会以与jma_resolve_area相同的方式解析。jma_warnings(area)— 某地区当前的警报和注意报(警報・注意報):包括概要通报,以及每个区域针对所有 JMA 警报类别(大雨、暴风、洪水、波浪、风暴潮、浓雾、雷暴、雪崩、霜冻,以及相应的“特别警报”/紧急级别)的状态(已发布/持续/已解除/无生效警报),覆盖都道府县级和市町村级。jma_earthquakes(limit?, min_magnitude?, min_intensity?)— 近期地震信息,包括震级、最大震度(JMA 的 10 级震度标准)、震中,以及报告/发生时间。
身份验证
无需密钥。无需注册,也无需 API 密钥。
数据源
https://www.jma.go.jp/bosai/common/const/area.json— 地区主列表:包含 58 个预报机构,以及 JMA 自行命名的所有都道府县/地区/城市/区/町,提供日语和英语名称。jma_resolve_area会遍历此列表。https://www.jma.go.jp/bosai/forecast/data/forecast/<office>.json— 单个机构的 3 天预报和周预报。https://www.jma.go.jp/bosai/warning/data/warning/<office>.json— 单个机构当前的警报/注意报。https://www.jma.go.jp/bosai/quake/data/list.json— 持续更新的近期地震通报数据源(通常涵盖最近几周),按时间倒序排列。
给接手者的注意事项
- 预报和警报是按预报办公区发布的,而不是按城市发布的。 共有 58 个办公区,大致每个都对应一个都道府县,另加北海道和冲绳的细分区域(例如,东京 =
130000)。调用方会说“东京”或“札幌”,而不是办公区代码——每个接受area的工具都会通过area.json的完整层级(办公区 → 地区 → 城市/区/町)解析它,并沿层级向上查找所属办公区。 - 地名排序依据是(名称匹配度,然后是区域范围大小)——顺序不可颠倒。 两个因素顺序颠倒时,都曾导致结果悄然出错:先按层级排序时,“Iga”(三重县的一座城市)会返回新潟的预报,因为无论匹配程度多低,办公区的优先级都高于城市——Kaga→Kagawa、Oki→Okinawa、Aki→Nagasaki 也同样如此。如果完全没有匹配度信号,“Yokohama”会返回青森,因为 JMA 将政令指定城市拆分为子区域(“横滨市北部”/“横滨市南部”,没有普通的横滨市叶节点),而唯一字面名称为“Yokohama”的叶节点,是一个相距 700 km 的小镇。用于确保此逻辑正确的回归测试会断言区域主数据中的全部 2,217 个英文名称都能解析为自身;修改排序逻辑前请先运行它(fleet #1939)。
- 不同都道府县的同名地点由区域代码(JIS 都道府县顺序)决定,并在
alternatives中披露。 伊达市同时存在于北海道和福岛县,川崎町同时存在于宫城县和福冈县——查询中没有信息可以区分它们,因此alternatives会列出其他候选项及其对应的办公区。alternatives: []因而意味着该名称确实唯一;过去恰恰在出错的那些情况下,它表达的却是相反的意思。 area.json的四个层级在代码空间中存在重叠。 少数小型办公区本身就是单一子区域,因此同一个数字代码会同时出现在offices和class10s中(例如011000Soya)。此工具包中的父级遍历始终从匹配到的层级开始(绝不会把代码视为在四个字典中全局唯一),因此这个边缘情况也能正确解析,而不会悄然落到错误的办公区。weatherCodes是 JMA 发布的封闭数字集合(三位数,约 110 个正在使用)——此工具包提供了基于该固定集合构建的完整静态翻译表(weather_en),而非机器翻译。自由文本weathers[]叙述(含“後”/“時々”/“一時”等时间修饰语)则特意仅保留日语原文:其组合方式无法由静态表安全覆盖,临时翻译出错还不如不翻译。- 警报代码(每个区域的
warnings[]中的code字段)与天气代码属于不同的封闭数字集合(02-49,涵盖警报/注意报/特别警报/紧急警报)。通过东京的实时响应进行了交叉核对:areaTypes负载中的代码 14/15/16/20,与该响应自身headlineText中的“強風”、“高波”、“落雷”、“濃霧”完全对应;该表正是依据这项验证构建的。 - 地震烈度(
maxi/int[].maxi)采用 JMA 自己的 10 级震度等级:1、2、3、4、5-、5+、6-、6+、7——5-/5+表示“5 弱”/“5 强”,不是“略低于/高于 5”。空字符串表示公告未包含烈度信息(例如,没有震动报告的“震源更新”记录)。 area.json约为 260 KB,基本保持静态(JMA 的预报区域边界属于固定的行政结构)——此工具包会在模块作用域内将其缓存 24 小时,而不是每次调用都重新获取。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"jma": {
"url": "https://gateway.pipeworx.io/jma/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/jma/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、
discover_tools、search_within、remember/recall,以及网关范围内的其他工具。因此,你看到的工具数量会多于此表:单个工具包端点目前会同时列出约 30 个共享工具和该工具包自己的工具。连接的 initialize 响应会说明确切范围,是当天情况的权威依据。
这是有意为之,并非意外的多路复用。元工具让限定范围的连接也能回答此工具包未涵盖的问题——通过 ask_pipeworx 跨整个目录进行路由——无需添加第二个 MCP 服务。目前无法挂载不含这些元工具的工具包端点;如果这些额外的架构占用的上下文超出了路由带来的价值,请只连接一次完整网关,而不是连接多个工具包端点。
或者,连接完整的 Pipeworx 网关,直接列出所有工具包的工具,而不只是当前工具包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都连接到同一个网关,并可访问相同的 1882+ 个数据源。唯一的区别是哪个工具包的工具会被直接列出;无论连接哪一个,ask_pipeworx 都能访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/jma_resolve_area \
-H 'Content-Type: application/json' \
-d '{"query":"Tokyo"}'
首次调用无需账户。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/jma_resolve_area。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。
独立运行(无需网关账户)
此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需通过网关中转:
{
"mcpServers": {
"jma": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-jma"]
}
}
}
或者直接运行它,确认服务可以启动:
npx -y @pipeworx/mcp-jma
它通过 stdin/stdout 使用 MCP,并针对仅属于此工具包的工具响应 initialize/tools/list/tools/call——不包含上述网关连接额外提供的任何共享元工具。来源相同,工具相同,但没有 ask_pipeworx 路由。
使用 ask_pipeworx
你可以用通俗英语提问,而不是直接调用工具——这既适用于上面的工具包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Jma data" })
网关会选择合适的工具并自动填入参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。