Planet MCP
Enables AI agents to interact with the Planet API for satellite imagery ordering, subscriptions, and data management through natural language.
README
Planet MCP
planet-mcp is a local MCP server powered by the Planet SDK. It allows an AI agent/chat to interact with the Planet API.
To get started with your preferred AI agent, find it in the Usage section below.
Beta warning
This is experimental software. This MCP service will invoke the Planet SDK/CLI on your behalf. It can create and modify orders, subscriptions, and more. Do not disable tool approvals and always carefully review tool prompts before approving them. Use at your own risk.
Tools may be added, removed or altered based on testing/feedback.
Reminder: MCP servers and tools will increase the number of tokens used during interactions with your LLM provider.
We would love to hear back from you after using this, if you have a feature request or find something isn't working please file a Github issue for us! Thanks
Usage
Prerequisites
- Python 3.11 or higher
To install the Planet MCP server, use pip or your preferred package manager:
pip install planet-mcp
This will also install the planet SDK.
Authentication
You must authenticate your Planet account before using the local MCP server. You can do this by running:
planet auth login
NOTE
if you have PL_API_KEY set globaly, you should run unset PL_API_KEY and then planet auth reset and planet auth login again.
Supported AI assistants
The following AI agents have been tested with the Planet local MCP. For other agents, refer to their documentation for adding a custom MCP server (the Planet local MCP uses stdio transport).
Claude Code
To connect with Claude Code, run the following command:
claude mcp add planet planet-mcp
Claude Desktop
To connect using Claude Desktop, add the following to your claude_desktop_config.json file (see MCP documentation for more details):
{
"mcpServers": {
"planet": {
"type": "stdio",
"command": "planet-mcp"
}
}
}
Gemini CLI
To connect using Gemini CLI, add the following to your ~/.gemini/settings.json file:
"mcpServers": {
"planet": {
"command": "planet-mcp",
"description": "Planet MCP Server",
"timeout": 30000,
"trust": false
}
}
GitHub Copilot
To connect using GitHub Copilot, configure the mcp.json file (see VSCode docs) with the following configuration:
{
"servers": {
"planet": {
"type": "stdio",
"command": "planet-mcp"
}
}
}
Customizing the tools
If you'd like, you can enable or disable specific tools in the MCP server. For example, if you're only working with the orders tooling: You can start the server with just the that enabled:
--include-tags=orders
If you want to keep the defaults, but disable a certain tool, you can: --exclude-tags=destinations
In order to disable more than one tool you can provide a comma separated list like:
--exclude-tags=destinations,mosaics
By default, we have disabled download tools and the subscriptions tools, as we have found those tools don't work very well with LLMs at the moment.
Example queries
- Does Planet have any recent imagery over Puget Sound?
- List my feature collections
- Order me the latest high-res imagery over the Netherlands
- Create a PlanetScope order with the first item in my Netherlands Feature Collection.
Troubleshooting
Unable to launch planet-mcp (ENOENT, No such file or directory, etc.):
This is likely due to the planet-mcp package being installed to a different Python environment than the one your AI agent is using. The easiest way to resolve this is to run which planet-mcp after installing the package, and then copy the full path to your AI agent's MCP configuration. For example, if which planet-mcp returns /home/user/.local/share/virtualenvs/test/bin/planet-mcp, your config file would look like:
{
"servers": {
"planet": {
"command": "/home/user/.local/share/virtualenvs/test/bin/planet-mcp"
}
}
}
Local dev
Prerequisites
- python (>= 3.11) + uv
- npx + friends (node >= 20) (to run inspector, if desired)
With Makefile
make dev-up- Optional,
make inspector
Without Makefile
-
Create and activate virtual environment using uv:
uv venvsource .venv/bin/activate -
Install dependencies using uv:
uv pip install -e '.' -
Run mcp server
planet-mcp
Optional run the inspector with
uv run fastmcp dev src/planet_mcp/main.py
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.