SurfSense 开放网络研究平台
通过统一 API 与 MCP,让智能体检索实时网络数据并产出带引用的研究成果。
README说明了云端、自托管、API密钥、OAuth连接器、外部数据源和自动化写入目标,且测试配置强制使用独立测试数据库;但未给出最小权限范围、逐次确认、数据保留/删除、密钥存储、隐私边界或连接器传输细节。自动化可写入Notion、Slack、Linear和Jira,却未展示预览、批准或影响控制。每日Watchtower自动更新可通过参数关闭,但未说明版本固定、回退或恢复流程。CI包含detect-secrets和Bandit,并使用锁文件及带版本的Actions,足以支持一般依赖安全措施,但扫描仅针对PR变更且没有漏洞响应或供应链策略。产品宣称生成带引用的回答,但所给文件没有展示引用实现或来源完整性保证。
单元和集成测试分别设有CI任务、PostgreSQL/pgvector服务及汇总门禁,质量工作流也覆盖后端和前端;这支持基本一致性和依赖可用性。不过没有测试结果、覆盖率或Agent行为契约可供静态核验,质量门禁还把取消或跳过视作非失败。README一方面宣称连接器速度快、确定性强且失败不计费,另一方面明确产品尚未准备好用于生产;所给源码无法化解这些主张。失败消息证据仅限CI中的通用报错,未展示面向用户或工具调用的结构化错误与恢复建议。
README清楚覆盖开发者、终端研究者、团队、自托管者及Claude/Cursor等Agent场景,并提供REST、MCP、云端、桌面端和多模型环境,因此受众与环境适配证据较强。它也区分浏览器Agent、抓取API、搜索API和市场型抓取器,并承认视频和播客能力较弱以及尚未生产就绪。扣分在于没有展示工具输入模式、触发条件、作用域约束、速率限制或歧义处理;定时和事件触发仅作功能描述。
README具有目录、功能分区、比较表、路线图、贡献入口、多语言导航及可复制的REST/MCP示例,信息架构完整。安装说明给出Docker前置条件、Linux/macOS和Windows命令、Watchtower退出参数及文档入口,但直接执行远程脚本且未在材料内展开手工验证、升级和故障排查。名称和接口示例总体稳定,仍缺正式兼容性承诺与FAQ。已明确“尚未准备好用于生产”并指出部分能力落后。根许可证清楚区分Apache-2.0与proprietary目录中的BSL 1.1,但未提供该子许可证正文,且与宽泛的“开源”表述存在限定。提供changelog、releases和路线图入口,但未展示版本策略。维护渠道存在,发布者身份及具体维护责任仍不明确。
材料描述了结构化JSON、带引用回答、报告、多种导出格式、播客、幻灯片、提醒及团队协作,输出覆盖面和可用性较好;统一REST/MCP接口和知识库相对于逐站点抓取具有可信的增量价值。成本说明包含按成功返回项目/页面计费、失败不收费、自托管关闭计费和免费额度。不过没有实际输出样例、质量指标、延迟测量、信用额度单价细节或与竞品比较的方法依据,因此不能给满分。
README把部分能力链接到连接器页面、文档、changelog、releases、路线图和依赖项目,并声称回答带引用;CI与测试夹具也能佐证项目确有测试结构。然而所给材料主要是一份营销型README,许多数值、竞品比较、性能、确定性和平台覆盖主张没有在提供的代码或测试中建立可追踪证据。比较表混合事实、评价和推断,虽有少数明确限定语,但缺乏系统的来源标注、交叉验证和事实/推断标签。
- 项目明确表示尚未准备好用于生产;在处理敏感、受监管或关键业务数据前,应单独审查认证、租户隔离、数据保留、删除和审计机制。
- 自动化能够向Notion、Slack、Linear和Jira写入,但材料未展示逐次确认、预览、幂等、补偿操作或回滚控制。
- 一键安装命令会直接执行远程脚本,并默认启用每日自动更新;部署前应固定修订、检查脚本和镜像,并制定可验证的回退方案。
- 对社交平台、搜索、地图、招聘和电商网站的抓取可能受平台条款、隐私规则和地区法律约束;材料未说明合规边界。
- 许可证是Apache-2.0与特定目录BSL 1.1的混合结构;在分发、托管或商业使用前需检查未提供的子目录许可证。
- 性能、确定性、竞品比较和引用质量主要是README主张,本次静态评估没有执行或独立验证。
这个 Agent 能做什么,适合哪些场景?
SurfSense 是一个可自托管的开放网络研究与知识工作区,也被定位为开源 NotebookLM 替代方案。它通过 REST API 和 MCP server 提供 Reddit、YouTube、Instagram、TikTok、Google Search、Google Maps、Indeed、Amazon、Walmart 及普通网页的数据连接器。研究结果可以进入内置知识库,供混合语义与全文检索、带引用问答、报告、播客、演示文稿和视频概览使用。平台还支持定时或事件触发的智能体流程,并可将结果写回 Notion、Slack、Linear 和 Jira。它既提供按量付费的云服务,也能通过 Docker 在自己的基础设施上运行;自托管版本关闭计费,但需要用户提供硬件和模型密钥。项目仍在积极开发,并明确表示尚未达到生产就绪状态。
用户或智能体先通过自然语言工作区、REST endpoint,或 MCP server 调用数据连接器;例如 Reddit 接口为 POST /workspaces/$WORKSPACE_ID/scrapers/reddit/scrape,MCP 则暴露 surfsense_reddit_scrape、surfsense_google_search 等原生工具。连接器读取公开帖子、评论、视频字幕、搜索结果、地点评价、职位和商品数据,Web Crawl 则把开放网页转换成结构化内容。智能体执行层提供重试、结构化输出和用量计量,并能把检索结果整理成带引用的简报或提醒。所得内容可进入知识库,与上传文件、Google Drive、OneDrive、Dropbox 或本地文件夹同步的数据一起接受混合检索和引用式问答。Deliverable studio 可生成并导出 PDF、DOCX、HTML、LaTeX、EPUB、ODT 或纯文本报告,还能制作播客、可编辑幻灯片、视频概览和 AI 图像。自动化可按时间表或事件运行完整智能体轮次,并把输出写回 Notion、Slack、Linear 或 Jira。
- 品牌研究人员需要汇总产品发布后一周内 Reddit 帖子与评论,并生成带出处的舆情简报。
- 本地商业分析师需要批量读取 Google Maps 地点、评分和评论,比较多家门店反复出现的投诉。
- 招聘或市场团队需要检索 Indeed 公开职位、薪资和完整描述,并将持续监测结果写入协作工具。
- 研究团队希望把 PDF、办公文档和云盘内容与实时网页资料放入同一知识库,进行带引用问答和报告导出。
- 开发者希望通过 MCP 把 Reddit、YouTube、搜索和网页抓取能力直接提供给 Claude、Cursor 或自有智能体框架。
- 有数据私有化要求的团队希望用 Docker 自托管研究平台,并通过 Ollama 或 vLLM 使用本地模型。
这个 Agent 有哪些优点和局限?
- 一个 REST API 和 MCP server 覆盖社交平台、搜索、地图、职位、电商及通用网页,并返回帖子、评论、字幕、评价等结构化数据。
- 不仅提供抓取接口,还把重试、结构化输出、计量、引用式知识库、报告生成和自动化组合成完整研究流程。
- 支持 Docker 自托管,且可通过 OpenAI 规范、LiteLLM、vLLM 和 Ollama 使用多种云端或本地模型。
- 可将实时网络发现与文件、云盘和本地文件夹内容统一检索,并输出多种文档格式、播客和可编辑演示文稿。
- 具备实时协作聊天、评论、提及及 Owner、Admin、Editor、Viewer 四级 RBAC。
- 项目明确表示尚未生产就绪;采用者需承担快速迭代、潜在故障和升级兼容风险。
- 云端连接器按返回条目或成功抓取页面计费;大规模持续监测可能产生不可忽略的用量成本。
- 自托管虽然关闭计费,但需要 Docker 基础设施、运维能力、硬件资源和用户自己的模型密钥。
- 仓库许可证字段为 NOASSERTION,所给材料没有明确许可证条款,组织在部署或再分发前需要单独核实。
- 部分输出能力仍落后于 NotebookLM;项目自己指出 NotebookLM 的视频和播客生成目前更好。
如何安装或部署这个 Agent?
自托管前需安装并运行 Docker Desktop。Linux/macOS 执行:
curl -fsSL https://raw.githubusercontent.com/MODSetter/SurfSense/main/docker/scripts/install.sh | bashWindows PowerShell 执行:
irm https://raw.githubusercontent.com/MODSetter/SurfSense/main/docker/scripts/install.ps1 | iex安装脚本默认配置 Watchtower,每日自动更新;如不需要,可加 --no-watchtower。自托管实例关闭计费,但智能体运行仍需要自备模型密钥。来源还提到 Docker Compose 和手动部署选项,但未在所给材料中列出完整命令。
如何使用这个 Agent?
调用 REST connector 前,准备 SurfSense API key、workspace ID 和实例的 API URL。首次 Reddit 调用示例:
curl -X POST "$SURFSENSE_API_URL/workspaces/$WORKSPACE_ID/scrapers/reddit/scrape" \
-H "Authorization: Bearer $SURFSENSE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"search_queries":["your brand"],"community":"SaaS","sort":"top","time_filter":"week"}'若通过 MCP 使用,在 Claude、Cursor 或自有框架中配置:
{"mcpServers":{"surfsense":{"url":"https://mcp.surfsense.com/mcp","headers":{"Authorization":"Bearer ${SURFSENSE_API_KEY}"}}}}
完成后,智能体即可把各连接器作为原生工具调用。云端使用方式是登录 surfsense.com,以自然语言要求智能体获取实时网络数据;新账户提供 5 美元免费额度且无需订阅。
这个 Agent 与同类方案有什么区别?
相较 Browserbase 和 Browser Use 一类浏览器智能体,SurfSense 面向只读研究时使用结构化连接器,避免让模型逐页决定点击路径;需要登录、点击或填写表单时,浏览器智能体仍更适合。相较 Firecrawl,SurfSense 强调返回平台原生的帖子、评论、字幕和评价结构,而非只给通用 Markdown。相较 Exa、Tavily 和 Parallel 等搜索 API,它能进一步读取 Reddit 评论、TikTok 反应、YouTube 字幕和 Google Maps 评价。相较 Apify 市场中架构与定价各异的 actors,它提供统一类型化 API、MCP server、智能体执行层和研究工作区。相较 Google NotebookLM,SurfSense 支持实时连接器、MCP、自托管、多模型、本地模型、自动化和实时聊天;但材料也明确承认 NotebookLM 当前的视频和播客生成更强。