Asteroid and Comet Close Approaches to Earth by Date Window (NASA JPL)
jplssd/close-approaches
Close approaches of asteroids and comets to Earth in a date window, soonest first: for each the object designation and full name, the close-approach time (TDB), the nominal, minimum and maximum approach distance in astronomical units (1 au is about 149.6 million km; the Moon is about 0.00257 au), the relative velocity and the velocity at infinity in km/s, the time uncertainty, and the absolute magnitude H (smaller is larger; H 22 is roughly 140 m). Filter by a maximum distance in au (default 0.05), an optional maximum H, and a limit of 1 to 100 (default 20). Give dates as YYYY-MM-DD; the start can also be now and the end a number of days ahead such as +30. Also returns the total number of matches. NASA/JPL Solar System Dynamics data, served by Eden Engine; not an official NASA or JPL 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 $0.50.
Data source
NASA/JPL Solar System Dynamics
Source: NASA/JPL Solar System Dynamics, Small-Body Database APIs (https://ssd-api.jpl.nasa.gov). U.S. government data. Served by Eden Engine; not an official NASA or JPL 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: "jplssd/close-approaches" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "jplssd/close-approaches" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "jplssd/close-approaches", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "jplssd/close-approaches", 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 26, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"dateMin",
"dateMax"
],
"properties": {
"hMax": {
"type": "number",
"maximum": 40,
"minimum": 0,
"description": "Largest absolute magnitude H to include; a lower value keeps only larger objects. Leave out for all sizes."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Most approaches to return, 1 to 100. Default 20."
},
"dateMax": {
"type": "string",
"pattern": "^(?:\\+\\d{1,4}|\\d{4}-\\d{2}-\\d{2})$",
"description": "End of the window: YYYY-MM-DD, or days ahead of the start as +30."
},
"dateMin": {
"type": "string",
"pattern": "^(?:now|\\d{4}-\\d{2}-\\d{2})$",
"description": "Start of the window: YYYY-MM-DD, or now."
},
"distMax": {
"type": "number",
"default": 0.05,
"maximum": 1,
"minimum": 0.0001,
"description": "Largest approach distance to include, in astronomical units. Default 0.05 (about 19 Moon distances)."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"count",
"total",
"approaches"
],
"properties": {
"count": {
"type": "integer",
"description": "Approaches in this answer."
},
"total": {
"type": "integer",
"description": "Approaches matching the window before the limit."
},
"approaches": {
"type": "array",
"items": {
"type": "object",
"required": [
"designation",
"closeApproachTime",
"distanceAu"
],
"properties": {
"orbitId": {
"type": [
"string",
"null"
],
"description": "Orbit solution identifier."
},
"fullName": {
"type": [
"string",
"null"
],
"description": "Full name with designation."
},
"distanceAu": {
"type": "number",
"description": "Nominal approach distance in astronomical units."
},
"julianDate": {
"type": [
"number",
"null"
],
"description": "Close-approach time as a Julian date (TDB)."
},
"designation": {
"type": "string",
"description": "Object designation, for example 2026 TT3."
},
"distanceMaxAu": {
"type": [
"number",
"null"
],
"description": "Maximum plausible approach distance, au."
},
"distanceMinAu": {
"type": [
"number",
"null"
],
"description": "Minimum plausible approach distance, au."
},
"timeUncertainty": {
"type": [
"string",
"null"
],
"description": "3-sigma uncertainty of the approach time, for example < 00:01 or 03:12."
},
"absoluteMagnitude": {
"type": [
"number",
"null"
],
"description": "Absolute magnitude H; smaller means larger."
},
"closeApproachTime": {
"type": "string",
"description": "Close-approach time (TDB) as YYYY-Mon-DD HH:MM."
},
"relativeVelocityKmS": {
"type": [
"number",
"null"
],
"description": "Velocity relative to Earth at approach, km/s."
},
"velocityInfinityKmS": {
"type": [
"number",
"null"
],
"description": "Velocity relative to Earth at infinity, km/s."
}
},
"additionalProperties": false
},
"description": "Approaches soonest first; empty when nothing matches."
}
},
"additionalProperties": false
}