Repository navigation
v1.2.0
A migration release. APOD and DONKI moved to new upstream APIs (the old api.nasa.gov endpoints no longer return data), and nine tools were added. It is published as a minor version, but nasa_apod and nasa_donki parameters and output changed. Review the list below before upgrading, or pin 1.1.0; note that APOD and DONKI no longer work in 1.1.0.
Breaking changes and migration
nasa_apoduses the NASA Science APOD API (science.nasa.gov/wp-json/wp/v2/apod-basic). The api.nasa.gov/planetary/apodendpoint returns HTTP 503/504 and the api.nasa.gov catalog says the legacy API goes offline on 2026-12-01. The new API needs no key, sonasa_apod, thenasa://apod/imageresource template and the APOD prompts work withoutNASA_API_KEY.count(random pictures) andthumbsare retired: the new API has no random mode or thumbnail option. Calls that pass them get a migration message.datedefaults to the latest published picture. Dates before 1995-06-16 or in the future are rejected before any request, and a day without a picture reports HTTP 404 clearly.- Titles, credits and explanations are plain text (the new API returns HTML). Video entries report the video URL and a still frame. Embedded images are 1024-pixel-wide renditions when the image host offers them.
- The
nasa://apod/imageresource returns one entry object, without the upstreambasic_htmlpage. - The
nasa/get-astronomy-pictureandapod-dailyprompts no longer takecountorthumbs.
nasa_donkiuses the NASA CCMC DONKI API (ccmc.gsfc.nasa.gov/DONKI-API/get). CCMC moved the public API there on 2026-09-30, andapi.nasa.gov/DONKI/*now redirects to a CCMC news page instead of returning data. The new API needs no key, sonasa_donkiworks withoutNASA_API_KEY. CCMC kept the parameters and record formats but now rejects ranges longer than 30 days. The tool checks this before calling, and with onlyendDateit requests the 30 days before it (CCMC would count back from today and fail).nasa_donkireturns one line per event by default (response_mode: "compact"), with the key fields for each type: flare class and peak time, CME speed, cone angle and modeled Earth arrival, the highest Kp of a geomagnetic storm, and so on.response_mode: "raw"returns the full records as before, andlimitkeeps the most recent N events. The retained resource always has the full records. A month of CMEs is about 21 KB compact; the full records (about 270 KB) exceeded the output limit.
New tools
nasa_insight_weather: InSight Mars weather. Historical data only: the feed is frozen at sols 675-681 (October 2020). NeedsNASA_API_KEY.nasa_tle: satellite two-line element sets by NORAD catalog number or name search (tle.ivanstanojevic.me, with CelesTrak data).nasa_ssc_observatoriesandnasa_ssc_locations: the Satellite Situation Center observatory list and spacecraft positions in GEO, GM, GSE, GSM, SM and GEI coordinates. Long ranges are thinned automatically to keep the output bounded.nasa_techport: TechPort project search and project details. These endpoints need no token.nasa_techtransfer: NASA patents, issued patents, software and spinoffs from technology.nasa.gov (the api.nasa.gov/techtransferroute only serves a help page).nasa_trek_layersandnasa_trek_tile: Mars, Moon and Vesta Trek layer search and WMTS tiles, addressed by zoom/row/column or by latitude/longitude.jpl_mission_design: the JPL Small-Body Mission Design API in object mode and accessible-targets mode. Porkchop-plot maps (mode M) and mission-extension searches (mode T) are not exposed: their responses are too large or too slow for a tool call.
Fixes
- Upstream error messages include the
{"response":{"message":...}}bodies returned by the TLE API.
Release
- npm:
@programcomputer/nasa-mcp-server@1.2.0(latest), integritysha512-qQfvsOZhyN2R3LK8EpTgt6Wl8n0exAhEVQ+qfYTXwMokUFX4VgLJN+28QYF/8DUkkaiRE2iNQDTVXdByLnrI0A== - Commit: bcb5e3d (signed tag
v1.2.0) - Release run: https://github.com/ProgramComputer/NASA-MCP-server/actions/runs/36762436384
- Verify release run: https://github.com/ProgramComputer/NASA-MCP-server/actions/runs/36763484415
- Provenance: https://search.sigstore.dev/?logIndex=3023794500