Google Maps (archived)
The Google Maps MCP server is a stdio server from Anthropic's original reference collection, published on npm as @modelcontextprotocol/server-google-maps. It wraps Google Maps Platform endpoints (geocoding, place search, place details, directions, distance matrix, elevation) so an MCP client can call them as tools. The package is archived, npm marks it as no longer supported, and it refuses to start without a key.
How we started it
npx -y @modelcontextprotocol/server-google-mapsSkip it, unless you are willing to adopt an unmaintained package as your own code. We started it with a clean environment and it printed 'GOOGLE_MAPS_API_KEY environment variable is not set', then exited with code 1 before initialize completed, so we have no tool list and no Context Tax for it. Supply a key and it will very likely boot fine, since this was one of the well-worn reference servers; the cost is that npm itself now says version 0.6.2 is no longer supported, which means the next Places API deprecation is your problem to patch. For a thin HTTP wrapper you could vendor in an afternoon, that is a bad trade.
Use it if
Skip it if
The bill for your context window
The Context Tax line on this page is empty, and that emptiness is the result worth reading. A server that will not complete initialize without credentials cannot be surveyed, so its tools/list weight is unknown to us and to anyone else who did not pay Google first. For scale, most booting servers in this batch land near a couple of thousand estimated tokens (chars/4), and the heaviest of them, Notion, is an order of magnitude past that. A maps wrapper with a handful of endpoint-shaped tools would sit under the batch median comfortably; the schemas are latitude, longitude, radius and a query string. Token cost is not the reason to avoid this one.
Setup reality
One environment variable, GOOGLE_MAPS_API_KEY, is the entire gate, and the harness found it the hard way: our probe runs every server with no secrets, so the process wrote the missing-variable message to stderr and quit. Transport is stdio over npx, no OAuth, no callback URL, no config file. The real work happens in the Google Cloud console, where the key needs the Geocoding, Places, Directions, Distance Matrix and Elevation APIs enabled individually and a billing account attached; a key that works for one of those returns permission errors for the rest, which surfaces as a confusing tool failure rather than a startup failure. Restrict the key by API, because it sits unencrypted in your client config.
GOOGLE_MAPS_API_KEYQuestions people ask
Why does the Google Maps MCP server exit immediately?
It checks for GOOGLE_MAPS_API_KEY at startup and exits before responding to the MCP initialize request if the variable is absent. We measured that on 2026-08-19: stderr said the variable is not set and the process ended with exit code 1. Set the variable in your client's env block, not your shell.
Is this server still maintained?
No. It was moved to the archived section of the reference server repository, and npm prints a deprecation notice saying the package is no longer supported. Installs still work, but nobody is shipping fixes when a Google API changes underneath it.
What can I use instead?
Either a community-maintained Maps server that tracks the current Places API, or forty lines of your own tool code calling the endpoints you actually need. The second option is realistic here, because this wrapper's job is turning tool arguments into query strings.
Other apis servers we started
| Server | Vendor | Boots | Context tax |
|---|---|---|---|
| YouTube Transcript | community | ✓ | ~84 tokens |
How this page is made: the server is spawned as an unprivileged user with a clean environment and no credentials, then asked for its tools, resources and prompts over stdio. Token figures are estimates at four characters per token, not a tokenizer count. One run, one machine. Corrections: contact the desk.