Google Search Engine
A server for Google search and webpage content extraction, built on Cloudflare Workers with OAuth support.
Google Search Engine MCP Server
An MCP (Model Context Protocol) server based on Cloudflare Workers, providing Google search and webpage content extraction functionality with integrated OAuth login.
Local Development
# Clone the repository
git clone https://github.com/your-username/google-search-engine-mcp-server.git
# Install dependencies
cd google-search-engine-mcp-server
npm install
# Run locally
npm run dev
Visit http://localhost:8787/ to check the server status
Connect to MCP Inspector Testing Tool
Use the MCP Inspector to explore and test the API:
- Run
npm run inspectorornpx @modelcontextprotocol/inspector - In the Inspector interface, set the transport type to
SSE, URL tohttp://localhost:8787/sse, and click "Connect" - Enter any email and password in the mock login interface
- After logging in, you can view and call all available tools
Available Tools
This server provides the following tools:
- google_search - Perform Google searches and return results
- extract_webpage_content - Extract webpage content and convert it to readable text
- batch_extract_webpage_content - Batch extract content from multiple webpages
Connect to Claude Desktop
To connect Claude to your local MCP server:
- Follow the Anthropic Quick Start Guide
- In Claude Desktop, go to Settings > Developer > Edit Config
- Replace the existing content with the following configuration:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8787/sse"
]
}
}
}
After launching Claude, a browser window will open allowing you to log in. You can see available tools in the bottom right corner. With appropriate prompts, Claude will call the corresponding tools.
Deploy to Cloudflare
- Create a KV namespace:
npx wrangler kv namespace create OAUTH_KV - Follow the prompts to add the KV namespace ID to
wrangler.jsonc - Set environment variables:
GOOGLE_API_KEY- Your Google API keyGOOGLE_SEARCH_ENGINE_ID- Your Google Custom Search Engine ID
- Deploy:
npm run deploy
Connect to Remote MCP Server
After deployment, you can use MCP Inspector to connect to the remote server:
npx @modelcontextprotocol/inspector@latest
Enter your Workers URL (e.g., your-worker-name.your-account.workers.dev/sse) as the MCP server address and click "Connect".
Connect Claude Desktop to Remote Server
Update the Claude configuration file to point to your Workers URL:
{
"mcpServers": {
"google-search": {
"command": "npx",
"args": [
"mcp-remote",
"https://your-worker-name.your-account.workers.dev/sse"
]
}
}
}
Troubleshooting
If you encounter issues:
- Restart Claude
- Try connecting to the MCP server directly from the command line:
npx mcp-remote http://localhost:8787/sse - Clear the MCP authentication files:
rm -rf ~/.mcp-auth - Check console logs for detailed error information
Developer Notes
- This project is developed using TypeScript
- Based on Cloudflare Workers and Durable Objects
- Integrates OAuth authentication
- Uses Google Custom Search API for search functionality
- Includes webpage content extraction and analysis features
관련 서버
Harmonic Search
Search for companies and professionals using the Harmonic.ai API.
Haloscan MCP Server
An MCP server for interacting with the Haloscan SEO API.
Serper Search and Scrape
Web search and webpage scraping using the Serper API.
domain-search-mcp
Domain Search MCP is an open-source MCP server that gives AI assistants the ability to check domain availability in real-time.
USGS Quakes
Access earthquake data from the USGS Quakes API using natural language queries.
Gemini Web Search
Performs web searches using the Gemini Web Search Tool via the local gemini-cli.
SIMAP MCP Server
An MCP (Model Context Protocol) server for interacting with SIMAP.ch, Switzerland's public procurement platform.
Console MCP Server
Bridge external console processes with Copilot by searching through JSON log files.
Airbnb
Search for Airbnb listings and retrieve their details.
Context7 HTTP
An MCP server for the Context7 project, providing HTTP streaming and search endpoints for library information without local installation.