网页搜索 MCP 服务器
MCP 服务器提供 Google 搜索功能和网页内容浏览功能,并具有高级机器人检测规避功能。
特征
具有高级过滤功能的 Google 自定义搜索
使用 markdown 转换查看网页内容
速率限制和缓存
浏览器实例池
使用 rebrowser-puppeteer 规避机器人检测
Related MCP server: SEO AI Assistant
先决条件
Bun 运行时 v1.0 或更高版本
Google API 凭证(API 密钥和搜索引擎 ID)
安装
# Install dependencies
bun install
# Build the TypeScript files
bun run build配置
Cookie设置
对于经过身份验证的站点访问,您需要:
安装“本地获取 cookies.txt” Chrome 扩展程序
访问您想要验证的网站并登录
使用扩展程序以 JSON 格式导出您的 Cookie
将导出的 cookies 文件存储在安全的位置
将
BROWSER_COOKIES_PATH环境变量设置为 cookies 文件的绝对路径
MCP 服务器配置
将服务器配置添加到您的 MCP 设置文件:
对于 Cline:
%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json对于 Claude 桌面:
MacOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"web-search": {
"command": "bun",
"args": [
"run",
"/ABSOLUTE/PATH/TO/web_search_mcp/dist/index.js"
],
"env": {
"GOOGLE_API_KEY": "your_api_key",
"GOOGLE_SEARCH_ENGINE_ID": "your_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",
"REBROWSER_PATCHES_RUNTIME_FIX_MODE": "addBinding",
"REBROWSER_PATCHES_SOURCE_URL": "jquery.min.js",
"REBROWSER_PATCHES_UTILITY_WORLD_NAME": "util",
"REBROWSER_PATCHES_DEBUG": "0",
"BROWSER_COOKIES_PATH": "C:\\path\\to\\cookies.json",
"LOG_LEVEL": "info",
"NO_COLOR": "0",
"BUN_FORCE_COLOR": "1",
"FORCE_COLOR": "1"
}
}
}
}将/ABSOLUTE/PATH/TO/web_search_mcp替换为服务器目录的绝对路径。
日志配置
以下环境变量控制日志记录行为:
LOG_LEVEL:设置日志级别(错误、警告、信息、调试)。默认值:信息NO_COLOR:设置为“1”时禁用彩色输出BUN_FORCE_COLOR:控制 Bun 运行时的彩色输出(设置为“0”以禁用)FORCE_COLOR:全局控制彩色输出(设置为“0”以禁用)
避免机器人检测
该服务器使用 rebrowser-puppeteer 来避免机器人检测:
运行时启用泄漏预防:
使用 addBinding 技术来避免 Runtime.Enable 检测
适用于 Web Worker 和 iframe
保持对主要世界背景的访问
源 URL 屏蔽:
将 Puppeteer 的 sourceURL 更改为看起来像合法脚本
有助于避免被自动化工具检测到
实用世界名称:
使用通用实用程序世界名称
通过世界名称模式防止检测
浏览器启动配置:
禁用自动化标志
使用优化的 Chrome 参数
配置视口和窗口设置
与 Claude Desktop 一起使用
确保已安装 Claude Desktop 并更新至最新版本
打开您的 Claude Desktop 配置文件:
MacOS/Linux:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
按照上面的配置部分所示添加服务器配置。
重启Claude桌面
寻找锤子图标
确认工具可用
可用工具
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;
}
}故障排除
Claude 桌面集成问题
检查日志:
# MacOS/Linux tail -n 20 -f ~/Library/Logs/Claude/mcp*.log # Windows type %APPDATA%\Claude\Logs\mcp*.log常见问题:
服务器未显示:检查配置文件语法和路径
工具调用失败:检查服务器日志并重新启动 Claude Desktop
路径问题:确保使用绝对路径
有关更详细的故障排除,请参阅MCP 调试指南。
发展
# Run in development mode with watch
bun --watch run dev
# Run tests
bun run test
# Run linter
bun run lint重要提示
机器人检测:
机器人检测规避功能有助于防止最常见的检测方法
然而,可能需要采取适当的代理和用户代理等额外措施
一些网站可能仍会通过其他方式检测自动化
表现:
浏览器实例被池化并重用
自动清理空闲浏览器
资源限制防止过载
执照
麻省理工学院
Appeared in Searches
- A server for finding rental listings on platforms like Facebook, Craigslist, Zillow, and Realtor.com
- A database for searching medical and scientific research articles
- An overview or guide to Search Engine Optimization (SEO)
- Techniques for Scraping Dynamic Websites with JavaScript and Handling CAPTCHA or Proxy Issues
- A search engine with accurate and authoritative search functionality