你是否曾经希望AI不仅能告诉你搜索结果的链接,还能直接读取链接里的内容,并基于全文回答你的问题?如果它还能像一位专业研究员一样,使用高级搜索语法精确锁定你需要的PDF文档或特定网站的信息,是不是听起来更像一个理想的研究助理?这正是mcp-server-serper所实现的能力。
mcp-server-serper是一个基于TypeScript的模型上下文协议服务器,它通过集成Serper API,为你提供了强大的网页搜索和内容抓取能力。与许多其他搜索工具不同,它不仅仅返回链接和摘要,还能根据指令抓取指定网页的完整内容,让你的AI真正能够“读”到你指定的文章、文档或论坛帖子。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | mcp-server-serper |
| GitHub地址 | https://github.com/marcopesani/mcp-server-serper |
| 项目描述 | Serper MCP Server supporting search and webpage scraping |
| 作者 | marcopesani |
| 开源协议 | MIT License |
| 开源状态 | 公开状态 |
| Languages | TypeScript, JavaScript |
| 支持平台 | Windows / macOS / Linux / Web |
| 最后更新 | 2026-04-12 |
一、项目介绍
mcp-server-serper的核心是两个强大而互补的工具:google_search和scrape。
google_search工具并非简单的关键词查询。它利用Serper API,返回结构极其丰富的搜索结果。除了标准的“自然搜索结果”列表,它还能提供“知识图谱”信息(如一个实体的简介、图片)、用户常问的问题列表,以及相关的搜索建议。更重要的是,它完全支持谷歌的高级搜索语法。你可以使用site:限定域名,用filetype:搜索特定格式的文件,用before:和after:限定时间范围,甚至使用exact进行精确短语匹配。
scrape工具则是这个服务器的另一大王牌。当你的AI找到一个感兴趣的网页链接后,它可以调用这个工具,像浏览器一样“打开”该网页,并智能地提取出干净的、适合阅读的内容。它能获取页面的纯文本、可选的Markdown格式、JSON-LD结构化数据和头部元信息。这意味着AI可以基于某篇文章的全文内容来回答你的问题,而不是只依赖一个摘要。
二、核心优势
搜索与抓取的完美闭环:这是该项目最独特的优势。许多MCP服务器只提供搜索,返回列表后就结束了。而mcp-server-serper构建了一个完整的“发现-理解”工作流:先用google_search在海量信息中发现线索,再用scrape深入理解线索指向的内容。你的AI可以真正做到从搜索到分析的全流程自动化。
企业级的搜索能力:基于Serper API,它提供的是谷歌搜索的官方数据通道,结果质量、准确性和广度都有保障。相比一些逆向工程或不稳定的免费搜索方案,Serper API稳定、快速,并且提供了丰富的结构化数据(如知识图谱),这些都是普通网页抓取难以获取的。
强大的高级搜索语法:它不只是把关键词传给谷歌。你可以像在谷歌搜索框里一样,使用site:github.com mcp server来只搜GitHub,或者用filetype:pdf "machine learning"来查找PDF文档。这种精细化的控制力,让你能进行高度定向的信息挖掘。
开箱即用的内容抓取:scrape工具不是简单的下载网页源码,而是经过智能解析,自动去除了导航栏、广告、页脚等噪音内容,返回文章的主体。它还能保留文档结构(如标题、段落),并提取出对搜索引擎优化非常有用的元数据和JSON-LD数据。
三、适用场景
场景一:深度研究助手。当你要深入调研一个主题时,可以让AI先搜索,然后自动抓取排名靠前的几个结果进行全文分析。例如:“搜索‘2026年Serverless架构最佳实践’,然后抓取搜索结果中前3个页面的全文内容,最后帮我总结它们共同提到的核心挑战。”
场景二:技术文档问题解答。你可以让AI针对特定的技术栈进行搜索和抓取。“搜索‘LangChain LCEL语法’的官方文档,抓取内容后告诉我如何构建一个简单的RAG链。” AI可以找到文档链接,抓取内容,然后基于准确的官方文档回答你。
场景三:竞争情报分析。让AI搜索你的竞争对手或行业关键词,然后抓取它们的特定页面(如产品页、博客),分析其产品特性、定价策略或内容主题。“请搜索‘人工智能写作助手’的主要产品,然后抓取这些产品官网的‘功能’页面,对比它们的特色功能差异。”
场景四:内容验证与事实核查。当AI根据自身知识给出一个观点时,你可以要求它联网验证。“请搜索‘Python 3.12中关于f-string的最新改进’,并抓取Python官方的whatsnew页面内容,核实一下刚才你说的特性是否准确。” 这能极大地提高信息的可靠性。
场景五:自动化内容监测。配合定时任务,你可以定期让AI搜索特定关键词,抓取新出现的网页内容,然后生成摘要或报告。例如,每天早上8点,搜索并抓取“大语言模型 新论文”的前5个结果,帮你时刻跟踪前沿动态。
四、安装教程
使用mcp-server-serper前,你需要一个Serper API密钥。Serper是一项付费服务,但通常注册时会提供一定额度的免费试用积分。
第一步:获取Serper API密钥
访问 Serper 官网,注册一个账号。登录后,在仪表盘中你会看到你的API密钥。复制并妥善保存它。
第二步:配置你的MCP客户端
我们以Claude Desktop为例。找到其配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
使用文本编辑器打开该文件,添加以下配置。请务必将your_api_key_here替换为你的真实Serper API密钥。
{
"mcpServers": {
"serper-search": {
"command": "npx",
"args": ["-y", "serper-search-scrape-mcp-server"],
"env": {
"SERPER_API_KEY": "your_api_key_here"
}
}
}
}第三步:重启并验证
保存配置文件,然后完全退出你的MCP客户端并重新启动。在新的对话中,尝试提问:“请帮我用谷歌搜索一下‘MCP协议的最新进展’,只返回前5个结果。”
如果配置成功,AI会调用google_search工具,并返回结构化的搜索结果。你可以进一步让它抓取某个结果链接:“请抓取第一个结果链接的全文内容,并总结核心观点。”
五、使用示例
配置完成后,你就可以像指挥一个全能研究员一样,指挥你的AI进行搜索和深入阅读。
示例一:基础搜索与高级语法
你问:“请搜索‘site:github.com mcp-server’这个关键词,帮我看看有哪些有趣的MCP服务器项目。”
AI会调用google_search,并正确使用高级语法site:来限制搜索结果。
示例二:搜索并抓取分析
你问:“搜索‘2025年WebAssembly发展趋势’,然后抓取搜索结果中第一个链接的全文,并用中文总结这篇文章的三大核心论点。”
AI会先执行搜索,获得第一个链接,然后调用scrape工具抓取该链接的完整内容,最后基于全文进行总结。这个过程完全自动化。
示例三:利用知识图谱信息
你问:“帮我搜索‘Anthropic公司’,并告诉我它的知识图谱信息里显示的总部在哪里。”
AI会调用google_search,搜索结果中会包含一个knowledgeGraph字段。AI能从该字段中提取出地点的具体信息,而不仅仅是看网页摘要。
示例四:时间限定搜索
你问:“搜索过去一周内,关于‘TypeScript 5.5’的相关文章,并抓取其中一篇看起来最权威的。”
AI可以使用after:高级语法(例如after:2026-04-19)来限定时间范围,然后进行搜索和抓取。
示例五:内容对比抓取
你问:“分别搜索并抓取‘React’和‘Vue’的官方文档首页,对比它们入门示例的复杂程度。”
AI会进行两次独立的“搜索+抓取”工作流,然后将两份全文内容进行对比分析。
六、常见问题
问题一:搜索时提示“API密钥无效”或返回错误。
解决方案:请仔细检查你在配置文件中填写的SERPER_API_KEY是否正确,注意不要有多余的空格或引号。同时,登录Serper官网,确认你的账户状态正常,API密钥没有过期,并且账户内有足够的积分或已绑定有效的支付方式。免费试用额度用完后,API将停止响应。
问题二:scrape工具抓取某些网页时失败或内容混乱。
解决方案:scrape工具的原理是模拟浏览器请求并解析HTML。对于需要登录才能访问的页面(如Facebook帖子)、大量依赖JavaScript动态渲染的单页应用,或者有严格反爬机制的网站,抓取可能会失败或只得到不完整的内容。对于这类网站,可以尝试寻找其“打印”版本或RSS订阅源。通常,新闻、博客和技术文档的抓取成功率非常高。
问题三:高级搜索语法似乎不生效。
解决方案:请确认你使用语法时的格式完全正确。例如,site:example.com(无空格),filetype:pdf。多个条件可以用空格组合。你可以先在谷歌搜索框中测试你的语法是否能返回预期结果,然后再让AI通过服务器尝试。另外,某些语法组合可能超出免费API的支持范围。
问题四:搜索结果的“知识图谱”信息有时为空。
解决方案:知识图谱是谷歌针对特定实体(如名人、公司、地点)提供的结构化信息,并非对所有搜索词都有覆盖。对于长尾或非实体类关键词,knowledgeGraph字段可能不存在。这是正常现象,AI应该能优雅地处理这种情况,并继续依赖有机搜索结果。
问题五:我的搜索和抓取需求很大,有哪些成本优化建议?
解决方案:Serper API按查询次数收费。为了控制成本,可以采取几个策略:一是充分利用高级搜索语法,让第一次搜索就非常精准,减少无效搜索;二是信任scrape工具返回的Markdown或纯文本内容,避免为了获取非必要数据而重复抓取;三是考虑缓存常见问题的搜索结果,不要每次都向API请求。对于生产环境,可以与项目作者探讨是否有更优惠的套餐。
七、总结
mcp-server-serper是一个设计精良、功能强大的MCP服务器。它完美地诠释了“搜索只是开始”这一理念,通过将高质量的谷歌搜索与智能的网页抓取相结合,构建了一个完整的信息获取和分析流水线。
项目的最大亮点在于其闭环能力。AI不仅知道去哪里找信息,还能真正“阅读”和理解信息。这赋予了它远超普通聊天助手的自主研究能力。同时,它对高级搜索语法的深度支持,使其成为一个足以应对专业级信息检索需求的工具。
对于普通用户,它是让AI变得真正“有用”和“可信”的关键,因为它能基于最新、最具体的源内容来回答问题。对于开发者,它是构建下一代信息密集型AI应用的坚实基础。它的代码结构清晰,测试完善,也是一个很好的学习范例。
如果你希望你的AI助手从一个健谈的聊天对象,升级为一个能独立深入研究和分析问题的全能研究员,那么mcp-server-serper是你不可或缺的工具。
I love that I can use the `related:` operator. Great for discovering competitors when you only know one.
Excellent project! One minor feature request: support for scraping behind basic HTTP auth (username/password).
我结合`after:`语法做了一个“新发布”监控机器人,每天搜索特定领域的最新文章,抓取后发到群里。
The response times are impressive. Both search and scrape usually complete in under 3 seconds.
第一次配置时忘了装Node 18,折腾了一会儿。建议大家先`node --version`一下,省走弯路。