Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Planetary Computer Server

FreeNot checked

A Python MCP server that provides unified access to satellite and geospatial data through natural language queries, with automatic place name geocoding and supp

GitHubEmbed

About

A Python MCP server that provides unified access to satellite and geospatial data through natural language queries, with automatic place name geocoding and support for raster, vector, and Zarr formats.

README

A Python implementation of the Planetary Computer MCP server, providing unified access to satellite and geospatial data through natural language queries.

Sample Outputs


Sentinel-2
Alps

Sentinel-2
Miami

NAIP
Seattle

NAIP
Los Angeles

HLS L30
Los Angeles

MODIS
Bay Area

Sentinel-1 SAR
Miami

Copernicus DEM
Miami

ESA WorldCover
Alps

IO LULC
Iowa

MS Buildings
Vector Data

TerraClimate PET
Zarr Preview

GridMET Climate Data
Heatmap Animation

TerraClimate Data
Heatmap Animation

Features

  • Unified Interface: Single download_data tool that automatically detects datasets from natural language queries
  • Natural Language Geocoding: Automatically converts place names (e.g., "San Francisco", "the Alps", "Amazon rainforest") to geospatial bounding box coordinates using the Nominatim geocoding service—no need to manually specify coordinates
  • Multi-format Support: Raster (GeoTIFF), Vector (GeoParquet), and Zarr data
  • Automatic Visualization: Generate RGB/JPEG previews for LLM analysis
  • Fast Downloads: Uses odc-stac for efficient COG access

Installation

uv sync

Usage

As MCP Server

python -m planetary_computer_mcp.server

Direct API Usage

from planetary_computer_mcp.tools.download_data import download_data

# Download Sentinel-2 data for San Francisco
result = download_data(
    query="sentinel-2 imagery",
    aoi="San Francisco",
    time_range="2024-01-01/2024-01-31"
)

print(f"Raw data: {result['raw']}")
print(f"Visualization: {result['visualization']}")

Tools

download_data

Unified tool for raster, DEM, land cover, and climate data.

Parameters:

  • query: Natural language query (e.g., "sentinel-2", "elevation data")
  • aoi: Bounding box [W,S,E,N] or place name
  • time_range: ISO8601 datetime range
  • max_cloud_cover: Maximum cloud cover (optical data)

Returns:

  • Raw GeoTIFF/Zarr/Parquet file
  • RGB/JPEG visualization
  • Metadata

download_geometries

Tool for vector/building data.

Parameters:

  • collection: Collection ID (e.g., "ms-buildings")
  • aoi: Bounding box or place name
  • limit: Maximum features

Returns:

  • GeoParquet file
  • Map visualization
  • Feature count

Supported Datasets

See collections.md for the complete list of supported datasets.

Development

Setup

uv sync --dev

Testing

uv run pytest

Linting/Formatting

uv run pre-commit run --all-files

Architecture

src/
├── core/           # Core utilities
│   ├── stac_client.py    # STAC search wrapper
│   ├── geocoding.py      # Place name → bbox
│   ├── collections.py    # Dataset metadata
│   ├── raster_utils.py   # odc-stac helpers
│   ├── vector_utils.py   # DuckDB helpers
│   ├── visualization.py  # Matplotlib viz
│   └── zarr_utils.py     # Xarray Zarr helpers
├── tools/          # MCP tools
│   ├── download_data.py
│   └── download_geometries.py
└── server.py       # MCP server entry point

License

Apache 2.0 License

from github.com/isaaccorley/planetary-computer-mcp

Install Planetary Computer Server in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install planetary-computer-mcp-server

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add planetary-computer-mcp-server -- uvx planetary-computer-mcp

FAQ

Is Planetary Computer Server MCP free?

Yes, Planetary Computer Server MCP is free — one-click install via Unyly at no cost.

Does Planetary Computer Server need an API key?

No, Planetary Computer Server runs without API keys or environment variables.

Is Planetary Computer Server hosted or self-hosted?

A hosted option is available: Unyly runs the server in the cloud, no local setup required.

How do I install Planetary Computer Server in Claude Desktop, Claude Code or Cursor?

Open Planetary Computer Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Planetary Computer Server with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs