Google Maps MCP Server Enhanced

Google Maps MCP Server Enhanced

Provides 14 comprehensive tools for geocoding, navigation, and visual mapping using Google Maps APIs. It also offers detailed environmental data including weather forecasts, air quality indices, and solar irradiance for location-based analysis and trip planning.

Category
Visit Server

README

Google Maps MCP Server Enhanced

A comprehensive Model Context Protocol (MCP) server that provides 14 powerful Google Maps tools for location services, visual mapping, weather data, and environmental information. Perfect for camping trip planning, outdoor research, location analysis, and any application requiring rich geographic data.

🌟 Features

πŸ—ΊοΈ Core Mapping (6 tools)

  • Geocoding: Convert addresses to coordinates
  • Reverse Geocoding: Convert coordinates to addresses
  • Places Search: Find businesses, landmarks, and points of interest
  • Place Details: Get comprehensive information about specific places
  • Distance Matrix: Calculate travel times and distances between multiple points
  • Directions: Get detailed turn-by-turn directions with multiple travel modes

πŸ“Έ Visual Mapping (2 tools)

  • Street View: Get panoramic street-level imagery with customizable viewing angles
  • Static Maps: Generate static map images in multiple styles (roadmap, satellite, terrain, hybrid) with markers

🌀️ Environmental Data (6 tools)

  • Weather: Current conditions and forecasts for trip planning
  • Air Quality: Air quality indices and pollutant data for outdoor activities
  • Solar: Solar irradiance data for solar power planning at campsites
  • Pollen: Pollen and allergy information for outdoor activities
  • Elevation: Elevation data for terrain analysis
  • Enhanced Routing: Advanced route planning with traffic awareness

🎯 Perfect For

  • πŸ•οΈ Camping & Outdoor Planning: Weather, terrain, and site analysis
  • πŸ” Research Projects: Location data gathering and environmental monitoring
  • πŸš— Travel Applications: Route planning with real-time conditions
  • πŸ“Š Data Analysis: Geographic data collection and visualization
  • 🏒 Business Applications: Location intelligence and market analysis

πŸ“‹ Prerequisites

  • Node.js (v18+)
  • Google Cloud Platform Account with billing enabled
  • Google Maps API Key with required APIs enabled

βš™οΈ Setup

1. Clone and Install

git clone https://github.com/yourusername/google-maps-mcp-server.git
cd google-maps-mcp-server
npm install

2. Google Cloud Setup

Enable these APIs in Google Cloud Console:

Required APIs:

  • Maps JavaScript API
  • Geocoding API
  • Places API
  • Directions API
  • Distance Matrix API
  • Elevation API
  • Maps Static API (for static map images)
  • Street View Static API (for street view images)

Environmental APIs (Optional but Recommended):

  • Air Quality API
  • Solar API
  • Pollen API
  • Weather API

3. Get API Key

  1. In Google Cloud Console β†’ APIs & Services β†’ Credentials
  2. Create API Key
  3. Restrict the key to the APIs listed above (recommended for security)

4. Build the Server

npm run build

πŸ”§ Claude Desktop Integration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "google-maps": {
      "command": "node", 
      "args": ["/path/to/google-maps-mcp-server/dist/index.js"],
      "env": {
        "GOOGLE_MAPS_API_KEY": "your-api-key-here"
      }
    }
  }
}

πŸ› οΈ Tool Reference

πŸ“ Location Services

Tool Purpose Example Use
maps_geocode Address β†’ Coordinates "Convert 'Yellowstone National Park' to lat/lng"
maps_reverse_geocode Coordinates β†’ Address "What's at coordinates 44.4280, -110.5885?"
maps_search_places Find nearby places "Find campgrounds near Yellowstone"
maps_place_details Detailed place info "Get hours, reviews, contact info for a campground"

πŸš— Navigation & Distance

Tool Purpose Example Use
maps_directions Turn-by-turn directions "Driving directions from Chicago to Yellowstone"
maps_distance_matrix Multi-point distances "Travel times between 5 potential campsites"
maps_routes Enhanced routing "Optimal route avoiding traffic and tolls"
maps_elevation Terrain elevation "Elevation profile for hiking trail"

πŸ“Έ Visual Mapping

Tool Purpose Example Use
maps_street_view Street-level imagery "See what the campground entrance looks like"
maps_static_map Static map images "Satellite view of research area with markers"

🌀️ Environmental Data

