Skip to main content
Glama

earthquake-mcp-server

Get Earthquake Event Detail

earthquake_get_event
Read-onlyIdempotent

Fetch detail for a specific earthquake by USGS event ID. Returns the same normalized event a search result carries, plus a projection of the analysis products only the single-event response holds: PAGER impact alert and report link, ShakeMap peak intensity and ground motion, DYFI felt-report totals, the moment-tensor focal mechanism, landslide and liquefaction alerts, origin quality (azimuthal gap, station count, location uncertainty), and finite-fault rupture dimensions. Products are omitted when USGS produced none — a small automatic event typically has no detail at all, while a large reviewed one has most of it. Event IDs appear in the "id" field of earthquake_get_feed and earthquake_search results. This tool is USGS-only — EMSC events have no per-event detail endpoint.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
event_idYesUSGS event ID, e.g. "hv74966427" or "us6000sznj". Found in the "id" field of earthquake_get_feed and earthquake_search results.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
eventNoFull earthquake event detail.
detailNoAnalysis products USGS attached to this event. Absent when the event carries none — that means no product was produced, not that impact was zero.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the description correctly aligns with those. It adds valuable context about behavior: products are omitted when none exist, and small automatic events may have no detail while large reviewed ones have most. It also states this is USGS-only, which is a behavioral constraint. No contradictions with annotations. The description goes beyond structured fields by explaining output variability based on event type.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence contributes. It leads with the purpose, then lists the projection of products, notes the omission behavior, mentions the source of event IDs, and ends with the USGS-only limitation. No redundancy or filler. While it's longer than minimal, the complexity of listing many products warrants the length. It's well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has one parameter, an output schema exists, and the description covers the purpose, the source of the event ID, what to expect in terms of product presence, and the USGS-only constraint. It also differentiates from siblings. For a single-event detail tool, everything an agent needs to decide when and how to call it is present. The absence of pagination or authorization details is irrelevant given read-only and open-world hints. The description is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already describes event_id with examples and where to find it. The description adds a little extra by confirming that event IDs come from the 'id' field of feed/search results, which reinforces the schema. While the schema is fully descriptive, the description provides the same information in prose, which slightly enhances clarity but is not strictly necessary. Given high schema coverage, a baseline of 3 is appropriate, but the description adds just enough context to justify a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: fetch detail for a specific earthquake by USGS event ID. It distinguishes itself from feed/search by explaining it returns the same normalized event plus analysis products only available in a single-event response. It also explicitly limits to USGS events, which differentiates it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies when to use: when you already have an event ID from feed/search results, and it explicitly says this is USGS-only, so not for EMSC events. It doesn't explicitly say 'use this instead of search when you have an ID', but the context of 'Event IDs appear in the 'id' field of earthquake_get_feed and earthquake_search results' and 'returns the same normalized event a search result carries' makes the use case clear. It could be more explicit about alternatives, but it's sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.7/5.0
Disambiguation5/5

Each tool serves a clear, distinct purpose: count for statistical queries, search for filtered record retrieval, feed for pre-computed real-time data, and get_event for per-event detail. Overlap between count and search is explicitly addressed with guidance on when to use each. No two tools appear interchangeable.

Naming Consistency5/5

All tools follow the consistent pattern of earthquake_ + verb (count, get_event, get_feed, search), making the action and resource unambiguous. The naming is uniform across all four tools, with no mixed conventions or vague verbs.

Tool Count5/5

With 4 tools, the surface is tightly scoped and each tool covers a necessary operation for the domain. This is well within the ideal 3-15 range and neither feels thin nor overloaded for an earthquake data server.

Completeness5/5

The tool set covers the core workflows: searching with rich filters, counting for statistics, retrieving detailed event info, and accessing real-time feeds. No significant gaps are apparent—the server supports both USGS and EMSC sources, and the read-only nature is appropriate for the domain.