CrawlForge MCP
首页Playground应用场景集成价格文档博客
在你的产品里内置 MCP server:五个决策
AI Engineering
返回博客
AI 工程

在你的产品里内置 MCP server:五个决策

C
CrawlForge Team
工程团队
2026年9月4日
阅读时长 7 分钟

本页内容

快速解答

把 MCP server 放进要交付给用户的产品里,和给自己的编辑器装一个完全是两回事:你要替每一位用户承担它的影响范围、单次成本和故障模式。免费的 Lighthouse 控制台 LightAudit Score 接入 CrawlForge 作为研究服务器,让它给出的 AI 修复建议引用真正打开过的页面。五个决策让它可以安全交付——服务器默认关闭且缺失时功能会诚实降级,二十九个 tools 中只开放十个而爬虫与批量任务一律拒绝,用户的 API key 从不经过应用本身,版本被锁定而不是在启动时由 npx 解析,任何在标准 .mcp.json 中声明的服务器都可以替换它。每次分析预算约 11 credits:一次搜索加三次页面读取。

给自己的编辑器加一个 MCP server,是五行配置的事,影响范围就是你自己这台机器。而把它放进别人运行的产品里则是另一种决策。你继承了这个服务器的权限、它的单次成本和它的故障模式,并且是替每一位用户承担;当它编造出一个来源时,那个假链接上署的是你产品的名字,不是模型的。

我们刚做完这件事。LightAudit Score 是一个免费开源的控制台,它对 localhost、staging 以及 VPN 后面那些 PageSpeed Insights 够不到的主机运行 Lighthouse。点开一个偏低的分数,AI 会读取真实的审计数据并给出按优先级排序的修复建议。只有在接入了研究用 MCP server 时,这些建议才会带引用——而 CrawlForge 就是被点名的那个选项。

这篇文章讲的是架构,不是推销。五个决策,每一个都会有人在你的安全评审上问到。

**LightAudit Score 即将发布。**仓库很快就会公开,公开时即为免费并采用 MIT 许可——无需注册账号、无需授权、不设用量上限。想在上线当天收到通知,到 lightauditscore.com 留下你的邮箱:只发一封邮件,内含仓库地址和快速上手指南,再无其他。

目录

  • 为什么 AI 功能需要一个研究服务器
  • 决策一:默认关闭,缺失时保持诚实
  • 决策二:二十九个 tools 里只开放十个
  • 决策三:用户的 key 绝不接触你的应用
  • 决策四:锁定版本,别在启动时解析
  • 决策五:点名一个服务器,兼容任何服务器
  • 每次分析的成本
  • 通用形态

为什么 AI 功能需要一个研究服务器

Lighthouse 给出 71 分,只告诉开发者哪里出了问题。它不会说四十项审计中该先动哪一项,更不会说为什么。这正是 AI 面板要填的空缺:读懂审计树,指出成因,把修复排出先后。

一旦这些修复建议开始引用 web.dev 或 developer.chrome.com,你面对的问题就与模型质量无关了。你要求模型给引用,它就会生成看起来合理的 URL,无论它是否真的打开过。你要求它别这么做,它大多数时候会照办——直到某一次没有照办,而那一次恰好就是客户点进去撞上 404、从此不再信任整个面板的时候。

研究服务器靠机制而不是靠指令来闭合这个环。模型只能引用它通过 tool 调用真正抓取过的来源,因为引用是由 tool 的返回结果拼装出来的,而不是来自模型对这个网页的记忆。这与通用网页数据服务器在尽职调查工作中发挥作用的可追溯性是同一种属性:价值不在数据本身,而在从结论回溯到页面的那条可审计路径。

决策一:默认关闭,缺失时保持诚实

研究服务器是设置里的一个开关,而且初始状态是关闭的。

关闭时,分析仅依据审计数据得出,结果会带上一个朴素的未进行网页研究标记。每一次分析还会标注产出它的提供方和模型。没有任何东西会悄悄降级,也不会为了填上本该是引用的位置而编造来源。

