Skip to main content
Glama
kevinwuhoo

Google Maps Geocoding MCP Server

by kevinwuhoo

Google Maps Geocoding MCP Server

NPM Version NPM Downloads License Node.js Version GitHub Stars GitHub Issues

A Model Context Protocol (MCP) server that provides access to Google Maps Geocoding API. This server enables LLM clients like Claude Desktop and Cursor to perform address geocoding, reverse geocoding, and place ID lookups. The aim of this MCP is only the Geocoding API. This is because there isn't great support for connecting to many MCP servers yet in most tools.

Features

  • πŸ—ΊοΈ Forward Geocoding: Convert addresses to coordinates

  • πŸ“ Reverse Geocoding: Convert coordinates to addresses

  • 🏒 Place Geocoding: Convert Google Place IDs to addresses

  • 🌍 Multi-language Support: Get results in different languages

  • 🎯 Advanced Filtering: Filter by result types, location types, and components

  • πŸš€ Built on Official SDK: Uses Google's official @googlemaps/google-maps-services-js library will full TypeScript support

Prerequisites

  1. Google Maps API Key: Get one from the Google Cloud Console

  2. Node.js: Version 18 or higher

  3. Claude Desktop or Cursor (or another MCP-compatible client)

Setup with MCP Clients

Claude Desktop

Edit your Claude Desktop config file:

Platform

Config File Location

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

{ "mcpServers": { "google-maps-geocoding": { "command": "npx", "args": ["google-maps-geocoding-mcp"], "env": { "GOOGLE_MAPS_API_KEY": "your_api_key_here" } } } }

Then restart Claude Desktop and ask Claude to geocode an address!

Cursor

Add to your Cursor settings (Settings β†’ Extensions β†’ MCP Servers):

{ "mcp.servers": [ { "name": "google-maps-geocoding", "command": "npx", "args": ["google-maps-geocoding-mcp"], "env": { "GOOGLE_MAPS_API_KEY": "your_api_key_here" } } ] }

Test the integration using the AI chat!

Usage Examples

Forward Geocoding (Address β†’ Coordinates)

Ask your AI client:

"Geocode the address '1600 Amphitheatre Parkway, Mountain View, CA'"

Reverse Geocoding (Coordinates β†’ Address)

Ask your AI client:

"What address is at coordinates 37.4224764, -122.0842499?"

Place Geocoding (Place ID β†’ Address)

Ask your AI client:

"Get the address for Google Place ID 'ChIJd8BlQ2BZwokRAFUEcm_qrcA'"

Advanced Usage

With component filtering:

"Find 'Main Street' in San Francisco, CA, US"

With language preferences:

"Geocode 'Champs-Γ‰lysΓ©es' in French"

With regional biasing:

"Find restaurants near coordinates 37.7749, -122.4194 in the US region"

Common Issues

MCP Server not connecting:

  • Verify Node.js version is 18+

  • Check your MCP client configuration

API key errors:

  • Verify your API key is correct

  • Check that the Geocoding API is enabled in Google Cloud Console

  • Ensure API key restrictions allow your usage

Debug Mode

Enable debug logging by setting:

LOG_LEVEL=debug npx google-maps-geocoding-mcp

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for development setup, guidelines, and how to submit changes.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kevinwuhoo/google-maps-geocoding-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server