Google Search MCP Server
@1999AZZAR
MCP server proxy for Google Programmable Search Engine
Overview
What is Google Search MCP Server?
Google Search MCP Server is a microservice that wraps the Google Custom Search API. It provides caching, rate limiting, Prometheus metrics, and robust error handling. Intended for developers who want a production-ready search service with built-in observability and resilience.
How to use Google Search MCP Server?
Clone the repository, install dependencies with npm install, copy .env.example to .env and set your Google API key and Custom Search Engine ID. Run with npm run dev for development with live reload, or build and start for production. Docker support is also available.
Key features of Google Search MCP Server
- Centralized error handling middleware
- Config validation via Zod (fail-fast)
- Redis + LRU caching with stale-while-revalidate
- Prometheus metrics endpoint (
/metrics) - Rate limiting via express-rate-limit
- Swagger UI and GraphQL Sandbox UIs
Use cases of Google Search MCP Server
- Perform Google searches with optional filters (date, site, safe, etc.)
- Search for specific file types (e.g., PDFs)
- Extract main content and sentiment from a URL
- Monitor service health and collect Prometheus metrics
FAQ from Google Search MCP Server
What are the prerequisites for Google Search MCP Server?
Node.js >= v14, npm >= v6, a Google API Key with Custom Search API enabled, and a Google CSE ID. Redis is optional.
How do I configure caching and rate limiting?
Set environment variables like REDIS_URL, CACHE_TTL (Redis TTL in seconds), LRU_CACHE_SIZE, RATE_LIMIT_WINDOW_MS, and RATE_LIMIT_MAX in your .env file.
Can I run Google Search MCP Server in Docker?
Yes, a Dockerfile is provided. Build with docker build -t mcp-google-search . and run with docker run -d -p 3000:3000 --env-file .env mcp-google-search.