Atlas / MCP servers / pipeworx-io / mcp-planetary-computer

mcp-planetary-computerSAFE

mcp/pipeworx-io/mcp-planetary-computer

Earth-observation imagery catalogue from Microsoft's Planetary Computer — search its open satellite and environmental collections (Sentinel, Landsat, NAIP, Daymet, ERA5, biodiversity) by area and date and get item ids, footprints, dates and asset URLs.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
2 2r · 0w · 0d
Transport
stdio · streamable-http
License
MIT
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Earth-observation imagery catalogue from Microsoft's Planetary Computer — search its open satellite and environmental collections (Sentinel, Landsat, NAIP, Daymet, ERA5, biodiversity) by area and date and get item ids, footprints, dates and asset URLs.

Part of Pipeworx — an MCP gateway connecting AI agents to 1683+ live data sources.

Tools

  • planetary_computer_collections(contains?, prefix?, limit?) — the datasets in

the catalogue with licence, extent and date range. Call this first: search refuses a query that names no collection.

  • planetary_computer_collection(collection_id) — one dataset in full,

including the asset keys (bands) its items carry.

  • planetary_computer_search(collections, bbox?, datetime?, ids?, limit?, max_assets?)

— which scenes cover an area on given dates, with cloud cover and per-band asset URLs.

Auth

Keyless for metadata. Asset BYTES are a separate step: most collections require a short-lived read token from https://planetarycomputer.microsoft.com/api/sas/v1/token/{collection} (itself keyless, ~1 hour) appended to the href. The href alone is not a working download link and reads like a dead one if you try it cold.

Data sources

  • — STAC API 1.0.

Shared client: shared/src/stac.ts (stacCollections / stacCollection / stacSearch), also used by earth-search, copernicus-dataspace and meteoswiss. Fix paging or an error message there and all four improve.

Traps

  • POST /search with no collections answers **HTTP 422 `collection is

required** — a bare string naming no fix. The shared client converts it into a message that names planetarycomputercollections`.

  • Collection ids are per-catalogue. sentinel-2-l2a here is

sentinel-2-c1-l2a on Earth Search. Passing a sibling catalogue's id returns an empty result, not an error.

  • GET /collections pages; the shared client foll
Read from source at commit 2a44417e2c77OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add mcp-planetary-computer -- npx -y @pipeworx/[email protected]
claude-desktop
{
  "mcpServers": {
    "mcp-planetary-computer": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/[email protected]"
      ]
    }
  }
}
03

Exposed tools (2)

2 read · 0 write · 0 destructive.

ToolRiskDescription
planetary_computer_collectionsreadList the Earth-observation collections (datasets) in Microsoft
planetary_computer_searchreadSearch Planetary Computer satellite imagery and environmental data by area and date, returning item ids, acquisition datetimes, footprints, cloud cover and per-band asset URLs. AUTHORITATIVE for
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (2 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (1)

LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@modelcontextprotocol/sdk, tsx, typescript, @cloudflare/workers-types
Why it matters. 4 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 2a44417e2c77full audit observations/trust-audit/mcp-server/pipeworx-io__mcp-planetary-computer.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-112a44417e2c77SAFEB89first audit
06

Questions

What is the mcp-planetary-computer MCP server?

Earth-observation imagery catalogue from Microsoft's Planetary Computer — search its open satellite and environmental collections (Sentinel, Landsat, NAIP, Daymet, ERA5, biodiversity) by area and date and get item ids, footprints, dates and asset URLs.

What tools does mcp-planetary-computer expose?

2 in total: 2 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is mcp-planetary-computer safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does mcp-planetary-computer need?

No credential environment variables were found in its source, so it appears to need none.

How does mcp-planetary-computer run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as @pipeworx/mcp-planetary-computer at 0.1.1.

How current is this page?

The grade is for one exact copy of the source (2a44417e2c77), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement