返回市场
谷歌搜索_Mcp服务器

谷歌搜索_Mcp服务器

作者:mixelpixx168 星标更新:2025-11-08

项目介绍

Google Research MCP Server

版本 3.0.0 - 增强的研究综合功能,包括智能源质量评估和去重。

这是一个先进的模型上下文协议(MCP)服务器,提供全面的Google搜索能力、网页内容提取以及AI驱动的研究综合。适用于Claude Code、Claude Desktop和其他兼容MCP的客户端。

概述

此MCP服务器通过以下方式将Google搜索转变为强大的研究工具:

  • 智能源排序 - 自动根据权威性、时效性和可信度对来源进行评分
  • 去重 - 移除重复的URL和相似的内容
  • 基于代理的综合 - 利用现有的Claude会话来综合研究发现
  • 焦点领域分析 - 提供特定研究主题方面的专门分析
  • 质量指标 - 跟踪来源多样性、权威性和内容新鲜度

快速开始

先决条件

  • Node.js 18或更高版本
  • 启用了自定义搜索API的Google云平台账户
  • Google自定义搜索引擎ID

安装

# 克隆仓库
git clone <repository-url>
cd Google-Research-MCP

# 安装依赖
npm install

# 构建项目
npm run build

配置

在项目根目录创建一个.env文件:

GOOGLE_API_KEY=your_google_api_key
GOOGLE_SEARCH_ENGINE_ID=your_custom_search_engine_id

注意: 不需要Anthropic API密钥。服务器使用基于代理的综合,利用您现有的Claude会话。

运行服务器

# 启动v3服务器(推荐)
npm run start:v3

# 对于HTTP模式
npm run start:v3:http

预期输出:

============================================================
Google Research MCP Server v3.0.0 (增强版)
============================================================
✓ 源质量评估
✓ 去重
✓ AI综合:代理模式(Claude将启动代理)
  └─ 不需要API密钥 - 使用您的现有Claude会话
✓ 焦点领域分析
✓ 增强的错误处理
✓ 缓存元数据
============================================================
服务器正在STDIO上运行

功能

核心能力

1. 高级Google搜索

  • 带质量评分的全文搜索
  • 域名过滤和日期限制
  • 结果分类(学术、官方文档、新闻、论坛等)
  • 结果自动去重
  • 来源权威性排名

2. 内容提取

  • 从网页中干净地提取内容
  • 多种输出格式(Markdown、HTML、纯文本)
  • 可配置的预览长度
  • 批量提取支持(最多5个URL)
  • 自动内容总结

3. 研究综合

  • 基于代理的研究分析
  • 综合来源合成
  • 焦点领域分解
  • 矛盾检测
  • 可操作建议
  • 质量指标报告

研究深度级别

深度来源分析使用案例
基础3快速概览,3-5个发现快速比较,初步研究
中级5综合分析,5-7个发现标准研究任务
高级8-10深入分析,7-10个发现,矛盾决策制定,全面审查

使用示例

基础研究

research_topic({
  topic: "WebAssembly性能优化",
  depth: "基础"
})

返回:

  • 3个高质量来源
  • 简要概述(2-3段落)
  • 3-5个关键发现
  • 质量指标

全面研究与焦点领域

research_topic({
  topic: "Kubernetes安全",
  depth: "高级",
  focus_areas: ["RBAC", "网络策略", "Pod安全"],
  num_sources: 8
})

返回:

  • 8个权威来源
  • 深入执行摘要
  • 7-10个详细发现
  • 来源中的共同主题
  • 每个焦点领域的专门分析
  • 来源之间的矛盾
  • 可操作建议
  • 综合质量指标

目标搜索

google_search({
  query: "Docker容器安全性最佳实践",
  num_results: 10,
  dateRestrict: "y1",  // 仅限去年
  site: "github.com"   // 限制到GitHub
})

返回:

  • 带质量评分的结果
  • 去重报告
  • 来源类型分类
  • 权威评级

内容提取

extract_webpage_content({
  url: "https://kubernetes.io/docs/concepts/security/",
  format: "markdown",
  max_length: 5000,
  preview_length: 300
})

返回:

  • 清洁提取的内容
  • 元数据(标题、描述、作者)
  • 字数统计
  • 可配置预览
  • 缓存信息

代理模式

工作原理

代理模式是默认的综合方法。它不需要单独的Anthropic API密钥,而是利用您现有的Claude会话:

  1. 研究收集 - MCP服务器搜索、去重并排名来源
  2. 内容提取 - 从顶级来源完全提取内容
  3. 代理提示生成 - 将所有研究数据打包成结构化提示
  4. 代理启动 - Claude Code自动启动带有研究数据的代理
  5. 综合 - 代理分析来源并生成综合报告

优点

  • 无需额外API密钥 - 使用您现有的Claude订阅
  • 全上下文 - 代理可以访问对话历史
  • 透明过程 - 实时查看代理分析
  • 相同质量 - 使用您已经在使用的Claude模型

替代方案:直接API模式

对于自动化工作流或脚本,您可以使用直接API模式:

# .env
ANTHROPIC_API_KEY=your_anthropic_api_key
USE_DIRECT_API=true

这绕过了代理模式,并直接从MCP服务器调用Anthropic API。

架构

服务

