AnCode666/nasa-mcp
NASA-MCP is an MCP server that allows LLMs to query data from various NASA APIs, providing access to astronomical data, space weather information, Earth imagery, and more.
Tools
Functions exposed to the LLM to take actions
get_astronomy_picture_of_day
Get NASA's astronomy picture of the day.
Args: date: Date of the image in YYYY-MM-DD format. If not specified, the current date is used. count: If specified, returns 'count' random images. Cannot be used with 'date'. thumbs: If True, returns the thumbnail URL for videos. If APOD is not a video, this parameter is ignored.
get_asteroids_feed
Get a list of asteroids based on their closest approach date to Earth.
Args: start_date: Start date for asteroid search in YYYY-MM-DD format. end_date: End date for asteroid search in YYYY-MM-DD format. The Feed date limit is only 7 Days. If not specified, 7 days after start_date is used.
get_asteroid_lookup
Look up a specific asteroid based on its NASA JPL ID.
Args: asteroid_id: Asteroid ID in the NASA JPL small body (SPK-ID) system.
browse_asteroids
Browse the asteroid dataset.
get_coronal_mass_ejection
Get coronal mass ejection (CME) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_geomagnetic_storm
Get geomagnetic storm (GST) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_solar_flare
Get solar flare (FLR) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_solar_energetic_particle
Get solar energetic particle (SEP) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_magnetopause_crossing
Get magnetopause crossing (MPC) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_radiation_belt_enhancement
Get radiation belt enhancement (RBE) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_hight_speed_stream
Get high speed stream (HSS) data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 30 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_wsa_enlil_simulation
Get WSA+Enlil simulation data.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 7 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date.
get_notifications
Get DONKI notifications.
Args: start_date: Start date in YYYY-MM-DD format. Defaults to 7 days before current date. end_date: End date in YYYY-MM-DD format. Defaults to current date. notification_type: Notification type. Options: all, FLR, SEP, CME, IPS, MPC, GST, RBE, report.
get_earth_imagery
Get Earth imagery from Landsat 8 satellite.
Args: lat: Latitude. lon: Longitude. date: Image date in YYYY-MM-DD format. If not specified, the most recent image is used. dim: Width and height of the image in degrees (0.025 degrees is approximately 2.7 km). cloud_score: Calculate the percentage of the image covered by clouds (currently not available).
get_earth_assets
Get information about available imagery assets for a specific location and date.
Args: lat: Latitude. lon: Longitude. date: Date in YYYY-MM-DD format. dim: Width and height of the image in degrees (0.025 degrees is approximately 2.7 km).
get_epic_imagery
Get images from the EPIC (Earth Polychromatic Imaging Camera).
Args: collection: Collection type. Options: natural, enhanced.
get_epic_imagery_by_date
Get images from the EPIC (Earth Polychromatic Imaging Camera) for a specific date.
Args: date: Date in YYYY-MM-DD format. collection: Collection type. Options: natural, enhanced.
get_epic_dates
Get available dates for EPIC images.
Args: collection: Collection type. Options: natural, enhanced.
get_exoplanet_data
Get data from NASA's Exoplanet Archive.
Args: query: Specific query to filter results using Exoplanet Archive syntax. Example: "pl_orbper > 300 and pl_rade < 2" table: Table to query. Common options: exoplanets (confirmed planets), cumulative (Kepler Objects of Interest), koi (subset of cumulative), tce (Threshold Crossing Events). format: Output format. Options: json, csv, xml, ipac. Default: json.
get_mars_rover_photos
Get photos from a Mars rover (Curiosity, Opportunity, Spirit). Specify either sol (Martian day) or earth_date (YYYY-MM-DD), but not both.
Args: rover_name: Name of the rover (curiosity, opportunity, spirit). sol: Martian sol (day number, starting from landing). Use if not using earth_date. earth_date: Earth date in YYYY-MM-DD format. Use if not using sol. camera: Filter by camera abbreviation (e.g., FHAZ, RHAZ, MAST, NAVCAM, PANCAM). See documentation for full list per rover. page: Page number for results (25 photos per page).
get_mars_rover_manifest
Get the mission manifest for a Mars rover (Curiosity, Opportunity, Spirit). Provides mission details like landing/launch dates, status, max sol/date, total photos, and photo counts per sol.
Args: rover_name: Name of the rover (curiosity, opportunity, spirit).
Prompts
Interactive templates invoked by user choice
No prompts
Resources
Contextual data attached and managed by the client