关于 baseline-mcp
baseline-mcp 将 Agent 连接到 Baseline Climate API,提供天气预报和历史气候背景,包括排名记录与可靠性说明。它适用于需要特定地点天气信息并关注站点差异或预报技巧等限制的查询。
主要功能
- 0135 年气候记录排名
- 02天气预报和季节展望背景
- 03美国附近气象站交叉核验
- 04可靠性说明及并列情况披露
- 05比较多个地点的天气状况
适用场景
- 01评估降雨是否影响施工安排
- 02查询卡车运输路线的天气背景
- 03比较不同地点的季节降水
MCP 相关
它将气候背景查询、坐标查询、水文年状态、常年值比较和地点比较作为 MCP 工具提供。每次调用都会转换为发往 Baseline Climate API 的 HTTP 请求。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx baseline-mcpBASELINE_API_URLBase URL of the Baseline API instance to query.BASELINE_API_KEY密钥API key for the Baseline API. Contact [email protected] for a key -- self-serve signup is not yet available.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
6收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 |
详细介绍
Baseline Climate
别让你的 Agent 凭空编造气候背景。 覆盖地球任意地点的 35 年排名记录,经真实气象站交叉核验,并明确说明可靠性,让你转述而不是猜测。
问它一个问题,得到的回答是这样的。
一项排名——披露了几乎并列的情况,并有气象站数据印证:
2026 年 8 月: 平均气温为 75°F,比常年高 2.8°F,在 1991 年以来排名第 8 热——不过第 7 至第 9 热的年份之间,温差不超过 0.7°F。附近的气象站(CASPER-NATRONA COUNTY AP,8.4 mi)印证了这一点:比本站常年高 2.1°F,而再分析数据为 +2.8°F。
一座数据不符的气象站——一英里外的雨量计读数只有网格总量的一半:
2026 年 3 月: 降水总量为 2.30 in,按历史同期来看接近平均值。附近的气象站(BOZEMAN MONTANA STATE UNIVERSITY,1.3 mi)测得 1.12 in,而再分析数据为 2.30 in。
一项明确说明是模拟值而非实测值的风速排名:
2026 年 3 月: 模拟峰值阵风为 60 mph,在 1991 年以来排名第 3 大风——但与排名第 6 大风的年份相差不到 1 mph。一座气象站(Saratoga,32.1 mi)测得峰值阵风为 59 mph。再分析数据是模拟估值,并非直接读数。
一份标注了自身技巧水平的季节展望:
内罗毕 9 月至 11 月可能比常年更湿,但我们尚无法在此验证这些概率——低于常年 5%,接近常年 19%,高于常年 76%。这里的预测确实能反映雨季和旱季,因此值得参考的是趋势方向;至于这些百分比本身是否优于气候平均值猜测,目前尚无证据。
有四点值得注意。它给出排名,而不只是数字。它会指出排名几乎并列,避免你过度解读。它会去询问真实气象站,核实网格记录是否准确——当气象站数据不符时,它会如实说明,而不是掩盖差异。它也会告诉你,什么时候无法为自己的预测背书。
数据并不新鲜,向它提问才是新事物。
ERA5 多年来一直存放在公共档案中。要对它进行查询,需要知道该用哪个数据集、编写代码,还得花上一下午。如今,这些成本已经大幅降低;一个有趣的结果是,人们开始提出以前觉得不值得费心的问题。
上面的 Bozeman 例子并非天气查询,而是一起施工进度争议:问题是雨水是否真的导致停工——网格记录给出的说法,与一英里外雨量计的读数却不一致。风速的例子则涉及一条货运走廊。过去没人会为此打开气候数据集。现在只需一句话就能查询。
这就是我们所主张的:重点不在于历史天气数据是否存在,而在于查询它、解答实际问题的成本已经低到足以让天气成为普通信息输入,服务于那些本身与天气无关的问题。
它不会声称什么
大多数工具只会给你一个数字。这个工具给你数字及其可信度。
- 会说明排名接近的情况。“最暖的第 8 名——不过第 7 至第 9 名之间相差不到 0.7°F”,可以避免模型把排名报告得好像存在显著差距。
- 气象站之间的分歧会影响可信度,并说明影响的方向。仪器读数为 1.12 in,而网格数据为 2.30 in 时,会如实报告,不会把差异平均掉。
- 如果没有进行交叉核查,会说明原因——附近没有气象站、位置在覆盖区域之外,或数据源未响应。会明确指出缺失的信息,而不是留给模型自行补全。
- **季节展望会附上诚实的技巧评分标签。**根据 ECMWF SEAS5 与 35 年观测数据进行校准,再根据实际测试结果标注:这里的概率是否优于气候平均值估算、是否只有趋势方向值得参考,或者——如果简单的变暖趋势比模型更准确地预测了该季节——不应以该模型为依据。我们会公布自身预测并非最佳可用答案的情况。
每个响应都包含一个 assessment 字段,说明 Baseline Climate 对结果的可信度;工具描述会要求模型转述该说明,而不是自行编写。这是因为确实存在这样的失败模式:面对一个孤立的数字,模型会捏造并未打破的纪录、声称某处的数据集不可靠(实际上并非如此),还会把一次气象站数据分歧套用到无关的回答中。
它由什么组成
| 全球每日纪录 | ERA5-Land 再分析数据,0.1°,1991 年至今,仅限陆地 |
| 气象站交叉核查 | ACIS(NOAA RCC)。仅限美国——美国境外的回答会明确说明未进行气象站核查 |
| 季节展望 | ECMWF SEAS5,按区域校准。仅提供降水——温度尚未通过我们的技巧测试,通过之前我们不会发布温度展望 |
| 预报 | Open-Meteo |
排名使用 1991 年至今的完整记录;“常年值”指 WMO 1991–2020 参考期。请参阅 METHODOLOGY.md,了解排名、百分位数和水文年的计算方法, 以及相关限制。
工具
get_climate_context— 提出一个自然语言问题;返回预报和基于 35 年数据的排名背景。get_context_for_coordinates— 对精确的经纬度提供相同信息。get_water_year_status— 返回水文年开始以来的降水量和温度,并与 35 年数据进行排名比较。compare_to_normal— 查看某个地点近期的天气状况有多异常。compare_locations— 按水文年、季节、月份或滑雪季,对 2–10 个地点或精选类别的降水量、温度或降雪量进行排名比较。
安装
需要 API 密钥。目前尚不支持自行注册——在此早期阶段,请发送邮件联系 Chad McNutt([email protected])。
pip install baseline-mcp # or: uvx baseline-mcp
Claude Code
claude mcp add baseline \
--env BASELINE_API_URL=https://api.baselinecontext.com \
--env BASELINE_API_KEY=your-key-here \
-- uvx baseline-mcp
Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"baseline": {
"command": "uvx",
"args": ["baseline-mcp"],
"env": {
"BASELINE_API_URL": "https://api.baselinecontext.com",
"BASELINE_API_KEY": "your-key-here"
}
}
}
}
Cursor — .cursor/mcp.json,格式与上文相同。
作为 HTTP 服务运行(可流式传输的 HTTP,用于部署在反向代理之后):
BASELINE_API_URL=https://api.baselinecontext.com baseline-mcp --transport http --port 8765
该服务在 127.0.0.1 上提供 /mcp,自身不持有任何密钥:每个请求都必须在 X-Api-Key(或 Authorization: Bearer)标头中携带调用方的密钥;每次工具调用都会使用该密钥,因此会计入该密钥自身的配额。没有有效密钥的请求会收到 401 响应。默认传输方式 --transport stdio 即为上文所示的本地服务。
参与贡献
此软件包是一个轻量的转换层:其中不包含任何气候逻辑,每次工具调用都会向 Baseline Climate API 发送 HTTP 请求。有关本地开发环境的设置,请参阅代码库中的 CONTRIBUTING.md。
采用 MIT 许可证。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。