返回 MCP 目录
public公开dns本地运行

serp-mcp

SERP MCP Server是一个基于Model Context Protocol的谷歌搜索结果爬虫服务器,支持指纹轮换、地理位置编码和精简模式,可自动提取有机结果、相关搜索等数据。

article

README

🚀 SERP MCP Server

Google SERP抓取器,作为具有指纹轮换功能的模型上下文协议(MCP)服务器,能有效提升数据抓取的效率与安全性。

PyPI version Python versions CI


🌟 赞助方

Quercle - 停止在无用信息上浪费令牌。精准获取大语言模型所需内容。
网页抓取与搜索API,可去除导航栏、广告和页脚。支持处理JS网站,返回干净、有引用的内容。

✨ 主要特性

  • 自动指纹轮换:每个请求自动轮换浏览器指纹,增强数据抓取的安全性。
  • 请求拦截:仅允许访问www.google.com/search,提高效率。
  • 精简模式:流量减少50%,仅提取自然搜索结果(默认模式)。
  • 完整模式:可提取自然搜索结果、站点链接、常见问题解答、相关搜索、知识图谱等信息。
  • 位置编码:通过protobuf进行位置编码(UULE格式)。
  • 代码验证:验证国家和语言代码的有效性。

📦 安装指南

Claude Code

claude mcp add serp-mcp -- uvx serp-mcp

opencode

将以下内容添加到~/.config/opencode/opencode.jsonc文件中:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "serp-mcp": {
      "type": "local",
      "command": ["uvx", "serp-mcp"],
      "enabled": true
    }
  }
}

手动使用

# 使用uvx运行(自动安装并运行最新版本)
uvx serp-mcp

开发环境

git clone https://github.com/LiranYoffe/serp-mcp
cd serp-mcp
uv sync
uv run serp-mcp

💻 使用示例

search

搜索Google并提取SERP数据。

参数说明

  • query(必填):搜索查询词
  • country(默认值:"us"):国家代码(如us、uk、fr、de等)
  • language(默认值:"en"):语言代码(如en、fr、de、es等)
  • location(可选):用于本地搜索结果的位置(例如,"New York, NY")
  • time_range(可选):时间过滤器(hour、day、week、month、year)
  • autocorrect(默认值:true):启用查询自动纠错
  • page(默认值:1):页码
  • lite(默认值:true):精简模式(仅获取自然搜索结果,流量减少50%)

使用示例

使用默认设置搜索 "python tutorial"
在法国以精简模式搜索 "python tutorial"
在纽约搜索 "restaurants" 并设置7天时间过滤器

🔍 代码说明

国家代码

有效的ISO 3166-1 alpha-2代码:us、uk、fr、de、es、it、jp、kr、cn、in、br等(共243个代码)。

语言代码

有效的Google语言代码:en、fr、de、es、it、pt、ru、ja、ko、zh-cn、zh-tw、ar、hi等(共78个代码)。

时间范围

  • hour:过去一小时
  • day:过去24小时
  • week:过去一周
  • month:过去一个月
  • year:过去一年

🔧 技术细节

  • 指纹轮换:每个请求自动轮换浏览器指纹,增强数据抓取的安全性。
  • MCP协议:基于标准输入输出传输的模型上下文协议服务器。
  • 请求拦截:为提高效率,拦截所有非Google的请求。

👨‍💻 开发相关

运行测试

uv run pytest

重新生成Protobuf

uv run python -m grpc_tools.protoc \
  --python_out=serp_mcp \
  -Iserp_mcp \
  serp_mcp/uule.proto

📄 许可证

本项目采用MIT许可证。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端