Google Search MCP Server
Enables comprehensive web and news searches via the Google Custom Search API with integrated content extraction using the Mozilla Readability algorithm. It allows users to perform quick snippet lookups or deep searches that fetch and format full article content into clean markdown.
README
Google Search MCP Server
An MCP (Model Context Protocol) server that performs comprehensive web searches using Google Custom Search JSON API with advanced content extraction using Mozilla's Readability algorithm.
Features
- Three Search Modes:
google_search- Fast snippet-only search for quick lookupsdeep_search- Full content extraction with Readability algorithmdeep_search_news- News-optimized deep search
- Google Custom Search API - Uses official Google Custom Search JSON API
- Advanced Content Extraction - Uses Mozilla's Readability algorithm (same as Firefox Reader View) for clean article extraction
- Multiple Search Types - Web search, news search, and image search
- Domain Filtering - Include or exclude specific domains from results
- Retry Logic - Automatic retries with exponential backoff for reliability
- Controlled Concurrency - Fetches pages in batches to avoid overwhelming servers
Prerequisites
Get Google Custom Search API Credentials
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the "Custom Search API"
- Go to "Credentials" and create an API key
- Go to Programmable Search Engine
- Create a new search engine and get your Search Engine ID (CX)
You'll need:
GOOGLE_API_KEY- Your Google Cloud API keyGOOGLE_CX- Your Programmable Search Engine ID
Installation
Using npx (Recommended)
No installation needed - just configure your MCP client:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": ["-y", "@thejusdutt/google-search-mcp"],
"env": {
"GOOGLE_API_KEY": "your-google-api-key",
"GOOGLE_CX": "your-search-engine-id"
}
}
}
}
Global Installation
npm install -g @thejusdutt/google-search-mcp
Then configure:
{
"mcpServers": {
"google-search": {
"command": "google-search-mcp",
"env": {
"GOOGLE_API_KEY": "your-google-api-key",
"GOOGLE_CX": "your-search-engine-id"
}
}
}
}
Tools
google_search
Simple Google search for quick lookups. Returns snippets only without fetching full page content.
| Parameter | Type | Default | Description |
|---|---|---|---|
query |
string | required | The search query |
num_results |
number | 10 | Number of results (1-10) |
Example:
// Quick search with snippets only
google_search({ query: "React hooks tutorial" })
deep_search
Comprehensive web search with full content extraction.
| Parameter | Type | Default | Description |
|---|---|---|---|
query |
string | required | The search query |
num_results |
number | 10 | Number of results (1-10) |
max_content_per_page |
number | 50000 | Max characters per page (5000-100000) |
search_type |
string | "web" | Search type: "web", "news", or "images" |
include_domains |
string | - | Comma-separated domains to include |
exclude_domains |
string | - | Comma-separated domains to exclude |
Examples:
// Basic web search
deep_search({ query: "React best practices 2025" })
// News search
deep_search({ query: "AI announcements", search_type: "news" })
// Search specific sites only
deep_search({
query: "TypeScript tips",
include_domains: "github.com,dev.to"
})
// Exclude certain sites
deep_search({
query: "web development trends",
exclude_domains: "pinterest.com,facebook.com"
})
deep_search_news
Convenience wrapper for news search. Equivalent to calling deep_search with search_type: "news" and optimized content limits.
| Parameter | Type | Default | Description |
|---|---|---|---|
query |
string | required | The news topic to search |
num_results |
number | 10 | Number of articles (1-10) |
max_content_per_page |
number | 30000 | Max characters per article |
Example:
deep_search_news({ query: "OpenAI latest updates" })
Configuration
Kiro
Add to ~/.kiro/settings/mcp.json:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": ["-y", "@thejusdutt/google-search-mcp"],
"env": {
"GOOGLE_API_KEY": "your-google-api-key",
"GOOGLE_CX": "your-search-engine-id"
}
}
}
}
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": ["-y", "@thejusdutt/google-search-mcp"],
"env": {
"GOOGLE_API_KEY": "your-google-api-key",
"GOOGLE_CX": "your-search-engine-id"
}
}
}
}
How It Works
- Search - Queries Google Custom Search API to get top results
- Fetch - Downloads each result page with retry logic
- Extract - Uses Mozilla Readability to extract clean article content
- Format - Returns consolidated markdown with full content from each page
Requirements
- Node.js 18+
- Google Cloud API key with Custom Search API enabled
- Programmable Search Engine ID (CX)
License
MIT
Author
Contributing
Issues and PRs welcome at GitHub
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
E2B
Using MCP to run code via e2b.