谷歌搜索服务器

一个暴露谷歌搜索功能的MCP服务器,供MCP客户端调用,支持可选的n8n webhook集成以记录查询和结果集。

  • by aaron777collins
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 aaron777collins/GoogleSearchMCP

使用说明

MCP谷歌搜索服务器

MCP服务器将谷歌搜索作为MCP客户端可以调用的工具。可选的n8n webhook集成会记录每个查询和结果集。

特性

  • google_search:可编程搜索(JSON API)结果(标题、链接、片段、元数据)
  • fetch_url:获取URL并返回纯文本(尽力提取)
  • 每次搜索或获取时可选n8n webhook
  • WebSocket传输(易于从远程客户端连接)

需求

  • Node.js 20+
  • 谷歌可编程搜索引擎(PSE) 客户体验
  • 谷歌API 钥匙 启用自定义搜索JSON API

快速入门(Docker)

  1. 复制 env.example 到 .env 并填充值:
    cp env.example .env
    
  2. 启动服务:
    docker compose up -d --build
    
  3. MCP WebSocket服务器监听 ws://localhost:3333 (或您的容器主机)。

环境变量

  • GOOGLE_API_KEY –Google API密钥
  • GOOGLE_CX –可编程搜索引擎cx-id
  • PORT –WebSocket服务器端口(默认3333)
  • N8N_WEBHOOK_URL –可选,例如。 https://n8n.example.com/webhook/xyz (将POST日志记录)
  • FETCH_MAX_BYTES –要获取的最大字节数 fetch_url (默认值1048576)

从Claude Desktop连接(示例)

添加到您的Claude配置中(例如。, claude_desktop_config.json):

{
  "mcpServers": {
    "google-search": {
      "command": "node",
      "args": ["/app/dist/server.js"],
      "transport": {
        "type": "websocket",
        "url": "ws://localhost:3333"
      }
    }
  }
}

调整设置的路径/URL。如果在Docker之外运行,请指向您的主机。

n8n集成

集 N8N_WEBHOOK_URL 服务器将POST以下事件:

{
  "event": "google_search",
  "timestamp": "2025-09-20T12:34:56.789Z",
  "query": "site:openai.com mcp",
  "params": {"num": 5},
  "results": [
    {"title": "...", "link": "https://...", "snippet": "...", "source": "google"}
  ]
}

然后,您可以在n8n中进行分支/转换(存储到数据库、发送Slack等)。

发展

npm install
npm run dev

生产

npm run build && npm start

安全说明

  • Docker/网络策略的速率限制或放置在反向代理后面。
  • 对API密钥保密。考虑将其限制在您的IP上。
  • 系紧 GOOGLE_CX 避免不必要的结果。