mcpField
U
usgs-quakes-mcp

usgs-quakes-mcp

本地服务
github.com/blake365科研与教育111 周前更新

关于 usgs-quakes-mcp

此 MCP 服务让 AI 应用搜索 USGS 地震目录并获取单个事件详情,支持自然语言查询,且无需 API 密钥。

主要功能

  1. 01按时间、位置、震级和深度搜索
  2. 02统计匹配的地震事件
  3. 03按事件 ID 获取详情
  4. 04自然语言地震查询
  5. 05使用 USGS FDSN 事件数据

适用场景

  1. 01查找特定地区和时段的地震
  2. 02获取结果前先统计事件数量
  3. 03查看地震震源及质量指标

MCP 相关

通过 STDIO 向 MCP 客户端提供地震搜索、结果计数和事件详情工具,数据来自 USGS FDSN 事件服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"usgs-quakes": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

usgs-quakes-mcp

USGS 地震目录的 MCP 服务

npm version

一个 MCP 服务,可让 Claude Desktop、Claude Code 以及任何其他 MCP 客户端访问 USGS FDSN event API。

npx -y usgs-quakes-mcp

无需 API 密钥——USGS 服务免费且公开。

概述

此模型上下文协议(MCP)服务可让 AI 助手和应用程序:

  • 通过多种搜索参数获取地震数据
  • 获取特定地震的详细信息

用户可以使用自然语言执行查询。

示例输出

问:查找过去 20 年佛罗里达州震级超过 2 的地震

**答:**我来帮你搜索过去 20 年佛罗里达州震级大于 2.0 的地震。

查看 usgs-quakes(本地)中 find-earthquakes 的结果

{
  "endTime": "2024-12-28T23:59:59",
  "startTime": "2004-12-28T00:00:00",
  "maxLatitude": 31.000888,
  "minLatitude": 24.396308,
  "maxLongitude": -80.031362,
  "minLongitude": -87.634896,
  "minmagnitude": 2
}

根据 USGS 地震数据,过去 20 年佛罗里达州境内或附近发生过三次值得注意的地震:

  1. 2006 年 9 月 10 日,墨西哥湾发生了一次 5.9 级地震 震中位于近海,坐标为北纬 26.319°、西经 86.606° 震源深度:14 km 这是该时期该地区震级最大的地震 许多人有震感,共有 5,763 人报告感受到地震

  2. 2019 年 3 月 6 日,佛罗里达州 Jay 附近发生了一次 2.8 级地震 坐标为北纬 30.9718°、西经 87.1719° 震源深度:5 km 49 人报告感受到这次地震

  3. 2019 年 3 月 24 日,佛罗里达州 Century 附近发生了一次 2.7 级地震 坐标为北纬 30.9622°、西经 87.2384° 震源深度:5 km 4 人报告感受到这次地震

值得注意的是,与美国地震活动更活跃的地区相比,佛罗里达州发生的地震相对较少。2019 年的两次地震发生在佛罗里达州狭长地带,而 2006 年较大的地震则发生在墨西哥湾近海。

问:获取佛罗里达州 Jay 地震的详细信息

**答:**我来获取佛罗里达州 Jay 附近发生的 2.8 级地震的详细信息。

查看 usgs-quakes(本地)中 find-earthquake-details 的结果

{
  "eventid": "us1000jbw4"
}

以下是佛罗里达州 Jay 地震的主要信息: 日期和时间:2019 年 3 月 7 日 04:45:52 UTC 位置:佛罗里达州 Jay 西北方向 2 km(1.2 英里) 坐标:北纬 30.9718°、西经 87.1719° 震源深度:5 公里(3.1 英里) 震级:2.8 mb_lg(体波震级)

其他详细信息:

  • 49 人报告感受到这次地震
  • 社区互联网烈度图(CIIM)显示最大烈度为 2.7
  • 未引发海啸
  • USGS 科学家对这次地震进行了复核并确认
  • 震中位置的水平误差范围约为 6.2 km
  • 震级计算使用了 11 个地震台站的数据
  • 新墨西哥州地震网(NM)也检测到了这次地震,并计算出略有不同的震级 2.63

技术测量数据:

  • 方位间隙:243 度(表示地震台站覆盖程度中等)
  • RMS 误差:0.59(表示震中位置估算质量尚可)
  • 到最近台站的最小距离:0.222 度
  • 震级标准误差:0.154

这次地震规模较小,但对于很少发生地震活动的佛罗里达州而言,仍值得注意。49 人感受到地震,说明附近居民有明显震感,但预计这种震级的地震不会造成重大损害。

安装

需要 Node.js 20 或更高版本。无需安装步骤——首次运行时,npx 会获取此服务。

Claude Desktop
  1. 打开 Claude Desktop 配置文件:

    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows:%APPDATA%\Claude\claude_desktop_config.json
  2. 添加服务配置:

{
    "mcpServers": {
        "usgs-quakes": {
            "command": "npx",
            "args": ["-y", "usgs-quakes-mcp"]
        }
    }
}
  1. 关闭并退出 Claude Desktop,然后重新启动
Claude Code
claude mcp add usgs-quakes -- npx -y usgs-quakes-mcp
其他 MCP 客户端

此服务通过 STDIO 使用 MCP。运行 npx -y usgs-quakes-mcp,或使用 npm install -g usgs-quakes-mcp 全局安装,然后运行 usgs-quakes-mcp。

工具

  • find-earthquakes — 按时间、边界框、半径、震级和深度搜索
  • count-earthquakes — 统计匹配项数量,不返回事件,以便先确定查询规模
  • find-earthquake-details — 获取单个事件 ID 的完整详情,包括震源质量指标

数据源

数据来自 USGS FDSN 事件 Web 服务。 该服务将单次查询限制为最多 20,000 个事件。

开发

npm install        # install dependencies
npm run dev        # run from source over STDIO, no build step
npm run build      # compile TypeScript to build/
npm run typecheck  # type-check without emitting

src/server.ts 包含所有工具和 API 调用——需要编辑的就是这个文件。 src/index.ts 仅作为 STDIO 入口点。

要让 Claude Desktop 使用本地构建版本,而非已发布的软件包,请使用 "command": "node" 和 "args": ["/full/path/to/usgs-quakes/build/index.js"],并在每次重新构建后重启 Claude Desktop。

故障排除

如果 Claude Desktop 找不到 npx,请提供其完整路径(在 macOS 上,通常是 /usr/local/bin/npx 或 /opt/homebrew/bin/npx)。如果你运行的是本地构建版本,node 也需要这样设置。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。