使用说明
项目简介
Web Search MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在为大型语言模型 (LLM) 客户端提供网页搜索和网页内容浏览能力。它集成了 Google Custom Search API,并采用多种技术来规避Bot检测,确保在各种网站上稳定抓取信息。此服务器可以与兼容 MCP 协议的 LLM 客户端(如 Claude Desktop 或 Cline)配合使用,扩展 LLM 的信息获取和处理能力。
主要功能点
- Google Custom Search: 利用 Google Custom Search API 进行强大的网页搜索,支持关键词过滤、域名限定、结果数量控制和安全搜索等高级选项。
- 网页内容浏览: 能够抓取指定 URL 的网页内容,并将其转换为 Markdown 格式,方便 LLM 理解和处理。
- Bot 检测规避: 采用 rebrowser-puppeteer 技术,包括运行时泄漏预防、Source URL 伪装、Utility World Name 混淆等多种手段,最大限度地减少被网站识别为 Bot 的风险。
- 速率限制和缓存: 内置速率限制机制,防止滥用,同时使用缓存技术,提升性能并减少 Google API 的调用次数。
- 浏览器实例池: 通过维护浏览器实例池,高效管理和复用浏览器资源,提升并发处理能力。
安装步骤
- 环境准备: 确保已安装 Bun 运行时 v1.0 或更高版本。
- 获取 Google API 凭据: 你需要拥有 Google API 密钥 (API Key) 和 Google Search Engine ID,请参考 Google Custom Search API 的文档获取。
- 安装依赖: 打开终端,进入项目仓库目录,运行命令 'bun install' 安装项目依赖。
- 构建项目: 运行命令 'bun run build' 构建 TypeScript 代码。
服务器配置
MCP 服务器需要配置到 MCP 客户端中才能使用。以下是配置 Web Search MCP Server 的 JSON 格式配置信息,你需要将其添加到你的 MCP 客户端配置文件中。请务必根据你的实际安装路径修改 'args' 中的路径,并将 'env' 中的 Google API 密钥和搜索引擎 ID 替换为你自己的凭据。
{ "mcpServers": { "web-search": { "command": "bun", "args": [ "run", "/ABSOLUTE/PATH/TO/web_search_mcp/dist/index.js" // 这里替换为你的 web_search_mcp 项目 dist 目录下的 index.js 文件的绝对路径 ], "env": { "GOOGLE_API_KEY": "YOUR_GOOGLE_API_KEY", // 替换为你的 Google API Key "GOOGLE_SEARCH_ENGINE_ID": "YOUR_GOOGLE_SEARCH_ENGINE_ID", // 替换为你的 Google Search Engine ID "MAX_CONCURRENT_BROWSERS": "3", // 最大并发浏览器实例数,根据你的硬件配置调整 "BROWSER_TIMEOUT": "30000", // 浏览器操作超时时间,单位毫秒 "RATE_LIMIT_WINDOW": "60000", // 速率限制窗口大小,单位毫秒 "RATE_LIMIT_MAX_REQUESTS": "60", // 速率限制窗口内最大请求数 "SEARCH_CACHE_TTL": "3600", // 搜索结果缓存时间,单位秒 "VIEW_URL_CACHE_TTL": "7200", // 网页浏览结果缓存时间,单位秒 "MAX_CACHE_ITEMS": "1000", // 最大缓存条目数 "BROWSER_POOL_MIN": "1", // 浏览器实例池最小实例数 "BROWSER_POOL_MAX": "5", // 浏览器实例池最大实例数 "BROWSER_POOL_IDLE_TIMEOUT": "30000", // 浏览器实例空闲超时时间,单位毫秒 "BROWSER_COOKIES_PATH": "/path/to/cookies.json" // 可选:用于认证网站的 cookies.json 文件路径 } } } }
注意:
- '/ABSOLUTE/PATH/TO/web_search_mcp' 需要替换为你实际存放 'web_search_mcp' 项目的绝对路径。
- 'YOUR_GOOGLE_API_KEY' 和 'YOUR_GOOGLE_SEARCH_ENGINE_ID' 需要替换为你自己的 Google API 凭据。
- '/path/to/cookies.json' 是可选的,如果需要访问需要登录的网站,你需要配置 cookies 文件路径。你可以使用 Get cookies.txt LOCALLY Chrome 扩展导出 cookies 文件。
基本使用方法
配置完成后,在你的 MCP 客户端中,你就可以使用 'web-search' 服务器提供的工具了。
- 搜索工具 (search): 用于执行 Google 搜索。
- 工具名称: 'search'
- 参数示例:
{ "query": "最新的AI技术发展", "resultCount": 5, "safeSearch": true }
- 网页浏览工具 (view_url): 用于浏览指定 URL 的网页内容。
- 工具名称: 'view_url'
- 参数示例:
{ "url": "https://www.example.com", "includeImages": true, "formatCode": true }
具体工具的调用方式和参数使用请参考你的 MCP 客户端的使用文档。例如,在 Claude Desktop 中,你可能可以使用 '@web-search.search' 或 '@web-search.view_url' 来调用这些工具。
信息
分类
网页与API