src/
├── google-search-v3.ts              # 主MCP服务器(v3)
├── services/
│   ├── google-search.service.ts     # Google自定义搜索集成
│   ├── content-extractor.service.ts # 网页内容提取
│   ├── source-quality.service.ts    # 来源排名和评分
│   ├── deduplication.service.ts     # 重复检测
│   └── research-synthesis.service.ts # 基于代理的综合
└── types.ts                          # TypeScript接口

数据流

搜索查询 → Google API → 结果
                              ↓
                         去重
                              ↓
                         质量评分
                              ↓
                         内容提取
                              ↓
                         代理综合
                              ↓
                    综合研究报告

API参考

工具

google_search

使用高级过滤和质量评分搜索Google。

参数:

  • query (字符串,必需) - 搜索查询
  • num_results (数字,可选) - 结果数量(默认:5,最大:10)
  • site (字符串,可选) - 限制到特定域名
  • language (字符串,可选) - ISO 639-1语言代码
  • dateRestrict (字符串,可选) - 日期过滤器(例如,“m6”表示过去6个月)
  • exactTerms (字符串,可选) - 精确短语匹配
  • resultType (字符串,可选) - 按类型过滤(图像、新闻、视频)
  • page (数字,可选) - 分页
  • sort (字符串,可选) - 按相关性或日期排序

返回:

  • 带质量评分的排名搜索结果
  • 去重统计
  • 来源分类
  • 分页信息
  • 缓存元数据

extract_webpage_content

从网页中提取干净的内容。

参数:

  • url (字符串,必需) - 目标URL
  • format (枚举,可选) - 输出格式:markdown、html、text(默认:markdown)
  • full_content (布尔值,可选) - 返回完整内容(默认:false)
  • max_length (数字,可选) - 最大内容长度
  • preview_length (数字,可选) - 预览长度(默认:500)

返回:

  • 提取的内容
  • 元数据(标题、描述、作者)
  • 统计数据(字数、字符数)
  • 内容摘要
  • 缓存信息

extract_multiple_webpages

批量提取多个URL的内容(最多5个)。

参数:

  • urls (数组,必需) - URL数组(最多5个)
  • format (枚举,可选) - 输出格式

返回:

  • 每个URL的提取内容
  • 提取失败的错误详情
  • 缓存元数据

research_topic

全面研究,带AI综合。

参数:

  • topic (字符串,必需) - 研究主题
  • depth (枚举,可选) - 分析深度:基础、中级、高级(默认:中级)
  • num_sources (数字,可选) - 来源数量(默认:根据深度变化)
  • focus_areas (数组,可选) - 要分析的具体方面

返回:

  • 执行摘要
  • 带引用的关键发现
  • 共同主题
  • 焦点领域分析(如果指定)
  • 来源之间的矛盾
  • 建议
  • 质量指标(来源多样性、权威性、新鲜度)
  • 带质量评分的来源列表

配置选项

环境变量

变量必需默认描述
GOOGLE_API_KEY-Google自定义搜索API密钥
GOOGLE_SEARCH_ENGINE_ID-自定义搜索引擎ID
ANTHROPIC_API_KEY-仅用于直接API模式
USE_DIRECT_APIfalse启用直接API模式
MCP_TRANSPORTstdio传输模式:stdio或http
PORT3000HTTP模式端口

性能

响应时间

操作典型持续时间备注
google_search1-2秒包括质量评分和去重
extract_webpage_content2-3秒每个URL
research_topic (基础)8-10秒3个来源,带代理综合
research_topic (中级)12-15秒5个来源,带综合分析
research_topic (高级)18-25秒8-10个来源,带深入分析

质量改进对比v2

指标v2v3改进
摘要质量2/109/10350%
来源多样性未跟踪优化新增
重复移除0%~30%新增
来源排名随机按质量新增
焦点领域支持通用专用新增
错误帮助性3/109/10200%

故障排除

代理模式无法工作

症状: 研究返回基本拼接而不是综合

解决方案:

  1. 验证服务器启动时显示“代理模式”
  2. 检查响应中是否有 [AGENT_SYNTHESIS_REQUIRED]
  3. 确保使用v3:npm run start:v3
  4. 重新构建:npm run build

质量评分缺失

症状: 搜索结果没有显示质量评分

解决方案:

  1. 确认运行的是v3,而非v2
  2. 检查服务器启动输出
  3. 确认没有TypeScript编译错误

没有找到结果

解决方案:

  1. 验证Google API密钥有效
  2. 检查自定义搜索引擎ID
  3. 确保搜索引擎已启用索引
  4. 尝试更广泛的搜索词

文档

版本历史

v3.0.0(当前)

  • 基于代理的综合(无需API密钥)
  • 源质量评估和排名
  • 综合去重
  • 焦点领域分析
  • 带建议的增强错误处理
  • 缓存元数据透明
  • 一致的预览长度
  • 研究深度区分

v2.0.0

  • HTTP传输支持
  • 批量网页提取
  • 基础研究综合
  • 内容分类

v1.0.0

  • 初始发布
  • Google自定义搜索集成
  • 基础内容提取

贡献

欢迎贡献。请确保:

  1. 代码遵循现有的风格约定
  2. 所有测试通过:npm run build
  3. 更新文档
  4. 提交消息描述清晰

许可

详见LICENSE文件。

支持

如有问题、疑问或功能请求,请在GitHub上打开一个issue。

致谢

  • Google自定义搜索API - 搜索功能
  • Anthropic Claude - AI驱动的研究综合
  • Mozilla Readability - 内容提取
  • MCP SDK - 模型上下文协议集成

状态: 生产就绪 版本: 3.0.0 最后更新: 2025-11-07