这两天,我做了一个小工具:ferris-search。
一句话介绍:
它是一个用 Rust 写的 MCP Server,可以给 Claude Code、Cursor 这类 AI 编程工具提供联网搜索能力。
为什么要做这个?
因为很多人以为,AI 编程最大的问题是“模型不够聪明”。 但真用起来你会发现,很多时候最痛的不是这个。
而是:
它想查资料的时候,根本查不动。
比如:
- 想搜最新文档
- 想查 GitHub README
- 想看一篇技术文章
- 想找中文社区里的解决方案
理论上 AI 都该会。 但现实里,网络环境、代理、地区限制、工具兼容性,随便一个问题,都可能让“联网能力”直接失效。
于是我干脆自己写了一个。
ferris-search 是干嘛的?
它本质上不是“又一个搜索工具”。
它更像是一个给 AI 用的搜索中间层:
- AI 负责提问
- ferris-search 负责去搜
- 再把结果和正文拿回来喂给 AI
这样 Claude Code、Cursor 之类的工具,就不再完全依赖内置搜索,而是可以走你自己的搜索通道。
简单说就是:
给 AI 接一根你自己能控制的网线。
这个工具能干什么?
目前它支持多种搜索源,比如:
- Bing
- DuckDuckGo
- Brave
- Baidu
- CSDN
- 掘金
- 知乎
- LinuxDo
除了搜索结果,它还支持直接抓内容,比如:
- 网页正文
- GitHub README
- CSDN 文章
- 掘金文章
- 知乎回答
- LinuxDo 帖子
这件事很重要。
因为对 AI 来说,只拿到标题没什么用,拿到正文才有用。
为什么我用 Rust 写?
原因很简单: 我想要它足够轻,足够快,足够省心。
所以 ferris-search 的思路一直很明确:
- 单二进制
- 不依赖 Node.js
- 本地启动快
- 内存占用低
- 支持代理
- 适合直接挂到 MCP
换句话说,它不是一个“演示性质的玩具”,而是一个你真可以装进自己工作流里的小基础设施。
它解决的其实不是搜索问题,而是 AI 的“上下文获取问题”
现在大家都在说 AI 提效。
但很多人忽略了一件事:
AI 真正值钱的,不只是生成代码, 而是它能不能快速拿到正确的外部信息。
比如:
- 这个报错最新怎么解
- 某个库最近 API 怎么变了
- GitHub 上别人怎么讨论这个问题
- 中文社区有没有踩坑经验
如果它拿不到这些信息,再强的模型也只能硬猜。
所以我做 ferris-search,本质上是在补一块经常被忽视的基础设施:
让 AI 更稳定地接触外部世界。
这个项目最让我满意的一点:它很克制
我没有把它做成一个很重的平台。
没有搞特别复杂的架构, 也没有上来就做一堆炫技功能。
核心思路就三件事:
- 搜索
- 抓取
- 通过 MCP 暴露给 AI
因为这类工具最重要的,不是“功能看起来很多”, 而是:
装上就能跑,接上就能用。
谁会适合用它?
我觉得主要是三类人:
第一类,是 Claude Code / Cursor 重度用户。 你希望 AI 真能帮你查资料,而不是一本正经地胡说。
第二类,是 网络环境比较复杂的开发者。 代理、受限网络、内置搜索不稳定,这种场景会特别有感。
第三类,是 想给团队做内部 AI 工具链的人。 你完全可以在这个基础上继续接企业内部搜索、文档系统、知识库。
最后
我做 ferris-search,不是因为“搜索”这件事有多新。
恰恰相反,是因为它太基础了,基础到很多人默认它应该存在。 但一旦它缺席,AI 整体体验就会立刻掉一个档次。
所以这个项目本质上是在做一件小事:
让 AI 在需要联网的时候,别掉链子。
如果你也在折腾 Claude Code、Cursor、MCP, 或者你也受够了“AI 想查资料但连不上”的日常, 那 ferris-search 可能正好能帮上你。
开源地址:https://github.com/lispking/ferris-search
Ext Link: https://github.com/lispking/ferris-search
评论区
写评论好用
https://github.com/eouzoe/bose-search 挺好的 我也基於不爽claude code的原因寫了個搜尋工具 介紹一下
确实常遇到的问题,点赞!