关于 KitchenSink4Web
KitchenSink4Web 是在本机浏览器中读取网页并提取数据的 MCP 服务,面向使用本地 MCP 客户端的用户。它按可设定的大小预算返回页面内容,并标明未读取部分;默认只读,需授权才可点击和填写表单。
主要功能
- 01按预算读取网页并报告未读内容
- 02打开页面区域或查找元素
- 03提取表格、列表和文章并导出
- 04截图、保存 PDF 和监看页面变化
- 05授权后点击、输入及填写表单
适用场景
- 01在令牌预算内查看网页内容
- 02将网页表格导出为 CSV 或 JSON
- 03查看页面变化或保存页面截图
- 04在明确授权后执行网页表单操作
MCP 相关
作为本地 MCP 服务,通过用户计算机上的浏览器向 MCP 客户端提供网页读取、提取和可选交互工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
12收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mode | string | 否 | |
| page | string | 是 | |
| view | string | 否 | |
| since | any | 否 | |
| detail | string | 否 | |
| location | any | 否 | |
| budget_tokens | integer | 否 |
详细介绍
🌿 KitchenSink4Web
读取网站并提取数据,供你的 AI 助手使用。默认只读,仅在你允许时才会点击和输入。
KitchenSink4Web 是一个 MCP 服务,可让 Claude Code、Codex CLI、Copilot CLI、Claude Desktop 和其他本地 MCP 客户端通过你电脑上的浏览器读取网页。它会在你指定的大小限制内返回每个页面,说明哪些内容未读取,并将表格导出为 CSV 或 JSON。它启动时为只读模式:只有在你启用后才能点击、输入和填写表单。这是免费社区版,采用 AGPL-3.0 许可证。
**平台:**Windows、macOS 和 Linux。读取图像中的文字使用 Windows OCR。首次运行时可能会下载浏览器和一些可选依赖项。
安装
此软件包需要 Python 3.12 或更高版本。请在 PowerShell 或终端中运行以下命令,而不是在 AI 聊天中运行。
**Claude Code 或 Codex CLI。**安装 uv,运行对应应用的命令,然后启动新会话:
claude mcp add web -s user -- uvx kitchensink4web
codex mcp add web -- uvx kitchensink4web
**Claude Desktop。**安装 uv 并重启 Claude Desktop。从最新版本下载 .mcpb 文件,然后打开“设置”>“扩展”>“高级设置”>“安装扩展”,并选择该文件。安装界面可让你选择是否允许点击和输入,以及要加载哪些功能包。首次启动时会下载 Python 软件包,因此需要网络连接。
**其他任何本地 MCP 客户端。**将 uvx 用作命令,并将 kitchensink4web 作为其参数;或者安装此软件包,并将 kitchensink4web 作为服务命令运行:
pip install kitchensink4web
功能
- 在大小限制内读取页面,并查看哪些内容未读取。
- 打开某个章节,或查找某个元素,而无需再次获取整个页面。
- 提取表格、列表和文章文本,并导出为 CSV 或 JSON。
- 截取屏幕截图,或将页面保存为 PDF。
- 仅读取页面自上次读取后发生的变化。
- 在服务运行期间监视页面变化。
- 在你允许后点击、输入和填写表单。
- 记录多步骤浏览器任务,并通过检查重放任务。
- 运行自动化无障碍检查(可选附加功能)。
只读启动配置包含 12 个工具;允许点击和输入时包含 20 个工具;启用所有功能包时包含 53 个工具。
首次读取
get_page_view 会返回页面的概况:页面是什么、各个版块包含什么、打开各个版块需要多少开销,以及合适的下一步调用。预算由你设定,读取不会超出预算。每次读取结束时都会附带完整性说明,列出哪些内容被省略,以及获取这些内容需要多少开销。预算阶梯共有 16 档。
之后,读取会更省。打开一个区域,而不是提高预算。传入某次读取返回的令牌,下一次读取就只会涵盖发生变化的内容。元素会以短期有效的引用形式返回,供助手操作;即使页面重新渲染,按文本和角色搜索仍然有效。
开放的 shadow root 会像页面其他部分一样被读取并可供操作,因此基于组件的网站也能读取。任何工具都无法触及封闭的 shadow root,因此系统会统计并报告它们。同源 iframe 会像周围页面一样被读取和搜索,并分别标注其来源;跨源框架会被标出,但不会进入其中。
示例。 原样转储 Wikipedia 上《凡尔赛条约》条目的内容需要 33,073 个令牌。首次通过 get_page_view 读取需要 4,445 个令牌,点击一次后的增量读取需要 82 个令牌。
功能包
服务启动时提供读取、导航和会话管理功能。功能包在启动时选择,并在整个会话中保持不变,因此未加载的功能包是不存在,而不是仅仅被关闭。
| 功能包 | 提供的功能 |
|---|---|
| extract | 表格、列表、链接和文章文本,并可导出为 CSV 和 JSON。 |
| capture | 截图(会模糊密码字段)、导出 PDF,以及将页面保存为文件。 |
| network | 页面在后台发出的请求。适用于调试网站;大多数人会将其关闭。 |
| storage | 保存已登录的会话,这样助手就不必每次都登录。它会保存会话,但绝不会保存密码;不过仍应像对待密码一样保护保存的文件。 |
| files | 下载文件到一个文件夹,并将文件上传到页面表单。每次操作都会先征求你的同意。 |
| diagnostics | 允许助手在页面上运行 JavaScript,每次运行一个脚本,并且都会先展示给你审批。这是这里功能最强的设置。除非需要,否则请将其关闭。 |
| workflows | 记录一次多步骤任务,以便之后重放。每次重放前都会检查页面是否仍然符合预期,然后才会执行任何操作。 |
| accessibility | 使用 axe-core 检查页面是否符合 WCAG 规则,按规则整理检查结果,并明确说明自动化测试无法检查的内容。需要额外安装可选组件;工具会说明安装方法。 |
只读启动配置的工具定义约占 4.1k 个令牌;允许点击和输入时约占 6.9k 个令牌;启用所有功能包时约占 17.9k 个令牌。
浏览器
默认情况下,服务会驱动自带的 Chromium。它不会触碰你的浏览器或个人资料:每个会话都会在一个全新的个人资料中启动,关闭时该资料会被删除,除非你明确将已登录状态保存到文件中。
你也可以选择已安装的浏览器(Chrome、Edge 或 Firefox)。它仍会使用独立的个人资料,绝不会使用你的个人资料。有些网站在不同浏览器中的响应方式不同,而 manage_session(action='status') 会报告已安装的浏览器,以及它针对当前页面推荐使用的浏览器。它绝不会替你切换浏览器。服务不会伪装身份,并会报告机器人检测和 CAPTCHA,而不会尝试解决它们。
已登录的会话通过 save_auth_state 保存,并在打开会话时通过 auth_state= 重新加载。保存的文件会记录 Cookie 的过期时间;加载已过期的文件时,系统会明确提示,而不会让登录在没有解释的情况下失败。
安全模型
浏览器保存着你的登录信息和账户,因此工具的提供方式内置了安全保护。
除非你主动选择,否则仅支持只读。 默认情况下,点击、输入和提交操作所用的工具根本不会出现在工具列表中,因此网页上的任何指令都无法让你的助手使用这些工具。安装时更改一项设置(Claude Desktop 安装包中的 allow acting,其他情况下的 KS4WEB_ALLOW_ACTING=true)即可启用这些工具。
密码不会进入对话。 服务端绝不会读取输入到密码字段中的内容。Cookie 和站点存储中发现的机密信息会在任何文本离开服务端之前进行脱敏。
隐藏文本会被视为证据,而非指令。 网页中对用户隐藏的文本是向 AI 偷偷植入指令的常见方式。服务端会从助手读取的内容中移除这类文本,报告移除的内容量,并标明网页上每条信息的来源。
重要操作需要确认。 表单提交、付款和页面脚本都会暂停并通过客户端自身的确认提示询问你,只有你选择“允许”后才会继续。空白或自动回复均视为拒绝。无法显示此提示的客户端会拒绝这些操作,而不会继续执行。唯一的例外是你已通过同意范围、KS4WEB_PREAUTH 或可选的 30 分钟“记住”复选框预先批准的常规操作。
拒绝时说明原因。 无论是登录墙、机器人检查,还是页面崩溃,只要无法执行某项操作,回复就会指出阻碍原因以及接下来可以尝试的做法。
两种权限提示
MCP 客户端自身的提示会列出工具名称(例如 mcp__web__type_text)。在该提示中批准只读工具是安全的,也能减少大多数提示。KitchenSink4Web 的确认则会说明具体操作(“提交此表单会发送密码”),付款、凭据、帖子、删除操作或法律协议均无法预先批准。
同意范围
默认范围为 research:读取和导航无需确认;搜索类提交(搜索框)会直接执行;其他所有操作都需要先确认。full 范围允许普通表单提交直接执行,无需确认。无论处于哪种范围,付款、凭据、帖子、删除操作和法律协议都需要确认。
在 full 范围下,如果服务端无法识别提交按钮上的文字(在任何受支持的语言中均无法识别),则不会拦截该提交。如果你在意这一点,请继续使用 research。
客户端兼容性
| 客户端 | 可用功能 |
|---|---|
| Claude Desktop | 全部功能,并显示确认提示。 |
| Claude Code | 全部功能,并显示确认提示。 |
| claude.ai web | 读取、导航和搜索。需要确认的操作会以 CONFIRMATION_REQUIRED 拒绝,因为无法显示确认提示;启动时预授权的类别仍可使用。 |
隐私
服务端在你的计算机上运行。KitchenSink4AI 不会接收你的文件、页面或使用数据。浏览器会连接你要求访问的网站,这些网站会看到常规的浏览请求。你的 AI 应用可能会根据该应用的设置和条款,将提示词、页面内容和工具结果发送给其自身的服务提供商。缺少分词器表时,可能会下载一次;被测量的文本绝不会发送出去。可选的更新检查会联系 PyPI,除请求本身外不会发送任何内容。隐私政策涵盖产品、购买和支持。
配置
启动时通过 --packs、KS4WEB_MODE 和 KS4WEB_ALLOW_ACTING 选择工具包和只读模式,并应用于与正在运行的服务建立的每个连接。
更新检查。 仅当你调用 manage_session(action='status') 时,服务才会将自身版本与 PyPI 进行比较;启动时或后台均不会检查。每七天最多检查一次,超时时间为两秒。请求不会发送任何标识符、使用数据、页面内容或会话状态,服务也绝不会安装任何内容。KS4WEB_UPDATE_CHECK=off 可关闭此功能(KS4WEB_NO_UPDATE_CHECK=1 也可以)。
**减少权限提示:**在 Claude Desktop 中此服务的工具权限设置里,将只读工具设为“始终允许”。这些工具无法更改任何页面上的内容。
**子 Agent:**在子 Agent 中,工具结果的上限更低,因此请从 budget_tokens=2500 开始读取。
已知限制
- 不会进入跨源 iframe;完整性报告会列出每个 iframe。
- 任何工具都无法访问封闭的影子根。系统会统计它们,因此你可以判断页面是组件繁多,还是内容为空。
- 系统会报告机器人拦截页和 CAPTCHA,但不会解决或绕过它们。
sendBeacon和 ping 请求会绕过网络路由规则,这是底层 Playwright 库的限制。- **无障碍检查只能发现现实问题中的一小部分。**构建 axe-core 引擎的 Deque 表示,其自有自动化工具只能发现 57% 的问题。报告没有问题,只表示自动化检查已通过,并不代表页面具备无障碍性;系统有意不提供评分。
- **监控器仅在服务运行期间工作。**MCP 客户端目前尚不能接收服务主动发送的消息,因此你需要主动查询监控报告以了解情况。一个监控器只监视一个 URL 的一种指定变化,检查间隔不会短于五分钟,无法通过登录页或机器人拦截页;如果持续失败,它会自行暂停。对于包含时钟或计数器的页面,
content_hash会产生较多噪声;如果某项变化在两次检查之间出现后又恢复,就不会被发现。所有数据都保留在你的设备上。 - **会话交接仅适用于同一个运行中的服务。**句柄可以将一个实时会话转交给同一个运行中的 KitchenSink4Web 中的另一个对话。它使用的是同一个浏览器,因此之前的引用可能已失效,报告会说明哪些引用失效。句柄只能使用一次,一小时后过期,服务重启后也不会保留。
- **每增加一个身份,就会增加一个浏览器进程和配置文件,**因此会占用实际内存。操作预算由各身份共享,所以增加第二个身份不会使一个会话可执行的操作数量翻倍。
- 浏览器选择列表会记录这台计算机曾用哪个浏览器访问过哪些网站(仅主机名和日期,不记录输入内容或页面内容),这样,如果某个网站拒绝了一个浏览器,你就可以用另一个浏览器访问。列表数据保存在本机,可以关闭学习功能,也可以通过一次调用将其清除。
测试
测试套件包含 2,000 多项测试,其中约 700 项会驱动真实浏览器。需要已保存页面的测试会使用小型合成样本。每次发布还会重新运行回归测试,检查通过页面内容实施的提示注入、隐藏文本走私、凭据窃取、绕过确认、工作流重放篡改和资源滥用等问题。
问题反馈
请提交问题,并提供页面(如果页面是公开的)、你的请求以及实际发生的情况。manage_session(action='status') 的输出经过专门设计,可以安全分享。如需报告安全问题,请参阅 SECURITY.md。
商业版
商业版将这些工具与 Windows 安装程序、签名更新渠道以及符合商业条款的支持服务相结合。检查更新时会告知你是否有适用的版本可用,不会自行安装任何内容。请参阅定价。社区版仍遵循 AGPL 许可免费提供,包括符合其条款的商业用途。
贡献
欢迎提交 Bug 报告、修复、测试和文档。请参阅 CONTRIBUTING.md;首次贡献者须同意 Contributor License Agreement。
许可证
KitchenSink4Web 采用双重许可。
- AGPL-3.0。 任何人(包括企业)均可免费使用,但须遵守 AGPL 的规定。根据其条款,分发软件或通过网络提供软件时,须共享源代码及所做的修改。
- 商业许可证。 适用于希望将 KitchenSink4Web 集成到自有产品或服务中,且不受 AGPL 源代码共享义务约束的组织。请联系 [email protected]。
版权所有 (c) 2026 Alvut Consulting, LLC。KitchenSink4AI 是 Alvut Consulting, LLC 的产品系列。KitchenSink4AI 工具借助 AI 编码助手构建,每次发布前都会通过完整的测试套件。
与 Google、Mozilla、Microsoft 或此服务访问的任何网站均无关联,也未获得其认可。Chrome、Chromium、Firefox 和 Edge 是其各自所有者的商标,此处仅用于标识此服务能够驱动的浏览器。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。