MCPLow riskUnclaimed

Umbra open SAR archive

Search, preview, and measure Umbra open SAR from any MCP client. Umbra ships no search API.

reesehammerreesehammer/umbra-mcpUpdated Sep 2, 2026

server.json

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "name": "io.github.reesehammer/umbra-mcp",
  "description": "Search, preview, and measure Umbra open SAR from any MCP client. Umbra ships no search API.",
  "title": "Umbra open SAR archive",
  "repository": {
    "url": "https://github.com/reesehammer/umbra-py",
    "source": "github"
  },
  "version": "0.1.2",
  "packages": [
    {
      "registryType": "pypi",
      "registryBaseUrl": "https://pypi.org",
      "identifier": "umbra-py",
      "version": "0.1.2",
      "runtimeHint": "uvx",
      "transport": {
        "type": "stdio"
      },
      "runtimeArguments": [
        {
          "description": "The server ships inside the umbra-py distribution and needs its [mcp] extra, so the package uvx installs is not the bare identifier.",
          "value": "umbra-py[mcp]",
          "type": "named",
          "name": "--from"
        },
        {
          "description": "The console script to run from that distribution ([project.scripts] in pyproject.toml).",
          "value": "umbra-mcp",
          "type": "positional",
          "valueHint": "console_script"
        }
      ],
      "environmentVariables": [
        {
          "description": "Canopy API token. Set it and the same search tools query Umbra's authenticated commercial archive instead of the open bucket; leave it unset for the open data, which needs no credentials.",
          "isSecret": true,
          "name": "UMBRA_CANOPY_TOKEN"
        },
        {
          "description": "Path to a local catalog index (built with 'umbra index build' or fetched with 'umbra index fetch'). Without one the server walks the public bucket per search, which is correct but slow.",
          "format": "filepath",
          "name": "UMBRA_INDEX_DB"
        },
        {
          "description": "Enables the two opt-in model tools, describe_scene and narrate_change. Every other tool is deterministic and calls no model.",
          "isSecret": true,
          "name": "ANTHROPIC_API_KEY"
        },
        {
          "description": "Alternative provider for the same two model tools, and the encoder behind find_similar_text.",
          "isSecret": true,
          "name": "OPENAI_API_KEY"
        }
      ]
    }
  ],
  "_meta": {
    "io.modelcontextprotocol.registry/publisher-provided": {
      "command": "uvx --from 'umbra-py[mcp]' umbra-mcp",
      "documentation": "https://github.com/reesehammer/umbra-py#drive-it-from-an-ai-agent-mcp"
    }
  }
}

Permissions

DeclaredDetected
Runs code—python
Installs—pypi:umbra-py@0.1.2
Runs install scripts—None
NetworkNoneNone
Needs credentialsANTHROPIC_API_KEYOPENAI_API_KEYUMBRA_CANOPY_TOKENANTHROPIC_API_KEYOPENAI_API_KEYUMBRA_CANOPY_TOKEN
Outside the workspace—None
Agent tools—None

Checks

Low risk · Nothing worth a warning was found.

Not reviewed by a person · Checked by rules; the model review is not switched on yet.

Versions

  1. #10.1.2latestOct 7, 2026