A Model Context Protocol (MCP) server that enables free web searching using Google search results, with no API keys required.
- Search the web using Google search results
- No API keys or authentication required
- Returns structured results with titles, URLs, and descriptions
- Configurable number of results per search
- Clone or download this repository
- Install dependencies:
npm install
- Build the server:
npm run build
- Add the server to your MCP configuration:
For VSCode (Claude Dev Extension):
{
"mcpServers": {
"web-search": {
"command": "node",
"args": ["/path/to/web-search/build/index.js"]
}
}
}
For Claude Desktop:
{
"mcpServers": {
"web-search": {
"command": "node",
"args": ["/path/to/web-search/build/index.js"]
}
}
}
The server provides a single tool named search
that accepts the following parameters:
{
"query": string, // The search query
"limit": number // Optional: Number of results to return (default: 5, max: 10)
}
Example usage:
use_mcp_tool({
server_name: "web-search",
tool_name: "search",
arguments: {
query: "your search query",
limit: 3 // optional
}
})
Example response:
[
{
"title": "Example Search Result",
"url": "https://example.com",
"description": "Description of the search result..."
}
]
Since this tool uses web scraping of Google search results, there are some important limitations to be aware of:
-
Rate Limiting: Google may temporarily block requests if too many searches are performed in a short time. To avoid this:
- Keep searches to a reasonable frequency
- Use the limit parameter judiciously
- Consider implementing delays between searches if needed
-
Result Accuracy:
- The tool relies on Google's HTML structure, which may change
- Some results might be missing descriptions or other metadata
- Complex search operators may not work as expected
-
Legal Considerations:
- This tool is intended for personal use
- Respect Google's terms of service
- Consider implementing appropriate rate limiting for your use case
Feel free to submit issues and enhancement requests!