桃子桃子 AI 快讯
返回首页
工具

TinySearch:为本地 AI 代理打造的轻量级 MCP 网页研究工具

TinySearch 是一款开源自托管的 MCP 服务器,为 Cursor、Cline 等本地 AI 代理提供搜索、抓取…

2026.06.30 · 周二4 分钟阅读评分 42
评分细项加权总分 42
重要性
35
新颖性
50
影响面
30
可信度
60
实质性
55

TinySearch 是一款面向本地 AI 代理的自托管网页研究工具,以 MCP(Model Context Protocol)服务器的形式提供搜索、抓取、重排序与片段抽取能力,可与 Cursor、Cline、Roo Code、Claude Desktop 等主流 MCP 客户端集成。项目已在 GitHub 开源,配套提供 Docker 镜像与本地源码两种运行方式。

核心能力

TinySearch 的设计目标是让本地 AI 代理获得「有据可查」的网页研究能力,而不是把整页文本塞入上下文窗口。它默认暴露三个 MCP 工具:

  • research(query):用于发现相关 URL,返回经过重排序的候选页面。
  • scrape_url(url, query):当用户已提供 URL,或 research 选定目标后,对指定页面进行抓取与片段抽取。
  • get_current_datetime():在涉及时间敏感的检索前先获取当前时间。

工具调用结束后,服务器会在 MCP 的 answer 字段中返回一个「基于源文」的提示词,客户端模型据此撰写最终回复并附带来源引用。

技术架构

TinySearch 的工作流程分为「搜索选页」与「抓取构句」两个阶段:

  • 搜索阶段:以 SearXNG 为默认搜索引擎,配置 DuckDuckGo HTML 作为回退;候选文档经过 HTTP 过滤后,使用 dense embedding + BM25 加权 RRF(倒数秩融合)进行重排序。
  • 抓取阶段:通过 crawl4ai 并行抓取保留的 URL,输出 Markdown 后切分片段,再次以 RRF 融合排序,并按来源配额去重与补齐,最终拼装成带源引用的提示词。

默认使用本地 ONNX embeddings,开发者也可替换为任何兼容 OpenAI 的 embedding API。

部署与运行

项目支持三种部署形态:

  • Docker Compose 快速启动:从 GitHub 仓库直接加载 compose.quickstart.yaml,自动拉取 marcellm01/tinysearch:latest 镜像,默认以 Streamable HTTP 在 8000 端口提供 /mcp 端点。
  • Docker 持久化部署:通过 Docker volume 缓存已下载的模型,并挂载本地 config 文件(research_config.json),可在其中配置 blocked_domains 等参数。
  • 源码运行:克隆仓库后创建 venv,安装依赖即可以 stdio MCP 方式被客户端拉起,适合需要检查或修改代码的用户。

镜像同时发布 linux/amd64 与 linux/arm64 架构的版本,标签遵循 vX.Y.Z 语义化版本规则。

适用场景

项目作者将使用场景定位为:本地 AI 代理、原型验证、个人工作流以及对「源可追溯」有要求的小型系统。对于不希望依赖托管服务、需要本地完成检索—引用闭环的开发者而言,TinySearch 提供了一个轻量、可自托管的替代方案。仓库还附带 agentic_coding_templates/global-rules-recommended.md,用于指导 Cline、Roo Code 等编码代理仅在确实需要时才调用检索工具。

信源