这是大多数团队做反了的决策。直觉是把集成设为必需,好让功能永远呈现最佳状态;后果却是你这个功能的可信度从此取决于第三方是否可达。应该让它可见地降级。看到未进行网页研究的用户,清楚知道自己在读什么。而看到一条后来被发现是编造的引用的用户,学到的关于你产品的东西要糟糕得多。

决策二:二十九个 tools 里只开放十个

CrawlForge 暴露二十九个 tools。LightAudit 的分析路径拿到其中十个:搜索、抓取、提取、摘要。站点爬虫、批量任务、浏览器自动化和深度研究一律直接拒绝。

原因是单次成本,不是疑神疑鬼。一次引用检索需要找到一个页面并读它。它不需要爬遍一个域名,而这个差别会体现在用户的账单上:

ToolCredits是否开放
fetch_url1是——原始 HTTP 读取
extract_text1是
extract_content2是——正文内容,去除模板
summarize_content4是
search_web5是——入口
crawl_deep4否——会走遍整个站点
batch_scrape5否——在 URL 列表上扇出
stealth_mode5否——会启动浏览器
deep_research10否——多源,且会自行扩展查询

deep_research 是最有启发的一个。就研究性问题而言,它是整个目录里最好的 tool,而它被拒绝了。一个在每个低分上都伸手去拿它的模型,会把 11 credits 的分析变成 10 credits 起步再加上扇出的分析,而点击分数环的那个人并没有要求做一个研究项目。你的 agent 最爱用的那个 tool,未必是你的产品该开放给它的 tool。

如果这篇文章你只带走一点:把你开放的 tools 逐个列出来。一个 MCP server 的目录代表的是它作者心目中的"有用",而与你这个功能的职责的交集,通常只有其中三分之一。

决策三:用户的 key 绝不接触你的应用

LightAudit 不向研究服务器转发任何东西。CrawlForge 用它自己的配置进行认证,那份配置由它自己的安装向导写入,因此用户的 API key 从不经过这个受益于它的应用。

这句话在安全评审里的分量,胜过任何篇幅的静态加密说辞,因为它是把问题消除掉而不是回答掉。你不是第三方凭据的保管人。你的数据库里没有会泄露的 key,日志里没有要脱敏的 key,支持包里没有 key,也不必为一个你无法控制的供应商写事件响应段落。

一般化的说法是:当一个集成能够自行完成带外认证时,就让它自己来。你的产品代用户保管的每一份凭据,都是你为了省掉他们一步配置而给自己揽下的风险。

决策四:锁定版本,别在启动时解析

几乎所有你会从 README 里复制的 MCP 配置都长这样:

Json
{
  "mcpServers": {
    "crawlforge": {
      "command": "npx",
      "args": ["-y", "crawlforge-mcp-server"],
      "env": {
        "CRAWLFORGE_API_KEY": "cf_live_YOUR_API_KEY_HERE"
      }
    }
  }
}

这对你自己的机器是正确配置,对要交付的产品则是错误配置。-y 会跳过安装确认,而一个不带版本号的包名会解析成启动那一刻的最新版本——这意味着你的客户明天运行的代码,是你团队里没有任何人读过的代码。这是一个伪装成便利参数的供应链决策。

把它锁定:

Json
{
  "mcpServers": {
    "crawlforge": {
      "command": "npx",
      "args": ["-y", "crawlforge-mcp-server@5.6.6"]
    }
  }
}

然后把版本升级挪进你常规的依赖评审流程,让人先读过 changelog,你的用户才会拿到新行为。这个做法的代价是每几周多一个 pull request。另一种做法的代价是一次你无法复现的线上事故,因为造成它的那个版本已经不是 latest 现在解析到的东西了。

决策五:点名一个服务器,兼容任何服务器

LightAudit 在文档里点名 CrawlForge,同时不捆绑分发任何东西。任何在标准 .mcp.json 中声明的研究服务器,都会被改为驱动。