Tool Purpose Example Use
maps_weather Weather forecasts "5-day forecast for camping trip"
maps_air_quality Air pollution data "Air quality for outdoor activities"
maps_solar Solar irradiance "Solar panel potential at campsite"
maps_pollen Allergy information "Pollen levels for sensitive individuals"

πŸ’‘ Usage Examples

Trip Planning Workflow

# 1. Find potential campsites
maps_search_places(query="campgrounds near Glacier National Park")

# 2. Get detailed information
maps_place_details(place_id="ChIJ...")

# 3. Check weather conditions  
maps_weather(latitude=48.7596, longitude=-113.7870, forecast_days=5)

# 4. Get visual confirmation
maps_street_view(location="Going-to-the-Sun Road entrance")
maps_static_map(center="48.7596,-113.7870", maptype="terrain", zoom=12)

# 5. Plan optimal route
maps_directions(origin="Chicago, IL", destination="Glacier National Park")

Research Documentation

# Comprehensive location analysis
maps_geocode(address="Remote research location")
maps_elevation(locations=[{latitude: 45.123, longitude: -110.456}])
maps_air_quality(latitude=45.123, longitude=-110.456)
maps_static_map(center="45.123,-110.456", maptype="satellite", 
               markers=[{location: "45.123,-110.456", color: "red"}])

🎨 Visual Capabilities

Street View Options

  • Viewing Angles: Control heading (0-360Β°), pitch (-90Β° to 90Β°), field of view (10-120Β°)
  • Image Sizes: Up to 640x640 pixels
  • Location Input: Addresses or exact coordinates

Static Map Styles

  • Roadmap: Standard road map view
  • Satellite: Aerial imagery
  • Terrain: Physical features and elevation
  • Hybrid: Satellite imagery with road labels

Custom Markers

  • Colors: red, blue, green, purple, yellow, gray, orange, white
  • Labels: A-Z, 0-9 for identification
  • Multiple Points: Mark routes, waypoints, points of interest

πŸ”’ Security Best Practices

API Key Security

  • βœ… Use environment variables (never commit keys to code)
  • βœ… Restrict API key to only required APIs
  • βœ… Set up API key restrictions (HTTP referrers, IP addresses)
  • βœ… Monitor API usage in Google Cloud Console
  • βœ… Rotate keys regularly

Usage Monitoring

  • Set up billing alerts for unexpected usage
  • Monitor API quotas and rate limits
  • Use Cloud Monitoring for performance tracking

πŸ’° Cost Management

Free Tier Usage

  • Most APIs include generous free monthly quotas
  • Visual APIs (Street View, Static Maps) have free usage limits
  • Environmental APIs may have different pricing

Cost Optimization Tips

  • Cache results when appropriate (especially for static location data)
  • Use batch requests (Distance Matrix) for multiple calculations
  • Choose appropriate detail levels for Places API requests

πŸ› Troubleshooting

Common Issues

Error Cause Solution
REQUEST_DENIED API not enabled Enable required APIs in Google Cloud Console
INVALID_REQUEST Missing parameters Check required parameters for each tool
OVER_QUERY_LIMIT Quota exceeded Check billing and quota limits
ZERO_RESULTS No data available Try broader search criteria or different location

Debug Mode

export DEBUG=true
npm run dev

πŸ“Š API Quotas Reference

API Free Tier Limit Rate Limit
Geocoding 40,000/month 50 QPS
Places Search 2,500/month 10 QPS
Directions 2,500/month 50 QPS
Street View Static 28,000/month 100 QPS
Static Maps 28,000/month 100 QPS

Check Google's current pricing for up-to-date information

πŸš€ Running the Server

# Development mode with auto-rebuild
npm run dev

# Production mode
npm run build && npm start

πŸ—οΈ Architecture

  • TypeScript: Full type safety and modern JS features
  • Modular Design: Organized by functionality (handlers, tools, types)
  • Error Handling: Comprehensive validation and error responses
  • Extensible: Easy to add new Google Maps APIs
  • Production Ready: Built with reliability and performance in mind

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

MIT License - see LICENSE file for details.

🎯 Use Cases

  • πŸ•οΈ Camping Trip Planning: Weather, terrain, campground research
  • πŸ”¬ Field Research: Environmental data collection and site analysis
  • 🚚 Logistics: Route optimization and travel planning
  • 🏑 Real Estate: Location analysis and neighborhood research
  • πŸ“± Mobile Apps: Location-based services and mapping features
  • 🎨 Creative Projects: Map visualization and geographic art

Transform your location-based projects with comprehensive Google Maps integration! πŸ—ΊοΈβœ¨

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured