Google Search
Web search and webpage content extraction using the Google Custom Search API.
mcp-google-server A MCP Server for Google Custom Search and Webpage Reading
A Model Context Protocol server that provides web search capabilities using Google Custom Search API and webpage content extraction functionality.
Setup
Getting Google API Key and Search Engine ID
-
Create a Google Cloud Project:
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable billing for your project
-
Enable Custom Search API:
- Go to API Library
- Search for "Custom Search API"
- Click "Enable"
-
Get API Key:
- Go to Credentials
- Click "Create Credentials" > "API Key"
- Copy your API key
- (Optional) Restrict the API key to only Custom Search API
-
Create Custom Search Engine:
- Go to Programmable Search Engine
- Enter the sites you want to search (use www.google.com for general web search)
- Click "Create"
- On the next page, click "Customize"
- In the settings, enable "Search the entire web"
- Copy your Search Engine ID (cx)
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Features
Search Tool
Perform web searches using Google Custom Search API:
- Search the entire web or specific sites
- Control number of results (1-10)
- Get structured results with title, link, and snippet
Webpage Reader Tool
Extract content from any webpage:
- Fetch and parse webpage content
- Extract page title and main text
- Clean content by removing scripts and styles
- Return structured data with title, text, and URL
Installation
Installing via Smithery
To install Google Custom Search Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @adenot/mcp-google-search --client claude
To use with Claude Desktop, add the server config with your Google API credentials:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": [
"-y",
"@adenot/mcp-google-search"
],
"env": {
"GOOGLE_API_KEY": "your-api-key-here",
"GOOGLE_SEARCH_ENGINE_ID": "your-search-engine-id-here"
}
}
}
}
Usage
Search Tool
{
"name": "search",
"arguments": {
"query": "your search query",
"num": 5 // optional, default is 5, max is 10
}
}
Webpage Reader Tool
{
"name": "read_webpage",
"arguments": {
"url": "https://example.com"
}
}
Example response from webpage reader:
{
"title": "Example Domain",
"text": "Extracted and cleaned webpage content...",
"url": "https://example.com"
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Related Servers
NPM Search
Search for npm packages
APLCart MCP Server
An MCP server providing semantic search capabilities for APLCart data.
LLM Jukebox
Enables LLMs to search, download, and extract information from YouTube music videos.
NPI Registry
Search the National Provider Identifier (NPI) registry for healthcare providers and organizations in the United States.
eRegulations MCP Server
An MCP server for the eRegulations API, providing access to regulatory information.
PubMed MCP Server
A server for searching, retrieving, and analyzing articles from the PubMed database.
Wikimedia Image Search
MCP server that enables AI assistants to search Wikimedia Commons images with metadata and visual thumbnails.
Vectorize
Vectorize MCP server for advanced retrieval, Private Deep Research, Anything-to-Markdown file extraction and text chunking.
eBird MCP Server
Query rich bird observation data from the eBird API using natural language.
yfinance MCP Server
Access up-to-date prices and news for stocks and cryptocurrencies.