usgs-quakes-mcp について
AIアプリケーションからUSGSの地震カタログを検索し、個別イベントの詳細を取得できるMCPサーバーです。自然言語で検索でき、APIキーは不要です。
主な機能
- 01時刻・位置・マグニチュード・深さで検索
- 02該当する地震の件数を集計
- 03イベントIDから詳細を取得
- 04自然言語による地震検索
- 05USGS FDSNイベントデータの利用
活用シーン
- 01地域と期間を指定して地震を検索
- 02結果取得前にイベント数を確認
- 03地震の震源情報と品質指標を調査
MCP 対応
STDIO経由でMCPクライアントに地震検索、件数集計、イベント詳細取得のツールを提供します。USGS FDSNイベントサービスのデータを使用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
usgs-quakes-mcp
USGS 地震カタログ用 MCP サーバー
Claude Desktop、Claude Code、およびその他の MCP クライアントからUSGS FDSN event APIにアクセスできる MCP サーバーです。
npx -y usgs-quakes-mcp
API キーは不要です。USGS のサービスは無料で公開されています。
概要
この Model Context Protocol(MCP)サーバーを使うと、AI アシスタントやアプリケーションで次のことができます。
- さまざまな検索パラメーターを使って地震データを取得する
- 特定の地震の詳細を取得する
ユーザーは自然言語でクエリを実行できます。
出力例
Q: 過去 20 年間にフロリダで発生したマグニチュード 2 を超える地震を探してください
A: 過去 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 年間にフロリダ州内またはその近辺で、注目すべき地震が 3 回発生しています。
-
2006 年 9 月 10 日、メキシコ湾で発生したマグニチュード 5.9 の地震 震源は北緯 26.319°、西経 86.606° の沖合でした 深さ:14 km この期間にこの地域で発生した地震の中で最大でした 広い範囲で揺れが感じられ、5,763 人が揺れを報告しました
-
2019 年 3 月 6 日、フロリダ州ジェイ近郊で発生したマグニチュード 2.8 の地震 震源は北緯 30.9718°、西経 87.1719° でした 深さ:5 km 49 人がこの地震の揺れを報告しました
-
2019 年 3 月 24 日、フロリダ州センチュリー近郊で発生したマグニチュード 2.7 の地震 震源は北緯 30.9622°、西経 87.2384° でした 深さ:5 km 4 人がこの地震の揺れを報告しました
フロリダ州で発生する地震は、米国の地震活動が活発な地域に比べると比較的少ないことにご留意ください。2019 年の 2 回の地震はフロリダ州パンハンドルで発生し、より規模の大きい 2006 年の地震はメキシコ湾沖で発生しました。
Q: フロリダ州ジェイの地震の詳細を教えてください
A: フロリダ州ジェイ近郊で発生したマグニチュード 2.8 の地震について、詳しい情報を取得します。
usgs-quakes の find-earthquake-details の結果を表示(ローカル)
{
"eventid": "us1000jbw4"
}
フロリダ州ジェイの地震の主な詳細は次のとおりです。 日時:2019 年 3 月 7 日 04:45:52 UTC 場所:フロリダ州ジェイの北西 2 km(1.2 マイル) 座標:北緯 30.9718°、西経 87.1719° 深さ:5 キロメートル(3.1 マイル) マグニチュード:2.8 mb_lg(実体波マグニチュード)
その他の詳細:
- 49 人が地震の揺れを報告しました
- Community Internet Intensity Map(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
-
次の場所にある Claude Desktop の設定を開きます。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
サーバー設定を追加します。
{
"mcpServers": {
"usgs-quakes": {
"command": "npx",
"args": ["-y", "usgs-quakes-mcp"]
}
}
}
- 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 event web service から取得します。 このサービスでは、1 回のクエリで取得できるイベント数は最大 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
すべてのツールと API 呼び出しは src/server.ts にあります。編集するのはこのファイルです。
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 についても同様です。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
