cesium-mcp
AI-powered CesiumJS 3D globe control — 43 tools for camera, entities, layers, animation, and interaction via MCP protocol. Also available as a remote server via Streamable HTTP.
Cesium MCP
AI-Powered 3D Globe Control via Model Context Protocol
Connect any MCP-compatible AI agent to CesiumJS — camera, layers, entities, spatial analysis, all through natural language.
Demo
https://github.com/user-attachments/assets/8a40565a-fcdd-47bf-ae67-bc870611c908
Packages
| Package | Description | npm |
|---|---|---|
| cesium-mcp-bridge | Browser SDK — embeds in your CesiumJS app, receives commands via WebSocket | |
| cesium-mcp-runtime | MCP Server (stdio) — 58 tools (12 toolsets) + 2 resources, dynamic discovery | |
| cesium-mcp-dev | IDE MCP Server — CesiumJS API helper for coding assistants |
Architecture
┌──────────────┐ stdio ┌──────────────────┐ WebSocket ┌──────────────────┐
│ AI Agent │ ◄────────► │ cesium-mcp- │ ◄─────────► │ cesium-mcp- │
│ (Claude, │ MCP │ runtime │ JSON-RPC │ bridge │
│ Cursor…) │ │ (Node.js) │ │ (Browser) │
└──────────────┘ └──────────────────┘ └──────────────────┘
│
┌──────▼──────┐
│ CesiumJS │
│ Viewer │
└─────────────┘
Quick Start
1. Install the bridge in your CesiumJS app
npm install cesium-mcp-bridge
import { CesiumMcpBridge } from 'cesium-mcp-bridge';
const bridge = new CesiumMcpBridge(viewer, { port: 9100 });
bridge.connect();
2. Start the MCP runtime
npx cesium-mcp-runtime
3. Connect your AI agent
Add to your MCP client config (e.g. Claude Desktop):
{
"mcpServers": {
"cesium": {
"command": "npx",
"args": ["-y", "cesium-mcp-runtime"]
}
}
}
Now ask your AI: "Fly to the Eiffel Tower and add a red marker"
49 Available Tools
Tools are organized into 12 toolsets. Default mode enables 4 core toolsets (~31 tools). Set CESIUM_TOOLSETS=all for everything, or let the AI discover and activate toolsets dynamically at runtime.
i18n: Tool descriptions default to English. Set
CESIUM_LOCALE=zh-CNfor Chinese.
| Toolset | Tools |
|---|---|
| view (default) | flyTo, setView, getView, zoomToExtent, saveViewpoint, loadViewpoint, listViewpoints, exportScene |
| entity (default) | addMarker, addLabel, addModel, addPolygon, addPolyline, updateEntity, removeEntity, batchAddEntities, queryEntities, getEntityProperties |
| layer (default) | addGeoJsonLayer, listLayers, removeLayer, clearAll, setLayerVisibility, updateLayerStyle, getLayerSchema, setBasemap |
| interaction (default) | screenshot, highlight, measure |
| camera | lookAtTransform, startOrbit, stopOrbit, setCameraOptions |
| entity-ext | addBillboard, addBox, addCorridor, addCylinder, addEllipse, addRectangle, addWall |
| animation | createAnimation, controlAnimation, removeAnimation, listAnimations, updateAnimationPath, trackEntity, controlClock, setGlobeLighting |
| tiles | load3dTiles, loadTerrain, loadImageryService, loadCzml, loadKml |
| trajectory | playTrajectory |
| heatmap | addHeatmap |
| scene | setSceneOptions, setPostProcess |
| geolocation | geocode |
Relationship with CesiumGS official MCP servers: The
camera,entity-ext, andanimationtoolsets natively fuse capabilities from CesiumGS/cesium-mcp-server (Camera Server, Entity Server, Animation Server) into this project's unified bridge architecture. This means you get all official functionality plus additional tools — in a single MCP server, without running multiple processes.
Examples
See examples/minimal/ for a complete working demo.
Development
git clone https://github.com/gaopengbin/cesium-mcp.git
cd cesium-mcp
npm install
npm run build
Version Policy
Version format: {CesiumMajor}.{CesiumMinor}.{MCPPatch}
| Segment | Meaning | Example |
|---|---|---|
1.139 | Tracks CesiumJS version — built & tested against Cesium ~1.139.0 | 1.139.8 → Cesium 1.139 |
.8 | MCP patch — independent iterations for new tools, bug fixes, docs | 1.139.7 → 1.139.8 |
When CesiumJS releases a new minor version (e.g. 1.140), we will bump accordingly: 1.140.0.
License
관련 서버
Scout Monitoring MCP
스폰서Put performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
스폰서Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Lilith Shell
Execute terminal commands through a secure shell interface using an AI assistant.
Tripwire
Context injection for AI agents via MCP. Define path-based policies in YAML — when an agent reads a matching file, relevant knowledge is auto-injected. Prevents mistakes before they happen. Works with Claude Code, Cursor, and any MCP client.
cellrank-MCP
A natural language interface for single-cell RNA sequencing (scRNA-Seq) analysis using the CellRank toolkit.
Postman MCP Generator
A server providing JavaScript tools for making Postman API requests.
PHP MCP Server
Provides semantic PHP code analysis and refactoring tools, enabling AI assistants to perform safe, intelligent code transformations at the AST level.
Dify MCP HTTP Tools
Fetch and call tools via MCP over HTTP with SSE or Streamable transport. Supports configuration of multiple MCP services.
GemForge (Gemini Tools)
Integrates Google's Gemini for advanced codebase analysis, web search, and processing of text, PDFs, and images.
Matware E2E Runner
JSON-driven E2E test runner with parallel Chrome pool execution, visual verification, and 16 MCP tools.
Mobile Next
A platform-agnostic server for scalable mobile automation and development across iOS, Android, simulators, and emulators.
Graph Tools
An interactive graph analysis toolkit with web visualizations and AI-powered analysis capabilities.