EMSC Earthquake Search (Latest Events with Filters)
emsc/search-earthquakes
Searches the EMSC-CSEM earthquake catalogue and returns the newest matching events as GeoJSON: origin time (UTC), latitude, longitude, depth in kilometres, magnitude and type, and the region name. A required limit of 1 to 100 events keeps each call to a short list, newest first by default. Optional filters: a start and end time, a latitude and longitude box, a depth range, a magnitude range, and the sort order. Records can be revised after publication. EMSC-CSEM data under CC BY 4.0, passed through unmodified and served by Eden Engine; not an official EMSC-CSEM product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.
Data source
Data from EMSC-CSEM (SeismicPortal, https://www.seismicportal.eu), licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Passed through unmodified. Served by Eden Engine; not an official EMSC-CSEM product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "emsc/search-earthquakes" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "emsc/search-earthquakes" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "emsc/search-earthquakes", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "emsc/search-earthquakes", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 20, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"limit"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "How many events to return, 1 to 100. With the default order these are the newest matching events."
},
"endtime": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\\.[0-9]+)?)?$",
"description": "Only events at or before this UTC time, in the same form as starttime."
},
"orderby": {
"enum": [
"time",
"time-asc",
"magnitude",
"magnitude-asc"
],
"type": "string",
"description": "Sort order: time is newest first (the service's own default), time-asc is oldest first, magnitude is largest first, magnitude-asc is smallest first."
},
"maxdepth": {
"type": "number",
"description": "Only events at most this deep, in kilometres."
},
"mindepth": {
"type": "number",
"description": "Only events at least this deep, in kilometres."
},
"starttime": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\\.[0-9]+)?)?$",
"description": "Only events at or after this UTC time, as 2026-10-19 or 2026-10-19T06:00:00, with no time zone suffix."
},
"maxlatitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Northern edge of a search box, in degrees."
},
"minlatitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Southern edge of a search box, in degrees. Leave all four box fields out for a worldwide search."
},
"maxlongitude": {
"type": "number",
"maximum": 360,
"minimum": -360,
"description": "Eastern edge of a search box, in degrees east."
},
"maxmagnitude": {
"type": "number",
"description": "Only events of at most this magnitude."
},
"minlongitude": {
"type": "number",
"maximum": 360,
"minimum": -360,
"description": "Western edge of a search box, in degrees east."
},
"minmagnitude": {
"type": "number",
"description": "Only events of at least this magnitude."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"type",
"features"
],
"properties": {
"type": {
"type": "string",
"description": "Always FeatureCollection."
},
"features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The SeismicPortal event id, for example 20261019_0000360."
},
"type": {
"type": "string"
},
"geometry": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"coordinates": {
"type": "array",
"items": {
"type": "number"
}
}
},
"description": "A Point. `coordinates` is longitude, latitude, then the depth with a negative sign.",
"additionalProperties": true
},
"properties": {
"type": "object",
"properties": {
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"mag": {
"type": "number"
},
"auth": {
"type": "string"
},
"time": {
"type": "string",
"description": "Origin time, UTC."
},
"unid": {
"type": "string"
},
"depth": {
"type": "number",
"description": "Depth in kilometres."
},
"evtype": {
"type": "string"
},
"magtype": {
"type": "string"
},
"source_id": {
"type": "string"
},
"lastupdate": {
"type": "string",
"description": "When the record last changed, UTC."
},
"flynn_region": {
"type": "string",
"description": "Region name."
},
"source_catalog": {
"type": "string"
}
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"description": "The matching events, in the requested order."
},
"metadata": {
"type": "object",
"properties": {
"count": {
"type": "integer"
}
},
"description": "`count` is the number of events in `features`.",
"additionalProperties": true
}
},
"description": "A GeoJSON FeatureCollection from the EMSC-CSEM event service.",
"additionalProperties": true
}