Interactive Map MCP Server
Utilizes CesiumJS to provide 3D globe rendering capabilities, including interactive perspective controls, zooming, and camera navigation to specific coordinates.
Integrates with OpenStreetMap for geocoding services via the Nominatim API and provides interactive map imagery using free OSM tiles.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Interactive Map MCP ServerShow me the Eiffel Tower on the map"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Example: Interactive Map

Interactive 3D globe viewer using CesiumJS with OpenStreetMap tiles. Demonstrates geocoding integration and full MCP App capabilities.
MCP Client Configuration
Add to your MCP client configuration (stdio transport):
{
"mcpServers": {
"map": {
"command": "npx",
"args": [
"-y",
"--silent",
"--registry=https://registry.npmjs.org/",
"@modelcontextprotocol/server-map",
"--stdio"
]
}
}
}Local Development
To test local modifications, use this configuration (replace ~/code/ext-apps with your clone path):
{
"mcpServers": {
"map": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/map-server && npm run build >&2 && node dist/index.js --stdio"
]
}
}
}Related MCP server: Google Maps MCP Server
Features
3D Globe Rendering: Interactive CesiumJS globe with rotation, zoom, and 3D perspective
Geocoding: Search for places using OpenStreetMap Nominatim (no API key required)
OpenStreetMap Tiles: Uses free OSM tile server (no Cesium Ion token needed)
Dynamic Loading: CesiumJS loaded from CDN at runtime for smaller bundle size
Running
Install dependencies:
npm installBuild and start the server:
npm run start:http # for Streamable HTTP transport # OR npm run start:stdio # for stdio transportView using the
basic-hostexample or another MCP Apps-compatible host.
Tools
geocode
Search for places by name or address. Returns coordinates and bounding boxes.
{
"query": "Eiffel Tower"
}Returns up to 5 matches with lat/lon coordinates and bounding boxes.
show-map
Display the 3D globe zoomed to a bounding box.
{
"west": 2.29,
"south": 48.85,
"east": 2.3,
"north": 48.86,
"label": "Eiffel Tower"
}Defaults to London if no coordinates provided.
Architecture
Server (server.ts)
Exposes two tools:
geocode- Queries OpenStreetMap Nominatim API with rate limitingshow-map- Renders the CesiumJS globe UI at a specified location
Configures Content Security Policy to allow fetching tiles from OSM and Cesium CDN.
App (src/mcp-app.ts)
Vanilla TypeScript app that:
Dynamically loads CesiumJS from CDN
Initializes globe with OpenStreetMap imagery (no Ion token)
Receives tool inputs via the MCP App SDK
Handles camera navigation to specified bounding boxes
Key Files
server.ts- MCP server with geocode and show-map toolsmcp-app.html/src/mcp-app.ts- CesiumJS globe UIserver-utils.ts- HTTP server utilities
Notes
Rate limiting is applied to Nominatim requests (1 request per second per their usage policy)
The globe works in sandboxed iframes with appropriate CSP configuration
No external API keys required - uses only open data sources
This server cannot be deployed
Maintenance
Related MCP Connectors
Nominatim MCP — wraps OpenStreetMap Nominatim geocoding API (free, no auth)
Geocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data.
Geocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data.
Ask in plain English, get a rendered, shareable map from live public data. 24 geospatial tools.
Related MCP Servers
- AlicenseAqualityFmaintenanceA Model Context Protocol server that provides geocoding services by integrating with the Nominatim API, allowing AI assistants to perform location-based lookups.2481 npm3MIT
- FlicenseNot gradedqualityDmaintenanceEnables interaction with Google Maps services through the Model Context Protocol. Provides location-based functionality and mapping capabilities for AI agents.2-
- AlicenseAqualityAmaintenanceAI-powered 3D globe control via Model Context Protocol. Connect any MCP-compatible AI agent to CesiumJS — camera, layers, entities, spatial analysis through 19 natural language tools.33137MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to search, query, and manage ArcGIS Portal and Online content, feature layers, users, and groups via the Model Context Protocol.19MIT