无需 KYC — 无需 ID、无需自拍、无需文件。使用加密货币支付:BTC, USDT, USDC, ETH, SOL, LTC
语言: 简体中文
获取 API 密钥

文档 · Model Context Protocol · Python

面向 Claude Desktop、Cursor 等 MCP 客户端的 Google 搜索 MCP 服务器

为任意 MCP 客户端提供一个 google_search 工具,返回实时 Google 结果。该服务器是一个你自己运行的 Python 文件;它调用 SerpCrypto API,返回模型可读的紧凑文本。

最后更新:

快速回答

如何通过 MCP 服务器将 Google 搜索添加到 Claude Desktop 或 Cursor?

保存下面的 40 行 Python 服务器代码,安装 mcp[cli] 和 httpx,然后在客户端的 MCP 设置中注册,将 SerpCrypto API 密钥填入 env。客户端随后会获得一个 google_search 工具,返回实时 Google 结果。每次工具调用是一次搜索,花费 1 积分,起价 US$0.30/千次搜索;积分使用加密货币支付,无需 KYC。

MCP 服务器一览

语言Python 3.10+,使用官方 mcp SDK(FastMCP)和 httpx
传输方式stdio:客户端启动脚本并与之通信
工具google_search(query, gl, hl, num_results)
输出若显示则有 AI Overview 文本,然后是每条结果的标题、链接和摘要
密钥环境变量 SERPCRYPTO_API_KEY,在客户端配置中设置
费用每次成功的工具调用花费 1 积分;出错的调用免费

服务器做什么?

它通过 Model Context Protocol 暴露一个工具 google_search。当模型调用它时,服务器向 https://serpcrypto.com/api/v1/search 发送一个请求,然后将 JSON 转换为简短的纯文本:如果 Google 显示了 AI Overview,则包含该内容,以及带有标题、链接和摘要的顶部结果。

简短文本很重要。完整的 JSON 结果页面很长,而回传给模型的每个字符都会占用上下文。服务器最多保留十条结果,并将概览截断到 800 个字符;如果你的客户端有更多空间,可以在代码中修改这些限制。

这是可复制粘贴的代码,不是已发布的软件包:没有官方的 SerpCrypto MCP 包可安装。你拥有该文件,可以添加工具,例如用于 engine=google_news 的工具。

serpcrypto_mcp.py
"""serpcrypto_mcp.py: an MCP server that gives AI clients a Google search tool.

Install once:  pip install "mcp[cli]" httpx
Run by your MCP client over stdio; the API key comes from the environment.
"""
import os

import httpx
from mcp.server.fastmcp import FastMCP

API_URL = "https://serpcrypto.com/api/v1/search"
mcp = FastMCP("serpcrypto-search")


@mcp.tool()
async def google_search(query: str, gl: str = "us", hl: str = "en", num_results: int = 5) -> str:
    """Search Google and return the top results (title, link, snippet) and the AI Overview text if any.

    gl is a two-letter country code (us, gb, de...), hl a language code (en, de, pt-BR...).
    Each call uses one SerpCrypto search credit.
    """
    headers = {"Authorization": "Bearer " + os.environ["SERPCRYPTO_API_KEY"]}
    params = {"q": query, "gl": gl, "hl": hl}
    async with httpx.AsyncClient(timeout=90) as client:
        r = await client.get(API_URL, params=params, headers=headers)
    if r.status_code != 200:
        return f"Search failed with HTTP {r.status_code}: {r.text[:300]}"
    data = r.json()
    lines = []
    overview = data.get("ai_overview") or {}
    if overview.get("text"):
        lines.append("AI Overview: " + overview["text"][:800])
    for item in data.get("organic_results", [])[: max(1, min(num_results, 10))]:
        lines.append(f"{item['position']}. {item['title']}\n{item['link']}\n{item.get('snippet', '')}")
    return "\n\n".join(lines) or "No results."


if __name__ == "__main__":
    mcp.run()  # stdio transport

