Google Search MCP Server

Google Search MCP Server

专为 VS Code / Cline / Anthropic 构建的 MCP 服务器 - 启用 Google 搜索并具备跟踪链接和研究网站的能力

mixelpixx

研究与数据
访问服务器

README

专为 Cline + VS Code 设计!

Google 搜索 MCP 服务器

一个 MCP (模型上下文协议) 服务器,提供 Google 搜索功能和网页内容分析工具。该服务器使 AI 模型能够以编程方式执行 Google 搜索和分析网页内容。

功能

  • 具有过滤选项(日期、语言、国家/地区、安全搜索)的高级 Google 搜索
  • 详细的网页内容提取和分析
  • 用于比较多个来源的批量网页分析
  • 环境变量支持 API 凭据
  • 全面的错误处理和用户反馈
  • 符合 MCP 的接口,可与 AI 助手无缝集成

前提条件

  • Node.js (v16 或更高版本)
  • Python (v3.8 或更高版本)
  • Google Cloud Platform 帐户
  • 自定义搜索引擎 ID
  • Google API 密钥

安装

  1. 克隆存储库:

    git clone https://github.com/your-username/google-search-mcp.git
    cd google-search-mcp
    
  2. 安装 Node.js 依赖项:

    npm install
    
  3. 安装 Python 依赖项:

    pip install flask google-api-python-client flask-cors beautifulsoup4 trafilatura markdownify
    
  4. 构建 TypeScript 代码:

    npm run build
    
  5. 创建一个辅助脚本来启动 Python 服务器(Windows 示例):

    # 创建 start-python-servers.cmd
    @echo off
    echo Starting Python servers for Google Search MCP...
    
    REM Start Python search server
    start "Google Search API" cmd /k "python google_search.py"
    
    REM Start Python link viewer
    start "Link Viewer" cmd /k "python link_view.py"
    
    echo Python servers started. You can close this window.
    

配置

API 凭据

您可以通过两种方式提供 Google API 凭据:

  1. 环境变量(推荐):

    • 在您的环境中设置 GOOGLE_API_KEYGOOGLE_SEARCH_ENGINE_ID
    • 服务器将自动使用这些值
  2. 配置文件

    • 在根目录中创建一个 api-keys.json 文件:
    {
        "api_key": "your-google-api-key",
        "search_engine_id": "your-custom-search-engine-id"
    }
    

MCP 设置配置

将服务器配置添加到您的 MCP 设置文件:

对于 Cline (VS Code 扩展)

文件位置:%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

{
  "mcpServers": {
    "google-search": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\path\\to\\google-search-mcp\\dist\\google-search.js"],
      "cwd": "C:\\path\\to\\google-search-mcp",
      "env": {
        "GOOGLE_API_KEY": "your-google-api-key",
        "GOOGLE_SEARCH_ENGINE_ID": "your-custom-search-engine-id"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

对于 Claude 桌面应用程序

文件位置:%APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "google-search": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\path\\to\\google-search-mcp\\dist\\google-search.js"],
      "cwd": "C:\\path\\to\\google-search-mcp",
      "env": {
        "GOOGLE_API_KEY": "your-google-api-key",
        "GOOGLE_SEARCH_ENGINE_ID": "your-custom-search-engine-id"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

运行服务器

方法 1:单独启动 Python 服务器(推荐)

  1. 首先,使用辅助脚本启动 Python 服务器:

    start-python-servers.cmd
    
  2. 配置 MCP 设置以仅运行 Node.js 服务器:

    {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\path\\to\\google-search-mcp\\dist\\google-search.js"]
    }
    

方法 2:一体化脚本

使用单个命令启动 TypeScript 和 Python 服务器:

npm run start:all

可用工具

1. google_search

搜索 Google 并返回来自网络的相关结果。此工具使用 Google 搜索引擎查找有关特定主题的网页、文章和信息。

{
  "name": "google_search",
  "arguments": {
    "query": "your search query",
    "num_results": 5, // optional, default: 5, max: 10
    "date_restrict": "w1", // optional, restrict to past day (d1), week (w1), month (m1), year (y1)
    "language": "en", // optional, ISO 639-1 language code (en, es, fr, de, ja, etc.)
    "country": "us", // optional, ISO 3166-1 alpha-2 country code (us, uk, ca, au, etc.)
    "safe_search": "medium" // optional, safe search level: "off", "medium", "high"
  }
}

2. extract_webpage_content

提取和分析网页内容,将其转换为可读文本。此工具获取主要内容,同时删除广告、导航元素和其他杂乱内容。

{
  "name": "extract_webpage_content",
  "arguments": {
    "url": "https://example.com"
  }
}

3. extract_multiple_webpages

从单个请求中的多个网页提取和分析内容。非常适合比较不同来源的信息或收集有关某个主题的全面信息。

{
  "name": "extract_multiple_webpages",
  "arguments": {
    "urls": [
      "https://example1.com",
      "https://example2.com"
    ]
  }
}

使用示例

以下是如何使用 Google 搜索 MCP 工具的一些示例:

基本搜索

搜索有关人工智能的信息

带有过滤器的高级搜索

搜索过去一周内有关西班牙语气候变化的最新消息

内容提取

从 https://example.com/article 提取内容

多内容比较

比较来自以下网站的信息:
- https://site1.com/topic
- https://site2.com/topic
- https://site3.com/topic

获取 Google API 凭据

  1. 转到 Google Cloud Console
  2. 创建一个新项目或选择一个现有项目
  3. 启用 Custom Search API
  4. 创建 API 凭据(API 密钥)
  5. 转到 Custom Search Engine 页面
  6. 创建一个新的搜索引擎并获取您的搜索引擎 ID
  7. 将这些凭据添加到您的 api-keys.json 文件

错误处理

服务器提供详细的错误消息,用于:

  • 缺少或无效的 API 凭据
  • 搜索请求失败
  • 无效的网页 URL
  • 网络连接问题

架构

服务器由两个主要组件组成:

  1. TypeScript MCP 服务器:处理 MCP 协议通信并提供工具接口
  2. Python Flask 服务器:管理 Google API 交互和网页内容分析

许可证

MIT

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python