用n8n和Agentel MCP在采用Agent Skill前先做审查

用确定性n8n工作流经MCP审查Agent Skill证据,供人工决策而不自动执行。
文章介绍 Agentel 团队发布的一个 n8n 工作流模板,用于在采用 Agent Skill 之前做人工审查。该工作流不依赖 LLM、模型 API 密钥或 AI Agent 节点,而是用三个原生 MCP Client 节点,以受限只读 Reader 凭证调用 Agentel MCP 端点,依次读取连接状态、额度预算和单个 Skill 详情,输出 Skill 记录与额度收据。文章详述导入模板、创建只读凭证、检查执行保留与超时设置、绑定凭证、验证连接、审查 Skill、解读证据等步骤,并强调注册版本、声明权限、许可证和 source_checked 都不构成运行时安全保证。作者还说明测试仅在本地 n8n 2.42.4 / MCP Client 1.1 环境完成,不覆盖自主 Agent 工具选择场景。
用n8n和Agentel MCP在采用Agent Skill前先做审查
随着AI Agent生态的扩展,Agent可以获得的Skill越来越多。但一个Skill的描述听起来再合理,也不等于它安全可靠——你无法从一段文字里知道注册的版本号、声明的权限范围、许可证情况,以及列表背后的证据支撑。
Agentel团队构建了一个小型的、手动的n8n工作流来解决这个问题,并已发布在n8n模板库中。它不需要LLM、模型API密钥或AI Agent节点,是一个完全确定性的常规n8n工作流。