一些客户端已经自带名为 web_search 的工具,使用它们自己的提供商。使用不同的名称可以避免冲突,并告诉模型它能获得什么:按所选国家和语言的 Google 结果。docstring 是模型读取的描述,因此其中说明了参数和一次调用的费用。

如何将其添加到 Claude Desktop?

打开配置文件 claude_desktop_config.json:在 macOS 上它位于 ~/Library/Application Support/Claude/,在 Windows 上位于 %APPDATA%\Claude\。在 mcpServers 下添加服务器,填写脚本的绝对路径和你的密钥到 env,然后重启 Claude Desktop。

如果 python 不在 Claude Desktop 可见的 path 中,请使用解释器的完整路径,例如虚拟环境中的解释器路径。

claude_desktop_config.json
{
  "mcpServers": {
    "serpcrypto-search": {
      "command": "python",
      "args": ["/absolute/path/to/serpcrypto_mcp.py"],
      "env": {
        "SERPCRYPTO_API_KEY": "paste-your-key-here"
      }
    }
  }
}

如何将其添加到 Claude Code 和 Cursor?

在 Claude Code 中,从终端使用 claude mcp add 注册;-e 设置环境变量,-- 之后的所有内容就是要运行的命令。在 Cursor 中,把上面相同的 mcpServers 块放到每个项目的 ~/.cursor/mcp.json 中,或放到单个项目内的 .cursor/mcp.json 中。

其他启动 stdio 服务器的 MCP 客户端也需要同样的三项内容:命令、参数和环境变量。OpenClaw 页面 展示了 OpenClaw 的命令。

Claude Code
claude mcp add serpcrypto-search \
  -e SERPCRYPTO_API_KEY=paste-your-key-here \
  -- python /absolute/path/to/serpcrypto_mcp.py

如何保证 API 密钥安全?

把它放在客户端配置的 env 块中,或放在你的 shell 配置文件里,绝不要放在 serpcrypto_mcp.py 里。这样脚本可以在不含密钥的情况下共享或提交。如果密钥泄露,在面板中撤销它并创建一个新的:你可以在 dashboard 中随时创建和撤销的 API 密钥。

给 MCP 服务器单独的密钥。这样按密钥统计的用量就能显示助手发起了多少次搜索,与你的脚本分开统计。

助手会消耗多少积分?

每次成功的工具调用消耗 1 积分。模型在对话中搜索三次的聊天消耗 3 积分。在 US$18.75 价位的 25,000 次搜索 套餐下,那就是成千上万个辅助问答,而且 预付的搜索积分永不过期:未使用的查询会一直留在你的账户中,直到你使用它们。

要限制用量,请调低 num_results(这不改变价格,但会缩短回答),并在你的指令中告诉模型只在需要最新事实时才搜索。

MCP 常见问题

服务器能配合远程 MCP 客户端使用吗?

此版本使用 stdio,因此客户端必须在同一台机器上运行它。FastMCP 也可以通过 HTTP 提供服务;如果你在网络中暴露它,请在前面加上身份验证,因为任何能访问它的人都会消耗你的积分。

这个工具能改为搜索 Bing 或 Google News 吗?

可以。添加一个 engine 参数,或添加第二个工具,在 params 中发送 engine=bing 或 engine=google_news。每个引擎每次搜索都消耗相同的 1 积分。

为什么客户端提示工具失败?

用相同的 Python 手动运行脚本查看错误。常见原因是缺少 mcp 或 httpx 包、配置中的路径错误,或 SERPCRYPTO_API_KEY 为空,导致 API 返回 401。

获取 API 密钥需要信用卡或 KYC 吗?

不需要。SerpCrypto 出售以 BTC, USDT, USDC, ETH, SOL, LTC 支付的预付费积分,无需身份证、无需自拍、无需文件。使用账号登录;邮箱为选填。

起价 US$0.30/千次搜索 · 无需 KYC

获取 API 密钥