{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_f8hh3g4cpd4k","handle":"serp-mcp","url":"https://wellknown.network/agents/serp-mcp","links":{"self":"https://wellknown.network/agents/serp-mcp/record.json","html":"https://wellknown.network/agents/serp-mcp","markdown":"https://wellknown.network/agents/serp-mcp/record.md","api":"https://wellknown.network/api/v1/agents/serp-mcp","status":"https://wellknown.network/api/v1/agents/serp-mcp/status","claim":"https://wellknown.network/agents/serp-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/serp-mcp/claim.json","badge":"https://wellknown.network/agents/serp-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air::server:serp-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"serp-mcp","summary":"Google SERP MCP server with fingerprint rotation","description":"# SERP MCP Server\n\n[![PyPI version](https://img.shields.io/pypi/v/serp-mcp?style=flat)](https://pypi.org/project/serp-mcp/)\n[![Python versions](https://img.shields.io/pypi/pyversions/serp-mcp?style=flat)](https://pypi.org/project/serp-mcp/)\n[![CI](https://github.com/LiranYoffe/serp-mcp/actions/workflows/publish.yml/badge.svg)](https://github.com/LiranYoffe/serp-mcp/actions)\n\nGoogle SERP scraper as a Model Context Protocol (MCP) server with fingerprint rotation.\n\n---\n\n## Sponsored by\n\n<p align=\"center\">\n  <a href=\"https://quercle.dev\">\n    <img src=\"https://quercle.dev/opengraph-image\" alt=\"Quercle\" width=\"100%\">\n  </a>\n</p>\n\n<p align=\"center\">\n  <strong><a href=\"https://quercle.dev\">Quercle</a></strong> - Stop wasting tokens on junk. Get exactly what your LLM needs.<br>\n  <em>Web Fetch & Search API that strips navigation, ads, and footers. Handles JS sites. Returns clean, cited content.</em>\n</p>\n\n## Features\n\n- Automatic fingerprint rotation per request\n- Request blocking (only www.google.com/search allowed)\n- Lite mode for 50% less traffic (organic results only, DEFAULT)\n- Full mode extracts: organic results, sitelinks, PAA, related searches, knowledge graph\n- Location encoding via protobuf (UULE format)\n- Validated country/language codes\n\n## Installation\n\n### Claude Code\n\n```bash\nclaude mcp add serp-mcp -- uvx serp-mcp\n```\n\n### opencode\n\nAdd to your `~/.config/opencode/opencode.jsonc`:\n\n```jsonc\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"mcp\": {\n    \"serp-mcp\": {\n      \"type\": \"local\",\n      \"command\": [\"uvx\", \"serp-mcp\"],\n      \"enabled\": true\n    }\n  }\n}\n```\n\n### Manual Usage\n\n```bash\n# Run with uvx (automatically installs and runs the latest version)\nuvx serp-mcp\n```\n\n### Development\n\n```bash\ngit clone https://github.com/LiranYoffe/serp-mcp\ncd serp-mcp\nuv sync\nuv run serp-mcp\n```\n\n## Tools\n\n### search\n\nSearch Google and extract SERP data.\n\n**Parameters:**\n- `query` (required): Search query\n- `country` (default: \"us\"): Country code (us, uk, fr, de, e…","publisher":{"name":"Liran Yoffe","url":null},"homepage":null,"repository":null,"version":"0.1.8","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:serp-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","summary":"pypi","version":"pypi","description":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"data.web-search","name":"Web Search","confidence":1,"provenance":"derived"},{"slug":"knowledge.knowledge-graph","name":"Knowledge Graphs","confidence":0.836,"provenance":"derived"},{"slug":"data.web-scraping","name":"Web Scraping","confidence":0.825,"provenance":"derived"},{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"},{"slug":"dev.ci-cd","name":"CI/CD & Deploy","confidence":0.688,"provenance":"derived"}],"categories":["data","dev","knowledge"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"serp-mcp","registry":"pypi","observedAt":"2026-09-10T12:23:22.137Z","publishedAt":"2026-01-05T12:49:47.721022Z","latestVersion":"0.1.8"}},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"serp-mcp","url":"https://pypi.org/project/serp-mcp/","firstSeenAt":"2026-09-10T12:21:41.121Z","fetchedAt":"2026-09-10T12:21:41.121Z","normalizedAt":"2026-09-10T12:21:41.121Z"}]},"firstSeenAt":"2026-09-10T12:21:41.121Z","updatedAt":"2026-09-10T12:23:22.137Z"}