About Google Search MCP Server
Google Search MCP Server connects Google's Custom Search JSON API to MCP clients, enabling web searches with configurable filters. It is for users who need structured search results, with built-in rate limiting to help manage API quotas.
Key features
- 01Google web search
- 02Date, language, and country filters
- 03Configurable safe-search level
- 04Structured titles, URLs, and snippets
- 05Rate limiting for API requests
Use cases
- 01Search the web from an MCP client
- 02Limit results by date or region
- 03Set language and safe-search preferences
- 04Retrieve formatted search results
MCP support
Exposes a `google_search` tool to MCP clients, forwarding queries and optional filters to Google's Custom Search JSON API.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEGoogle Search MCP Server
An MCP server implementation that integrates with Google's Custom Search JSON API, providing web search capabilities.
Features
- Web Search: Search Google with comprehensive query options
- Advanced Filtering: Control results by date, language, country, and safe search level
- Rate Limited: Built-in rate limiting to prevent API quota exhaustion
- Structured Results: Returns formatted search results with titles, URLs, and snippets
Tools
- google_search
- Execute Google searches with advanced filtering options
- Inputs:
query(string): Search terms (required)num_results(number, optional): Number of results (1-10, default: 5)date_restrict(string, optional): Filter by date (e.g., "d1" for last day)language(string, optional): 2-letter language code (e.g., "en")country(string, optional): 2-letter country code (e.g., "us")safe_search(string, optional): Safety level ("off", "medium", "high")
Configuration
Getting API Keys
- Create a Google Cloud project at Google Cloud Console
- Activate the Custom Search JSON API for your project via the API dashboard
- Generate an API key either through the Credentials section or following the Custom Search API guide
- Obtain a Search Engine ID by setting up a custom search engine in Google's Programmable Search
Environment Variables
Set these before running the server:
export GOOGLE_API_KEY="your-api-key"
export GOOGLE_SEARCH_ENGINE_ID="your-search-engine-id"
Running from Local Repository
To run the server directly from source:
-
Clone the repository
git clone https://github.com/ayush-rudani/google-search-mcp-server.git cd google-search-mcp-server -
Install dependencies
pnpm install # or npm install -
Build the project
pnpm run build # or npm run build -
Configure Claude Desktop Update your
claude_desktop_config.json:{ "mcpServers": { "google-search": { "command": "/path/to/node", // <--- Important to add the following, run in your terminal `echo "$(which node)"` to get the path "args": ["/full/path/to/google-search-mcp/index.js"], "env": { "GOOGLE_API_KEY": "your-api-key", "GOOGLE_SEARCH_ENGINE_ID": "your-search-engine-id" } } } }- Replace
/path/to/nodewith the complete path to your Node.js executable (you can locate this by running the commandwhich nodein your terminal)
- Replace
-
Test the server
export GOOGLE_API_KEY=your_api_key_here export GOOGLE_SEARCH_ENGINE_ID=your_engine_id_here node dist/index.js
Rate Limits
The server enforces a rate limit of 10 requests per minute by default to prevent exceeding Google's API quotas. You can adjust this in the code if needed.
License
This MCP server is licensed under the MIT License. See the LICENSE file for details.
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.