这个工作流到底检查什么
工作流的执行路径是:手动运行 → 选择Skill → 读取前连接状态 → 读取额度预算 → 判断能否读取一次详情(true则读取Skill详情 → 检查证据 → 读取后连接状态 → 输出证据与余额收据;false则标记为“读取未开始”)。
三个原生MCP Client节点使用同一个受限的Reader凭证调用 https://agentel.tech/mcp。两个连接节点调用 get_connection,详情节点调用 get_network_item。
最终产出是一份Skill记录和一份额度收据,供人工审阅。它不会安装Skill、不会执行其代码、也不会授予权限——这些决定仍然由你来做。
准备工作与测试环境说明
你需要:一个可管理的n8n编辑器,支持原生MCP Client节点和HTTP Streamable传输;一个Agentel INFO_READ受限Reader凭证;以及足够一次Skill详情请求的当前阅读额度。
需要说明的是,这套教程背后的执行检查是在本地n8n 2.42.4 / 原生MCP Client 1.1、2026年10月17日完成的。n8n Cloud、其他版本、独立客户环境和自主Agent工具选择尚未验证相同结果。模板在10月19日获批发布,但该批准并不构成对其他环境的认证。
第一步:导入模板
打开n8n模板页面选择“Use for free”,可以选导入目标,也可以用“Copy template to clipboard (JSON)”粘贴到空白画布。如果剪贴板导入不工作,可以访问Agentel的n8n设置页下载 agentel-skill-evidence.n8n.json,然后使用“Import from File”。
这个测试中请保持工作流为非激活、仅手动状态,不要添加计划任务或自动重试。
第二步:创建只读Reader凭证
按照Agentel Reader设置指南操作。如果你已有Agentel Agent,保留其现有身份,另外签发一个只读凭证。文档化的API是 POST /api/v1/me/info-credentials,从你的可信Agent运行时调用。不要把运行时凭证移入n8n。
如果你没有Agent身份,注册流程支持 mode: "INFO_READER" 来创建私有Reader身份和凭证。无论哪种情况,n8n只应拿到受限的INFO_READ令牌——而不是所有者凭证、完整运行时密钥、Claim Code或Recovery Code。
Bearer Auth 是一种基于令牌的 HTTP 认证方案,客户端在请求头中携带 Authorization: Bearer <token>。n8n 的凭证类型会自动拼接 Bearer 前缀,因此只需粘贴令牌本身;手动再加一次前缀会形成 Bearer Bearer ...,导致认证失败。令牌应存放在凭证存储中而非节点参数、便签或 URL 里,因为这些位置可能随执行记录、截图或导出文件泄露。受限 Reader 令牌的设计意图是最小权限:只具备读取能力,无法安装、执行或授权,即使泄露影响范围也有限。
第三步:连接前先检查工作流设置
测试中我们发现一个细节:执行保留和超时设置不会通过普通JSON导入保留。所以要在编辑器里检查,而不是信任文件。
打开“More actions → Settings”,设置:失败的生产执行不保存;成功的生产执行不保存;手动执行不保存;执行进度不保存;工作流超时启用、设为1分30秒。保存后重新打开设置,确认选项生效。
这些设置减少保存的执行载荷,但手动运行仍可能在浏览器中显示身份和额度信息,也不能证明元数据、日志或备份已被擦除。
第四步:连接三个MCP节点
在n8n中创建私有Bearer Auth凭证,将受限Reader令牌粘贴到token字段,不要在前面输入 Bearer,凭证会自己添加该头部。
每个MCP Client节点使用相同设置:服务器传输为HTTP Streamable,MCP端点为 https://agentel.tech/mcp,认证为Bearer Auth,凭证为你的受限INFO_READ Reader。
将同一个凭证绑定到“Connection before”“Skill detail”和“Connection after”三个节点。三个都要检查,n8n可能会自动选中已有凭证。避免把令牌放进Code节点、工作流参数、便签、URL或截图中。
第五步:检查连接
有一个可选的连接检查工作流,可以在尝试主流程前验证Reader。给它同样的设置审查,并将连接节点绑定到受限凭证。
在10月17日的测试中,get_connection 花费0 INFO,其响应可以显示绑定身份、只读状态、计划类别和额度。
CONNECTION_READY 意味着本地连接和格式检查通过,不代表Skill已安装,也不代表每次详情调用都落在剩余额度内。Reader可以连接有效但额度为零。如果MCP节点报告认证、传输、超时或工具错误,停下来检查错误,不要自动重试。
第六步:审查单个Skill
回到主工作流,打开“Choose Skill”将 skill_id 设为你想要审查的公开Skill引用,可下载模板默认值为 agentel。保持身份、定价、额度和失败检查不变,手动运行一次。
工作流在允许最多一次详情尝试前检查Reader的每日和每月额度。如果本地检查不允许请求,就走“Read not started”并告诉你原因。这个预检不是预留——当前定价、并发活动和额度重置可能影响前后检查之间的实际情况。
「额度预检不是预留」源于计量系统的常见设计:额度检查是一次瞬时读取,真正的扣减发生在请求被受理之后,两者之间没有锁。若多个任务共享同一账户额度,或额度按日/月窗口滚动重置,预检通过后余额仍可能被并发消耗,导致详情请求失败或产生 METERING_UNKNOWN。此外,INFO 属于计划内配额而非逐次请求的独立计费单元,失败或结果未知的尝试也可能计入消耗。因此预检只能回答「此刻看起来够不够」,不能承诺「这次请求一定成功且不超额」。
第七步:读证据,而不只是绿色对勾
看注册版本、声明权限、许可证和证据等级。这些字段有用,但都不是运行时保证。例如:
- Unknown license 意味着你仍需要检查原始来源和条款。
- 声明权限 告诉你记录了什么,而不是独立强制执行了什么。
source_checked意味着来源检查被记录了,并不意味着Skill经过运行时测试、独立验证或认证安全。
工作流不安装、不执行Skill,不批准其权限,不加入Mission,不发布任何内容,也不授予Credit。
收据还会比较前后额度。在一次10月17日的运行中,一个真实Skill详情报告1 INFO,每日和每月额度各减少1。这是那次运行的观察,不是永久价格承诺;共享余额变化本身也不能证明排他归因。
INFO是Agentel计划额度,不是每次请求的单独卡扣费。运行前检查当前计划和额度。重复尝试可能消耗额度,包括失败或结果未知的尝试。如果收据显示 METERING_UNKNOWN,不要把它当作免费请求。
「证据等级」是对信息来源可靠性的分级标注,而不是安全评级。常见的等级区分包括:仅由注册方自述的元数据、经过来源链接核对的记录(如 source_checked)、以及经过独立复现或运行时测试的验证。等级越高,说明检查动作越多,但每一级都只对应特定检查项;例如来源核对只能证明文档与原始出处一致,不能证明代码行为符合描述。把等级当作「已认证安全」是典型误读。正确用法是:等级告诉你哪些问题已被回答、哪些仍空白,从而决定还需要人工追问什么。
常见问题排查
剪贴板显示已复制但粘贴不出来:下载官方JSON使用文件导入,并重新检查设置。
原生MCP Client失败:检查端点、传输、Bearer凭证、Reader有效性和实际错误。
出现错误身份:停止并验证绑定到三个MCP节点的凭证。
读取未开始:查看预检原因、当前价格和两个额度窗口。
设置被还原:重新应用保留选项和90秒超时,保存并重新打开。
执行绿色但证据缺失:检查业务结果和必需字段,绿色节点本身不是证明。
METERING_UNKNOWN:私下保存结果并在尝试再次读取前调查。
大型或异常响应也可能影响客户端显示内容,这个工作流尚未建立通用响应兼容性。
为什么用MCP来做这件事
重点不是让一个Agent自动信任另一个Agent的Skill,而是给人类一个实用方式,在决策前从外部网络检查信息。
这里n8n的原生MCP Client把工具当作普通工作流步骤运行。n8n还有一个单独的MCP Client Tool节点用于AI Agent工具调用。我们测试的是确定性路径,不是自主Agent兼容性。n8n官方文档解释了这个区别。
MCP(Model Context Protocol,模型上下文协议)是一套开放协议,用于让 AI 客户端以标准化方式发现并调用外部工具、数据源和服务。它把「工具」抽象成可枚举、可描述的端点,客户端通过 get_connection、get_network_item 一类方法读取连接状态与资源详情。协议本身只规定通信与发现机制,不规定工具是否安全、权限是否被真正强制,因此「能读到描述」与「验证过行为」是两件事。n8n 的原生 MCP Client 节点实现了该协议的客户端侧,可把 MCP 工具调用当成普通工作流步骤串联,这也是本文能用纯确定性流程完成审查的前提。
多源视角下的Skill信任问题
虽然本文主要基于Agentel的官方工作流说明,但其核心观点——Skill描述不等于安全证明、声明权限不等于强制执行、绿色执行不等于证据充分——与当前AI Agent生态中多个独立讨论的方向一致。对“证据等级”的强调,实际上是在Agent间信任问题上引入了一种可审计的中间层:让人类在自动化之前保留判断权。
有意思的是,该工作流明确不覆盖自主Agent工具选择场景,这意味着它适合作为采用前的审查工具,而非运行时防护机制。
上手建议
从已发布的工作流开始,保持设置指南打开。如果你尝试了,作者特别想了解哪些地方不清楚:设置是否比预期更难?证据是否帮助你做了决定?是否缺少重要信息?
故障排查时,发送你的n8n版本、MCP Client节点版本、导入方法、失败步骤和脱敏后的错误码给Agentel n8n Maintainer。请省略凭证、私有身份细节、余额和原始执行转储。
披露:Agentel提供此工作流和文章,并运营维护者角色。n8n模板库批准确认已发布列表,但不认证Skill安全性,也不建立独立客户结果。
相关推荐

吴恩达联手Anthropic:Claude Code保姆级实战教程全解析
吴恩达与Anthropic合作推出Claude Code短课程,系统讲解清晰上下文、并行会话、MCP服务器等最佳实践,并通过RAG聊天机器人、Jupyter数据分析、Figma转前端三个实战项目,带你从零掌握这款高自主性编程助手。

入门Agent只推荐三个:ZeroStack、Claude Code与DeepSeek Harness
B站UP主推荐三款入门Agent:ZeroStack适合轻量设备,Claude Code生态完善,DeepSeek Harness易于集成插件。本文梳理各工具适用场景与实用技巧。

AI Agent如何操控你的电脑?Hermes三层工具链全解析
B站UP主小悠拆解Hermes操作电脑的三层工具链:出厂自带的Terminal、文件修改与代码执行底座,按需开启的联网搜索、视觉分析、语音合成与浏览器桌面控制,以及通过CLI和MCP自由扩展的外部生态,并解答SSH连上却操作不了的常见困惑。