首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
Google Search MCP 服务器(模型上下文协议)2026-06-07495分享添加福利群:解决AI开发者的「MCP实战痛点」
一个提供谷歌搜索功能和网页内容分析工具的MCP(模型上下文协议)服务器。该服务器使人工智能模型能够以编程方式执行谷歌搜索并分析网页内容。
By mixelpixx
2026-06-07495
github
详情内容

版本 2.0 现已发布

Google 搜索 MCP 服务器

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

功能

  • 集成 Google 自定义搜索
  • 高级搜索功能(过滤、排序、分页、分类)
  • 多种格式的网页内容分析(Markdown、HTML、纯文本)
  • 批量网页分析
  • 结果分类
  • 内容摘要
  • 优化后的、人类可读的响应
  • 符合 MCP 标准的接口

前提条件

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

安装

  1. 克隆仓库
  2. 安装 Node.js 依赖:
npm install
  1. 编译 TypeScript 代码:
npm run build

配置

  1. 为您的 Google API 凭据设置环境变量:

您可以将这些设置为系统环境变量,或在 MCP 设置文件中进行配置。

所需环境变量:

  • GOOGLE_API_KEY:您的 Google API 密钥
  • GOOGLE_SEARCH_ENGINE_ID:您的自定义搜索引擎 ID
  1. 将服务器配置添加到您的 MCP 设置文件中(通常位于 %APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):
{
  "mcpServers": {
    "google-search": {
      "autoApprove": [
        "google_search",
        "extract_webpage_content",
        "extract_multiple_webpages"
      ],
      "disabled": false,
      "timeout": 60,
      "command": "node",
      "args": [
        "/path/to/google-search-mcp-server/dist/google-search.js"
      ],
      "env": {
        "GOOGLE_API_KEY": "your-google-api-key",
        "GOOGLE_SEARCH_ENGINE_ID": "your-custom-search-engine-id"
      },
      "transportType": "stdio"
    }
  }
}

运行

启动 MCP 服务器:

npm run start

可用工具

1. google_search

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

{
  "name": "google_search",
  "arguments": {
    "query": "your search query",
    "num_results": 5, // 可选,默认值:5
    "site": "example.com", // 可选,限制结果为特定网站
    "language": "en", // 可选,按语言过滤(ISO 639-1 代码)
    "dateRestrict": "m6", // 可选,按日期过滤(例如,"m6" 表示过去 6 个月)
    "exactTerms": "exact phrase", // 可选,搜索确切短语
    "resultType": "news", // 可选,指定类型(新闻、图片、视频)
    "page": 2, // 可选,分页的页码(从 1 开始)
    "resultsPerPage": 10, // 可选,每页结果数(最大:10)
    "sort": "date" // 可选,按 "date" 或 "relevance" 排序(默认)
  }
}

响应包括:

  • 可读格式的搜索结果,包括标题、链接、摘要
  • 分页信息(当前页、总结果数等)
  • 结果分类(自动检测)
  • 分页导航提示

2. extract_webpage_content

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

{
  "name": "extract_webpage_content",
  "arguments": {
    "url": "https://example.com",
    "format": "markdown" // 可选,格式选项:"markdown"(默认)、"html" 或 "text"
  }
}

响应包括:

  • 网页的标题和描述
  • 内容统计(字数、字符数)
  • 内容摘要
  • 内容预览(前 500 个字符)

3. extract_multiple_webpages

在单个请求中提取并分析多个网页的内容。适用于比较不同来源的信息或收集关于某个主题的全面信息。

{
  "name": "extract_multiple_webpages",
  "arguments": {
    "urls": [
      "https://example1.com",
      "https://example2.com"
    ],
    "format": "html" // 可选,格式选项:"markdown"(默认)、"html" 或 "text"
  }
}

响应包括:

  • 每个网页的标题和描述
  • 每个网页的内容统计
  • 每个网页的内容摘要
  • 每个网页的内容预览(前 150 个字符)

获取 Google API 凭据

  1. 前往 Google Cloud Console
  2. 创建一个新项目或选择一个现有项目
  3. 启用自定义搜索 API
  4. 创建 API 凭据(API 密钥)
  5. 前往 自定义搜索引擎 页面
  6. 创建一个新的搜索引擎并获取您的搜索引擎 ID
  7. 将这些凭据添加到您的 MCP 设置文件中或设置为环境变量

错误处理

服务器提供详细的错误信息,包括:

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

架构

服务器使用 TypeScript 构建,并使用 MCP SDK 提供标准化接口,使 AI 模型能够与 Google 搜索和网页内容分析工具进行交互。它由两个主要服务组成:

  1. GoogleSearchService:处理 Google API 交互以实现搜索功能
  2. ContentExtractor:管理网页内容分析和提取

服务器使用缓存机制来提高性能并减少 API 调用。

分发构建版本

如果您希望仅分发该工具的构建版本而不是源代码,可以按照以下步骤操作:

  1. 编译 TypeScript 代码:
npm run build
  1. 创建一个仅包含必要文件的发行包:
# 创建一个发行目录
mkdir -p dist-package

# 复制编译后的 JavaScript 文件
cp -r dist dist-package/

# 复制包文件(不包括开发依赖)
cp package.json dist-package/
cp README.md dist-package/

# 为分发创建一个简化的 package.json
node -e "const pkg = require('./package.json'); delete pkg.devDependencies; delete pkg.scripts.build; delete pkg.scripts.dev; pkg.scripts.start = 'node dist/google-search.js'; require('fs').writeFileSync('dist-package/package.json', JSON.stringify(pkg, null, 2));"
  1. 用户可以安装并运行构建版本:
# 仅安装生产依赖
npm install --production

# 启动服务器
npm start

这种方法允许您分发编译后的 JavaScript 文件,而无需暴露 TypeScript 源代码。用户仍需:

  1. 将他们的 Google API 凭据配置为环境变量
  2. 将服务器配置添加到他们的 MCP 设置文件中
  3. 安装生产依赖

请注意,发行包中的 package.json 将仅包含生产依赖项和一组简化的脚本。

许可证

MIT

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档