go-serper-mcp-server
v1.0.0
Published
Go MCP server for Serper (Google Search + webpage scrape)
Readme
go_serper_mcp_server
A Go implementation of an MCP server that exposes the full Serper Google Search API surface, plus Serper's webpage scrape endpoint.
Requirements
- Go 1.23+
- A Serper API key (
SERPER_API_KEY)
Available Tools
google_searchgoogle_search_imagesgoogle_search_videosgoogle_search_placesgoogle_search_mapsgoogle_search_reviewsgoogle_search_newsgoogle_search_shoppinggoogle_search_lensgoogle_search_scholargoogle_search_patentsgoogle_search_autocompletewebpage_scrape
Configuration
Set your Serper API key as an environment variable:
export SERPER_API_KEY="your-key"Optional:
AIOHTTP_TIMEOUT(seconds, default: 15) - matches the reference server's timeout env name.
Running
Stdio (default for most MCP clients)
go run . -t stdioSSE
go run . -t sse -p 8894SSE endpoint:
http://127.0.0.1:8894/sseBuild
make buildBinary output: ./go_serper_mcp_server
npm / npx
This repo includes an npm wrapper so the server can be installed and run via npx.
Build npm package (multi-platform binaries)
npm run build:npmThis creates platform binaries under native/ and prepares the package for npm pack/publish.
Run with npx
After publishing the package (or using a local tarball), you can run:
SERPER_API_KEY=your-key npx go-serper-mcp-server -t stdioFor a local tarball:
npm pack
SERPER_API_KEY=your-key npx ./go-serper-mcp-server-*.tgz -t stdioMCP Client Config Example
{
"mcpServers": {
"serper": {
"command": "/path/to/go_serper_mcp_server",
"args": ["-t", "stdio"],
"env": {
"SERPER_API_KEY": "your-key"
}
}
}
}Notes
- The server mirrors the Serper MCP Python implementation in
tmp/serper-mcp-server. - All requests are sent as JSON to
https://google.serper.dev/{endpoint}orhttps://scrape.serper.dev.
