Earthquake MCP Server
概要
作者による説明(英語の原文)
Search USGS and EMSC seismic data — real-time feeds, event queries, and earthquake counts.
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi3項目中3項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況i初期↓ 418/週 · ★ –
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンでもクラウドでも
- トランスポート: stdio, Streamable HTTP
- カテゴリ: 検索・AIの記憶
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:3項目中3項目に合格
- 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
- できること:4件(ツール) earthquake_get_feed, earthquake_search_events, earthquake_get_event, earthquake_count_events
- 自分で入力するもの:
MCP_LOG_LEVEL,USGS_BASE_URL,EMSC_BASE_URL,DEFAULT_LIMIT,REQUEST_TIMEOUT_MS,EARTHQUAKE_CLAMP_LIMITS
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
- Settings → Connectors を開く
- Add custom connector を押す
- 下のアドレスを貼り付けて Add を押す
- サインインを求められたら、作者のサービスにサインインする
https://earthquake.caseyjhand.com/mcpまたは、パソコンで動かす
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"earthquake": {
"command": "npx",
"args": [
"-y",
"@cyanheads/earthquake-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"USGS_BASE_URL": "your-value",
"EMSC_BASE_URL": "your-value",
"DEFAULT_LIMIT": "your-value",
"REQUEST_TIMEOUT_MS": "your-value",
"EARTHQUAKE_CLAMP_LIMITS": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add --transport http earthquake https://earthquake.caseyjhand.com/mcpまたは、パソコンで動かす
claude mcp add earthquake --env MCP_LOG_LEVEL=your-value --env USGS_BASE_URL=your-value --env EMSC_BASE_URL=your-value --env DEFAULT_LIMIT=your-value --env REQUEST_TIMEOUT_MS=your-value --env EARTHQUAKE_CLAMP_LIMITS=your-value -- npx -y @cyanheads/earthquake-mcp-server動かす前に、空欄の値を入力してください。
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"earthquake": {
"url": "https://earthquake.caseyjhand.com/mcp"
}
}
}または、パソコンで動かす
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"earthquake": {
"command": "npx",
"args": [
"-y",
"@cyanheads/earthquake-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"USGS_BASE_URL": "your-value",
"EMSC_BASE_URL": "your-value",
"DEFAULT_LIMIT": "your-value",
"REQUEST_TIMEOUT_MS": "your-value",
"EARTHQUAKE_CLAMP_LIMITS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"earthquake": {
"type": "http",
"url": "https://earthquake.caseyjhand.com/mcp"
}
}
}または、パソコンで動かす
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"earthquake": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/earthquake-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"USGS_BASE_URL": "your-value",
"EMSC_BASE_URL": "your-value",
"DEFAULT_LIMIT": "your-value",
"REQUEST_TIMEOUT_MS": "your-value",
"EARTHQUAKE_CLAMP_LIMITS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
- ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
- Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
- 下のアドレスを貼り付け、名前を付けて保存する
- サインインを求められたら、作者のサービスにサインインする
https://earthquake.caseyjhand.com/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
自分で入力する値
MCP_LOG_LEVELenvSets the minimum log level for output (e.g., 'debug', 'info', 'warn').USGS_BASE_URLenvUSGS API base URL. Override for testing or mirroring.EMSC_BASE_URLenvEMSC API base URL. Override for testing or mirroring.DEFAULT_LIMITenvEvents earthquake_search_events returns when a call omits limit (1-1000).REQUEST_TIMEOUT_MSenvPer-attempt HTTP timeout in milliseconds (1000-120000). Every feed, search, count, and event call also runs under one 50-second total deadline across its requests and retries.EARTHQUAKE_CLAMP_LIMITSenvClamp a search or feed limit above 1000 to 1000 with a notice. Set false to advertise and enforce a maximum of 1000 instead.
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
ツールの名前と説明は、サーバーが2026年11月6日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。
earthquake_get_feedFetch a USGS pre-computed real-time earthquake feed by magnitude tier and time window. These feeds are CDN-cached by USGS and faster and more available than the query API — use them for "what's happening now" queries. "all" includes microseisms (M<1); "significant" is a USGS cura
earthquake_search_eventsSearch USGS or independent global EMSC seismic catalogs by time, magnitude, depth, area and source-specific filters. Both include non-tectonic events; event_type="earthquake" excludes them on USGS. Circle and independently optional box edges intersect. Unsupported EMSC filters ap
earthquake_get_eventFetch one earthquake by event ID: a USGS ID, or an EMSC ID (an origin date and seven-digit sequence, e.g. "20190706_0000043"). Returns the same normalized event a search result carries. For a USGS event it adds a projection of the analysis products only the single-event response
earthquake_count_eventsCount matches without event records, or size an earthquake_search_events query. Omitting start_time uses 30 days; pass explicit bounds for historical periods. queryEcho reports applied filters/window; ignoredFilters names unsupported EMSC inputs. Circle and independently optional
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント cyanheads で確認済みです
- … 未チェック
今もメンテナンスされている
このリポジトリはまだGitHubから読み取っていません
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- ✓ 合格
エンドポイントが応答する
180ミリ秒で応答(HTTP 200)
- – 対象外
OAuthでサインイン
サインイン不要
- ✓ 合格
ツールの説明に隠れた指示がない
4件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした
検索・AIの記憶のほかのサーバーとの比較i
- このカテゴリのほかの5714件のうち0%よりスターが多い
- このカテゴリのほかの5714件のうち89%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5714件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Earthquake MCP Serverは安全ですか?
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は–、最新バージョン(0.5.1)がレジストリに届いたのは4 日前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
代わりに使えるものは?
同じカテゴリには:Context7, Codebase Memory, Exa
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
@cyanheads/earthquake-mcp-server Search USGS and EMSC seismic data — real-time feeds, event queries, and earthquake counts via MCP. STDIO or Streamable HTTP. 4 Tools • 3 Resources
Public Hosted Server: https://earthquake.caseyjhand.com/mcp
Overview
Seismic data from USGS ComCat and the EMSC SeismicPortal. Fetch real-time earthquake feeds, search and count seismic events by time, magnitude, depth, and location, and pull full analysis detail for a single event.
Tools
| Tool | Description |
|---|---|
earthquake_get_feed | Fetch a USGS pre-computed real-time earthquake feed by magnitude tier and time window |
earthquake_search_events | Search earthquakes by time range, magnitude, depth, location radius, PAGER alert level, felt reports, or ShakeMap and DYFI intensity |
earthquake_count_events | Count earthquakes matching filters without fetching full records |
earthquake_get_event | Fetch one earthquake by USGS or EMSC event ID, with USGS analysis products and opt-in origins, magnitudes, phase arrivals, aftershock forecast, and PAGER loss estimates |
Resources
| Resource | Description |
|---|---|
earthquake://feed/{magnitude_tier}/{time_window} | First 100-event page of a USGS real-time feed, with an exact continuation URI |
earthquake://feed/{magnitude_tier}/{time_window}/page/{cursor} | Continue the retained feed generation using the returned next_uri |
earthquake://event/{event_id} | One earthquake by USGS or EMSC event ID as injectable context, with the same detail product projection as earthquake_get_event |
Skill
| Skill | Description |
|---|---|
earthquake-guide | Agent guide for the earthquake_* tools: identifier chains between USGS and EMSC, coverage and magnitude-scale gates, and when product and include groups answer a question. Loaded by plugin hosts from skills/ and served over MCP as skill://earthquake-guide/SKILL.md |
Capability reference
earthquake_get_feed tool
- Choose a magnitude tier (
all,1.0,2.5,4.5,significant) and a window (hour,day,week,month). USGS caches these feeds; useearthquake_search_eventsfor historical or filtered queries. - Returns events, page count, generation time, and source feed URL.
allincludes microseisms;significantis USGS-curated using magnitude, felt reports, and PAGER impact. - Each page returns
limitevents (default 15), fewer only on the last page. Alimitabove 1,000 returns 1,000 with a notice naming the requested and applied values; withEARTHQUAKE_CLAMP_LIMITS=falseit is rejected instead.limitapplies to the first page; later pages keep the page size in the cursor.totalCountreports the whole feed; passnextCursorback unchanged with the same tier and window. - Continuations read the first-read generation, unaffected by upstream edits. Retention lasts up to 15 minutes, subject to capacity eviction and restart.
cursor_expiredmeans restart without a cursor; legacy cursors must also be restarted.
earthquake_search_events tool
- Search
usgsoremscby time, magnitude, depth, radius, or bounding box. A radius requireslatitude,longitude, andradius_kmtogether; box edges are independently optional, support antimeridian bounds up to ±360°, and intersect a supplied circle. - Returns normalized events with
event_type, EMSC'sevent_certainty, and USGS'sassociated_ids(other network IDs merged into the event).ignoredFiltersnames unsupported filters;queryEchoreports the effective query. - Both search and count accept open
magnitude_typevalues on either source; EMSC matches its own lowercase types (mb,mw) exactly and has nomww.product_type(required product, e.g.moment-tensor) andreview_status(automaticorreviewed) apply only to USGS; EMSC names them inignoredFilters. Blank values mean omitted. event_type,magnitude_type, andproduct_typestay open strings; USGS matches them case-insensitively, andevent_typetakes a comma-separated list. USGS answers a value outside its published vocabulary with zero events, so when a USGS search's first page or a USGS count comes back empty,noticenames each unlisted value and the listed values it equals once case and-,_, and spaces are ignored:product_type "moment_tensor"suggests"moment-tensor". The vocabulary read is one attempt within the call's deadline, cached for 24 hours; if it fails, the zero returns as it would without the check. EMSC publishes no vocabulary and is not checked.min_mmi(ShakeMap intensity, Modified Mercalli) andmin_cdi(DYFI community intensity), each 1–12, select events by how strongly they shook, which a magnitude floor oralert_levelmisses. Both apply only to USGS: an event without a ShakeMap or DYFI reports never matches, and EMSC names them inignoredFilters.- Date-only bounds (including expanded year/year-month forms) mean midnight at the start of the named day on both sources:
2026-10-10becomes2026-10-10T00:00:00. Explicit time and timezone suffixes are preserved; unpadded date components are padded. Offsetless times use UTC for the 30-day default.queryEchoshows the exact effective bounds. - Sort by time or magnitude in either direction. Each call requests
limitevents upstream (default 15, set byDEFAULT_LIMIT) and returns them all, fewer only on the last page. Alimitabove 1,000 returns 1,000 with a notice naming the requested and applied values; withEARTHQUAKE_CLAMP_LIMITS=falseit is rejected instead.queryEcho.limitreports the applied limit. Continue with the returnednextOffset(offset plus the events returned, counting from 1) and the same filters, limit, and order. Search pages read the current catalog, so upstream edits can affect later pages. - Strictly inverted magnitude, depth, or explicit time bounds fail locally as
invalid_range, naming both values and recovery. Equal and single bounds remain valid; time comparisons use UTC instants, including explicit offsets. Calendar-invalid values remain for upstream rejection. - A nonempty short page establishes
totalCount; an empty first page establishes zero, while an empty later page leaves the total unknown. Full pages use a count lookup, withcountUnavailableon failure. Feed, search, count, and event calls each share one 50-second deadline across their requests and retries; for search that includes the count lookup. Cancellation remains cancellation.
earthquake_count_events tool
- Count matches using the same filters as
earthquake_search_events, without fetching events. Omitstart_timefor the last 30 days;queryEchoreports the resolved window and applied filters. exceeds_limitflags the 20,000-event single-request threshold, not a retrieval ceiling: search offset paging can retrieve larger match sets.max_allowedis 20,000 for USGS and null for EMSC;ignoredFiltersnames filters the source cannot apply.- A USGS count of zero carries
noticewhen a suppliedevent_type,magnitude_type, orproduct_typevalue is not in the USGS vocabulary, as search's empty first page does.
earthquake_get_event tool
- Pass the
idof any feed or search result. An EMSC unid from asource=emscsearch (eight digits, underscore, seven digits, e.g.20190706_0000043) is looked up on EMSC SeismicPortal; every other ID goes to USGS (e.g.us6000sznj). - A USGS event returns the normalized event plus optional
detail: PAGER, ShakeMap, DYFI, moment tensor, ground-failure alerts, origin quality (includingdepth_type, which separates an assigned depth from a located one), and finite-fault dimensions. Groups are omitted when none of their projected fields is available; absence does not imply zero impact.associated_idslists the other network IDs USGS holds for the event; an alias such asus70004bn0returns the preferred event (ci38457511) with the alias listed there. - An EMSC event returns the same normalized event its search result carries, with no
detailand noassociated_ids. includeopts into more for USGS events:
| Group | Source | Extra requests |
|---|---|---|
origins | Every origin product in the event response, preferred first | None |
magnitudes | Event-level magnitudes from the preferred phase-data product's QuakeML, with a station count where published | One, shared with arrivals |
arrivals | Every phase arrival of that document's preferred origin, joined to its pick and sorted nearest first | One, shared with magnitudes |
aftershock_forecast | The USGS Operational Aftershock Forecast: each window's probability of an aftershock at or above each magnitude, its expected-count range, and the chance of one as large as the mainshock | One |
pager | The PAGER estimates behind the alert, from the preferred losspager product's JSON files: the fatality and economic-loss alert levels with every probability bracket (economic bounds in millions of USD), PAGER's impact statements, and the people exposed at each shaking intensity, in total and per country | Two, or three when the product publishes impact statements |
- A requested group that is not returned is listed in
unavailable_includes:not_publishedwhen the event has no such product (every group on an EMSC event) or its product lacks the files the group reads (PAGER products published before the JSON files existed),fetch_failedwhen the download failed, returned HTML, did not parse, pointed outside the configured USGS origin, or answered with a redirect. The event,detail, and other groups still return; cancellation propagates. The event request and its product downloads share one 50-second deadline. - Blank IDs fail locally
冒頭だけを表示しています。続きはリポジトリで読めます