About MapRouter
MapRouter is an MCP server for coding agents that need to add maps to applications. It combines geocoding, time-zone lookup and MapLibre snippets with prepaid usage controls that agents cannot increase.
Key features
- 01Create publishable and secret keys
- 02Forward and reverse geocoding
- 03Place autocomplete and time zones
- 04Generate MapLibre snippets
- 05View usage and lower key budgets
Use cases
- 01Add a MapLibre map to an app
- 02Convert addresses to coordinates
- 03Check a location's time zone
MCP support
Provides mapping and key-management tools to MCP clients through a hosted HTTP endpoint or a locally run server.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.maprouter.dev/mcpclaude mcp add --transport http dev-maprouter https://mcp.maprouter.dev/mcp{"mcpServers":{"dev-maprouter":{"type":"http","url":"https://mcp.maprouter.dev/mcp"}}}Open in Cursor{"servers":{"dev-maprouter":{"type":"http","url":"https://mcp.maprouter.dev/mcp"}}}Open in VS Code{"mcpServers":{"dev-maprouter":{"type":"http","url":"https://mcp.maprouter.dev/mcp"}}}{"mcpServers":{"dev-maprouter":{"serverUrl":"https://mcp.maprouter.dev/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMEMapRouter MCP server
Maps your agent can set up, and a bill that can't run away.
This MCP server lets a coding agent add a working map to an app: it creates MapRouter keys, geocodes addresses, and writes MapLibre code for HTML, React, Vue or Svelte. MapRouter is prepaid, so the agent can read usage and lower budgets but can never add credits or raise a budget.
Use the hosted server (recommended)
No key to copy: it signs you in with GitHub.
claude mcp add --transport http maprouter https://mcp.maprouter.dev/mcp
Claude Code plugin
This repo is also a Claude Code plugin marketplace. The plugin adds the hosted server and an
add-a-map skill:
/plugin marketplace add maprouter-dev/maprouter-mcp
/plugin install maprouter@maprouter
Run it locally
For clients that only run local servers. (The npm package is not published yet; until then,
clone this repo and point your client at node src/stdio.ts.) Create a secret key at https://app.maprouter.dev.
{
"mcpServers": {
"maprouter": {
"command": "npx",
"args": ["-y", "maprouter-mcp"],
"env": { "MAPROUTER_SECRET_KEY": "mr_sk_..." }
}
}
}
Requires Node 22.18 or later.
Tools
| Tool | What it does | Cost |
|---|---|---|
setup_project | Creates a publishable key (browser, origin-locked) and a secret key, returns env lines | Free |
geocode | Address or place to coordinates | 10 credits |
reverse_geocode | Coordinates to address | 10 credits |
autocomplete | Search-as-you-type suggestions | 2 credits |
timezone | IANA zone, UTC offset and DST at a point | 1 credit |
get_map_snippet | Working MapLibre code with markers | Free |
check_usage | Balance, free quota and key caps | Free |
set_key_budget | Lowers a key's daily or monthly cap (never raises) | Free |
Map data © OpenStreetMap contributors.
Use it as a library
import { MapRouterClient, createServer, handleMcpRequest } from 'maprouter-mcp';
const client = new MapRouterClient({ key: process.env.MAPROUTER_SECRET_KEY! });
// Any web-standard server: Workers, Deno, Bun, Node 22+.
export default { fetch: (request: Request) => handleMcpRequest(request, client) };
Licence
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.