get_mars_photos
Pack: nasa · Endpoint: https://gateway.pipeworx.io/nasa/mcp
“Show me photos from the Mars rover” / “Perseverance images from sol 1000” / “latest pictures from Mars” — raw images from NASA’s Perseverance rover (Mars 2020), straight off the mars.nasa.gov feed. Filter by Martian sol and by camera. Returns image URLs at four resolutions, the sol, the UTC and Mars-local capture times, and the camera instrument. Keyless. Covers Perseverance only — Curiosity, Opportunity and Spirit have no live public image feed. Example: get_mars_photos({ sol: 1000, camera: “NAVCAM_LEFT” })
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
sol | number | no | Martian sol (mission day) to retrieve images from, e.g. 1000. Perseverance landed on sol 0 (2021-02-18) and is past sol 1900. Omit for the most recent images. |
camera | string | no | Camera instrument, exact: “NAVCAM_LEFT”, “NAVCAM_RIGHT”, “FRONT_HAZCAM_LEFT_A”, “FRONT_HAZCAM_RIGHT_A”, “REAR_HAZCAM_LEFT”, “REAR_HAZCAM_RIGHT”, “MCZ_LEFT”/“MCZ_RIGHT” (Mastcam-Z), “SHERLOC_WATSON”, “SUPERCAM_RMI”, “SKYCAM”, “PIXL_MCC”, “CACHECAM”. Short forms FHAZ/RHAZ/NAVCAM/MAST are accepted. Optional. |
limit | number | no | Max images to return (default 20, max 100). |
Example call
Arguments
{
"sol": 1000,
"camera": "NAVCAM_LEFT"
}
curl
curl -X POST https://gateway.pipeworx.io/nasa/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_mars_photos","arguments":{"sol":1000,"camera":"NAVCAM_LEFT"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('get_mars_photos', {
"sol": 1000,
"camera": "NAVCAM_LEFT"
});
More examples
{
"sol": 1500,
"limit": 10
}
Response shape
| Field | Type | Description |
|---|---|---|
rover | string | |
sol | null | |
camera | null | |
total_matching | number | |
count | number | Total number of photos retrieved |
photos | array | List of Mars rover photos (up to 20) |
Full JSON Schema
{
"type": "object",
"properties": {
"rover": {
"type": "string"
},
"sol": {
"type": "null"
},
"camera": {
"type": "null"
},
"total_matching": {
"type": "number"
},
"count": {
"type": "number",
"description": "Total number of photos retrieved"
},
"photos": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique photo identifier"
},
"sol": {
"type": "number",
"description": "Martian sol (day) when photo was taken"
},
"title": {
"type": "string"
},
"camera": {
"type": "string",
"description": "Camera abbreviation (FHAZ, RHAZ, MAST, etc.)"
},
"filter": {
"type": "string"
},
"earth_date": {
"type": "string",
"description": "Earth date when photo was taken in YYYY-MM-DD format"
},
"mars_time": {
"type": "string"
},
"image_url": {
"type": "string",
"description": "URL to the photo image"
},
"full_res_url": {
"type": "string"
},
"thumbnail_url": {
"type": "string"
},
"page_url": {
"type": "string"
},
"credit": {
"type": "string"
}
}
},
"description": "List of Mars rover photos (up to 20)"
}
}
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"nasa": {
"url": "https://gateway.pipeworx.io/nasa/mcp"
}
}
}
See Getting Started for client-specific install steps.