这不是利他,而是你如何熬过一场采购谈判。一个买方无法替换的 MCP 依赖,在你将来参加的每一场企业评审里都是一道供应商锁定的问答题。因为 MCP 是协议而不是 SDK,遵守标准配置文件几乎不花你什么成本,却能把"你们被绑在哪家供应商上"变成"你们更喜欢哪家就用哪家"。

它同时也让你保持诚实。一个被点名却可以被替换的默认选项,必须靠实力持续保持是最优选择。

每次分析的成本

一次分析就是一次搜索加几次读取:

步骤ToolCredits
找到用于诊断的权威页面search_web5
读取其中三个extract_content × 36
合计11

分析结果与运行记录一同存储,因此重新打开报告不产生任何费用——第二个读同一份报告的开发者花费零 credits。新的 CrawlForge 账号有 1,000 免费 credits,无需绑卡,大约相当于九十次带引用的分析,足够在任何人做出采购决定之前用完。按 tool 计价见价格页。

这个数字要在接入服务器之前算清楚,而不是之后。你的功能开放了哪些 tools、以及它调用了多少次,是你客户账单上的两个变量,而第一个在设计阶段就已经定死了。

通用形态

去掉 Lighthouse 相关的细节,同样这四个问题适用于你放进交付产品中的任何 MCP server:

  1. **影响范围有多大?**逐个列出开放的 tools,其余按名字拒绝。
  2. **凭据由谁持有?**如果服务器能自行认证,就别替它保管。
  3. **单次成本是多少?**按用户的每一次操作算,不要按月算。
  4. **它不在时会怎样?**要可见地降级。缺失的功能还能补救;编造出来的功能补救不了。

这些都不是什么高深内容。它和你对热路径上任何第三方调用会采取的纪律是同一套——只不过在 MCP server 上往往被跳过,因为配置只有五行,感觉像改了个设置,而不像引入了一个依赖。

**LightAudit Score 即将发布。**它免费、采用 MIT 许可、完全在你自己的机器上运行,仓库很快就会公开。如果你想看到这套模式实际跑起来而不只是被描述出来,官网上有完整的功能说明和一份抢先体验名单,会在上线当天把链接发给你——而它点名的那个研究服务器,正是你刚刚读到的这一个。

亲自试一试——无需注册

在 Playground 中运行 CrawlForge 的 29 个抓取与提取工具中的任意一个,然后免费开始,获取 1,000 credits。

1,000 免费 credits • 一次性 • 无需信用卡

标签

mcparchitectureb2bcitationslighthouse

关于作者

C

CrawlForge Team

工程团队

我们正在打造功能最全面的 Web 抓取 MCP server。我们开发的工具帮助开发者为 AI 应用提取、分析和转换 Web 数据。

及时获取最新洞察

将教程、产品更新与 Web 抓取技巧直接发送到你的收件箱。

拒绝垃圾邮件,随时可取消订阅。

付诸实践

在任意 URL 上测试 CrawlForge 的工具——免费,无需注册。

本页内容

Frequently Asked Questions

LightAudit Score 现在可以用了吗?+

还不能——它即将发布。仓库很快会公开,在那之前官网上有一份抢先体验名单,会在上线当天把链接发给你。这篇文章描述的一切就是最终产品的工作方式:免费、采用 MIT 许可、运行在你自己的机器上,研究服务器默认关闭并放在设置里的一个开关后面。

我该在产品里内置 MCP server,还是直接调用 API?+

当调用方是一个自行决定用哪个 tool 的模型时,就内置 MCP server;当决定权在你自己的代码手里时,就调用 REST API。LightAudit 内置了服务器,是因为它的分析过程就是一个模型读取审计数据并选择要查什么;而一个总是先搜索再固定读三个页面的流水线,写成三个 HTTP 调用会更简单。这个协议的价值正在于让模型来选择,这也正是开放哪些 tools 如此重要的原因。

怎样阻止模型调用昂贵的 tools?+

