Mcporter Skill Builder — Mcporter 技能构建器
v1.0.0从 slug 和 MCP 服务器的传输细节中创建一个新的 mcporter 包装的 MCP 技能包。处理所有 mcporter 传输 —— HTTP(OAuth/DCR、bearer token、自定义头、无认证)和 stdio。当用户要求“创建一个新的 MCP 技能”、“创建一个 mcporter 包装器”、“为 <service> 添加 MCP 支持”,或调用 /mcporter-skill-builder 斜线命令时使用。生成一个遵循 OpenClaw 技能约定和 mcporter 的每服务器技能推荐的可工作包。
运行时依赖
安装命令
点击复制技能文档
mcporter-skill-builder 为MCP包装器技能创建一个遵循上游OpenClaw和mcporter约定的模板。输出是一个完整的包,用户可以立即编辑、测试和发布。当调用用户调用斜杠命令(/mcporter-skill-builder ...)或自然语言请求(“创建一个Sentry MCP技能”,“为Notion创建一个mcporter包装器”)时,此技能负责生成包。前置内容设置user-invocable:true,但故意不设置command-dispatch:tool — 斜杠命令通过模型加载此SKILL.md作为上下文,代理通过shell工具(mkdir、cp、文件写入原语)驱动模板生成。根据OpenClaw skills.md § “可选前置内容键”,command-dispatch:tool将绕过模型并直接路由到单个命名工具 — 这里不适用,因为模板生成是一个多步骤的决策树(传输选择、输入验证、文件生成、模板生成后验证),需要代理的判断。
步骤1 — 选择传输和认证形状 mcporter包装了多个MCP服务器形状。第一个决定将决定其他所有内容;当用户的请求模糊时,明确询问用户。 模式何时选择需要什么 HTTP + OAuth(DCR)MCP服务器具有/.well-known/oauth-authorization-server和注册端点。大多数托管MCP(Linear、Sentry、Notion等)。一个基本URL。提供者提供刷新/访问/客户端ID环境变量。 HTTP + bearer令牌MCP使用静态Authorization:Bearer 头进行认证。一个基本URL和环境变量名(例如ACME_API_TOKEN)。 HTTP + 自定义头MCP通过自定义头(X-API-Key等)进行认证。一个基本URL和一个或多个=对。 HTTP + 无认证公共MCP,无需凭据。罕见。仅基本URL。 stdioMCP作为本地子进程运行(mcp-server-foo或npx -y @vendor/mcp-server)。一个命令及其参数。可能的环境变量。二进制文件必须在PATH上或包必须可运行。如果用户说“创建一个Linear/Sentry/Notion MCP技能”而没有指定,默认为HTTP + OAuth — 这是托管MCP的主导模式。如果他们说“为mcp-server-time创建一个MCP包装器”或提到npx/uvx/本地命令,默认为stdio。当有疑问时,询问一次然后继续。模式特定的模板生成参考在每种模式下加载。仅阅读与所选模式匹配的参考: HTTP + OAuth:references/http-oauth.md HTTP + bearer:references/http-bearer.md HTTP + 自定义头:references/http-headers.md HTTP + 无认证:references/http-noauth.md stdio:references/stdio.md 跨模式的上下文适用于所有模式,位于references/conventions.md。生成任何包之前阅读它 — 它拥有命名规则、正文大小、requires.bins纪律和公共分发边界。
步骤2 — 验证输入 通用输入: (必需) — 小写、连字符、≤64个字符(技能创建者命名规范)。成为技能目录名称、mcporter服务器密钥、SKILL.md名称字段和mcporter调用。的前缀。这些四个站点必须完全匹配 —漂移会默默地破坏调用。 --out (可选,默认:skills/) — 新包写入的父目录,相对于当前工作目录。包本身位于//。默认值与OpenClaw的工作区技能约定相匹配。 模式特定的输入验证位于每种模式的参考中。阅读并在写入任何文件之前应用。如果slug无效(非小写、包含空格、前后连字符、>64个字符、与现有目录冲突),拒绝并解释。不要“帮助”规范化 — 用户应该故意选择一个干净的slug。
步骤3 — 确认输出路径为空 如果//已经存在,列出其内容并询问是否覆盖、合并或选择不同的路径。默认为拒绝。将其视为最可能的用户错误 — 不要默默地覆盖。
步骤4 — 生成包 对于文件形状(始终SKILL.md + mcporter.json;OAuth附加脚本/invoke.sh + scripts/init-mcporter.sh),请参阅conventions.md § “模板生成的文件”。每种模式的参考拥有SKILL.md和mcporter.json的确切模板(内联作为围栏标记/JSON块 — 替换slug、基本URL或stdio命令、环境变量名和其他模式特定值;不要即兴发挥)。shell脚本模板(OAuth模式的invoke.sh和init-mcporter.sh)作为单独的文件位于{baseDir}/scripts/templates/,并以字节为单位复制到//scripts/ — 无需替换;它们的设计是slug不可知的。跨模式规则 — 正文大小、--config {baseDir}/mcporter.json纪律、保持工具名称不在SKILL.md正文中的技能与MCP边界、requires.bins纪律、描述作为触发器的提醒、可编辑性和逐字规则,用于发现/身份验证。