get_positions
Pack: n2yo · Endpoint: https://gateway.pipeworx.io/n2yo/mcp
Track where a satellite is right now (or in the next few seconds): get its live latitude, longitude, altitude, and look-angles (azimuth/elevation) from an observer on Earth. Use this to answer “where is the ISS right now?” (NORAD id 25544) or to locate any satellite by NORAD id. Example: get_positions({ norad_id: 25544, lat: 40.71, lon: -74.0 }).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
norad_id | number | yes | NORAD catalog id of the satellite, e.g. 25544 for the ISS, 20580 for Hubble. |
lat | number | yes | Observer latitude in decimal degrees. |
lon | number | yes | Observer longitude in decimal degrees. |
altitude | number | no | Observer altitude in meters above sea level (default 0). |
seconds | number | no | Number of future seconds of positions to predict (default 2, max 300). |
_apiKey | string | no | Optional — your own N2YO API key for higher limits; omit to use the shared Pipeworx key. |
Example call
Arguments
{
"norad_id": 25544,
"lat": 40.71,
"lon": -74
}
curl
curl -X POST https://gateway.pipeworx.io/n2yo/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_positions","arguments":{"norad_id":25544,"lat":40.71,"lon":-74}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('get_positions', {
"norad_id": 25544,
"lat": 40.71,
"lon": -74
});
More examples
{
"norad_id": 20580,
"lat": 51.5,
"lon": 0,
"altitude": 100,
"seconds": 60
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"n2yo": {
"url": "https://gateway.pipeworx.io/n2yo/mcp"
}
}
}
See Getting Started for client-specific install steps.