不要依赖 prompt。在连接层面开放你想要的 tools 并拒绝其余的,让昂贵的那些根本不出现在模型能看到的目录里。LightAudit 开放了 CrawlForge 二十九个 tools 中的十个,并直接拒绝站点爬虫、批量任务、浏览器自动化和 deep_research,从而把单次分析的成本压在约 11 credits,无论模型原本更想怎么做。

如果研究服务器不可用会怎样?+

功能必须在没有它的情况下照常工作,而且必须说明这一点。在 LightAudit 中,分析将仅依据审计数据得出,结果会带上一个朴素的"未进行网页研究"标记,旁边还标注产出它的提供方和模型。它绝不会退化成凭记忆引用。先把这条路径设计好,才能避免一次依赖故障在你的产品里变成编造出来的内容。

我的用户需要把 CrawlForge API key 交给我的应用吗?+

他们不应该需要这么做,在 LightAudit 里他们也确实不需要。CrawlForge 用它自己的配置进行认证,那份配置由它自己的安装向导写入,所以 key 从不经过应用。这就把整个保管责任的问题从你的安全评审中移除了:数据库里没有 key,日志里没有,支持包里也没有。对任何能够自行完成带外认证的集成,都优先采用这种安排。

为什么要锁定 MCP server 版本,而不用 npx -y package@latest?+

因为在交付出去的产品上,@latest 意味着你的客户运行的是团队里没人读过的代码。锁定到一个经过评审的版本——用 crawlforge-mcp-server@5.6.6 而不是不带版本的包名——能把升级挪进你常规的依赖评审,让人先读一遍 changelog。它还能让线上事故可复现,而浮动版本做不到,因为等你去排查时 latest 已经变了。

一次带引用的分析要花多少 credits?+

大约 11 credits:一次 search_web 调用 5 credits,加上三次 extract_content 读取、每次 2 credits。已保存的分析可以免费重读,所以第二个人打开同一份报告不花钱。新账号有 1,000 免费 credits 且无需绑卡,大约相当于九十次带引用的分析——足够在需要任何人付费之前,判断这个功能值不值得买。

相关文章

网页搜索 MCP server 搭配本地 LLM:实际运行的是哪个模型
AI Engineering

网页搜索 MCP server 搭配本地 LLM:实际运行的是哪个模型

search_web 负责找到网页,本地 Ollama 模型负责读取。CrawlForge 按实测准确率而非参数量来挑选模型——4B 模型胜过 20B 模型。

C
CrawlForge Team
|
8月31日
|
4 分钟
自托管的网页搜索 MCP server
AI Engineering

自托管的网页搜索 MCP server

大多数号称“自托管”的搜索 MCP server 只是把进程跑在本地。CrawlForge 可以让 search_web 指向你自己的 SearXNG 实例——以及,哪一部分仍然不是自托管的。

C
CrawlForge Team
|
8月28日
|
4 分钟
MCP 协议详解:2026 开发者指南
AI Engineering

MCP 协议详解:2026 开发者指南

了解 Model Context Protocol 的工作原理、它为何对 AI 智能体至关重要,以及如何借助架构图和代码示例构建 MCP server 与客户端。一篇面向开发者的 MCP 深入入门指南。

C
CrawlForge Team
|
4月27日
|
10 分钟

页脚

CrawlForge MCP

面向 AI Agent 的企业级网页抓取。29 个专业 MCP 工具,专为构建智能系统的现代开发者而设计。

产品

  • 功能
  • Playground
  • 价格
  • 应用场景
  • 集成
  • 替代方案
  • 更新日志

资源

  • 快速上手
  • API 参考
  • 模板
  • 指南
  • 博客
  • 术语表
  • 常见问题
  • 网站地图

开发者

  • MCP 协议
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

公司

  • 关于我们
  • 联系我们
  • 隐私政策
  • 服务条款
  • 可接受使用政策
  • Cookie

保持更新

获取新工具和新功能的最新动态。

基于 Next.js 和 MCP 协议构建

© 2025-2026 CrawlForge。保留所有权利。