Back to MCP directory
publicPublicdnsLocal runtime

web-search-server

一个提供谷歌搜索和网页内容查看功能的MCP服务器,具备高级反机器人检测规避能力,包含搜索过滤、缓存、浏览器池管理等特性。

article

README

🚀 网络搜索 MCP 服务器

这是一个强大的 MCP 服务器,可提供 Google 搜索功能与网页内容查看服务,还具备高级反机器人检测规避能力,能为您的网络数据处理提供安全、可扩展的解决方案。

🚀 快速开始

网络搜索 MCP 服务器是一个强大的工具,能够执行复杂任务,包括 Google 搜索、网页内容解析以及其他与互联网交互相关的操作。它专为集成到模型上下文协议(MCP)环境中设计,提供可扩展且安全的方式来处理在线数据。

✨ 主要特性

  • Google 自定义搜索:支持自定义搜索域和排除特定域名。
  • 网页内容查看:提取指定 URL 的内容,并支持多种格式化选项。
  • 速率限制与资源管理:通过浏览器实例池和自动清理空闲实例来优化性能。
  • 反机器人检测规避:集成高级技术以绕过常见反机器人检测机制。

📦 安装指南

先决条件

  1. Node.js 和 npm 需要安装到系统上。
  2. 确保已安装 typescript@types/node 包:
    npm install -g typescript @types/node --save-dev
    

安装步骤

# 克隆仓库
git clone https://github.com/your-repository.git
cd web-search-mcp-server

# 安装依赖项
npm install

📚 详细文档

配置

1. 创建配置文件

在项目根目录下创建 config.json 文件,并添加以下内容:

{
  "googleApiKey": "YOUR_GOOGLE_API_KEY",
  "proxySettings": {
    "http": "HTTP_PROXY_URL",
    "https": "HTTPS_PROXY_URL"
  },
  "browserOptions": {
    ".userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.128 Safari/537.36",
    "disableImages": false
  }
}

2. 设置环境变量

在终端中设置以下环境变量:

export MCP_SERVER_ENV=development

饼干设置

要使用饼干功能,请执行以下步骤:

  1. 下载并安装 Chrome 浏览器。
  2. 安装 uBlock Origin 扩展。
  3. 导出您的浏览器配置文件:
    chrome://settings/resetBrowser
    
  4. 将导出的配置文件路径设置为环境变量:
    export BROWSER_PROFILE=~/path/to/your/exported/profile
    

日志记录

  • 实时日志查看
    • 在 MacOS/Linux 上:
      tail -n 20 -f ~/Library/Logs/MCP/mcp*.log
      
    • 在 Windows 上:
      type %APPDATA%\Claude\Logs\mcp*.log
      

反机器人检测

核心功能

  • 浏览器池:通过复用浏览器实例来优化性能。
  • 请求频率控制:防止因请求过多而触发反机器人机制。
  • 规避技术
    • 动态超时调整
    • 随机用户代理
    • 模拟人类行为模式

常见问题

  1. 服务器未显示:
  • 检查配置文件语法和路径是否正确
  1. 工具调用失败:
  • 检查服务器日志并重新启动 Claude Desktop
  1. 路径问题:
  • 确保使用绝对路径

使用 Claude Desktop

配置步骤

  1. 打开 config.json 文件。
  2. 在工具列表中添加以下内容:
    {
      "name": "search",
      "description": "搜索互联网并返回结果"
    },
    {
      "name": "view_url",
      "description": "查看指定 URL 的内容并返回文本"
    }
    

确认集成

  1. 查看工具图标:
  • 在 Claude Desktop 中,确认锤子图标出现(参考图片)。

可用工具

1. 搜索工具

{
  name: "search",
  params: {
    query: string;
    trustedDomains?: string[];
    excludedDomains?: string[];
    resultCount?: number;
    safeSearch?: boolean;
    dateRestrict?: string;
  }
}

2. 查看 URL 工具

{
  name: "view_url",
  params: {
    url: string;
    includeImages?: boolean;
    includeVideos?: boolean;
    preserveLinks?: boolean;
    formatCode?: boolean;
  }
}

故障排除

  • 常见错误
    • 网络连接问题
    • 反机器人检测触发
    • 配置文件语法错误
  • 解决方法
    • 检查网络连接
    • 减慢请求频率
    • 确保配置文件正确

开发

项目结构

web-search-mcp-server/
├── src/                 # 核心源代码目录
│   ├── browser.ts      # 浏览器管理逻辑
│   ├── search.ts       # 搜索功能实现
│   └── view.ts         # 查看 URL 功能实现
├── config.json          # 项目配置文件
└── package.json         # 依赖管理文件

🔧 技术细节

反机器人检测

核心功能

  • 浏览器池:通过复用浏览器实例来优化性能。
  • 请求频率控制:防止因请求过多而触发反机器人机制。
  • 规避技术
    • 动态超时调整
    • 随机用户代理
    • 模拟人类行为模式

📄 许可证

MIT License

💻 使用示例

基础用法

# 克隆仓库
git clone https://github.com/your-repository.git
cd web-search-mcp-server

# 安装依赖项
npm install

高级用法

# 设置环境变量
export MCP_SERVER_ENV=development

📞 联系方式

  • 邮箱:contact@example.com
  • GitHub:https://github.com/your-repository

通过遵循上述步骤,您可以轻松设置和运行 Web 搜索 MCP 服务器,并将其集成到您的项目中。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client