SuperAPI AI 工具集

create-arc1-extension

智能体与模型

查看项目

更新于 10-15 17:17

技能介绍

用途:指导开发者为 ARC-1 MCP 实例构建本地扩展(插件),以 Custom_* 命名新增工具,复用 ARC-1 的认证 SAP 客户端、7 作用域与 allow* 安全上限、审计与 PP,无需 fork。

主要能力与路径:先判断是否属于扩展——仅当工具通过 HTTP 访问 ARC-1 所连同一 SAP 系统(ADT、OData 或自定义 ICF/REST)时成立;其他 SAP 产品或非 HTTP 协议应另建 MCP 服务器。分两层:清单层(声明式 JSON,仅“校验输入→一次 GET 读取”);代码层(defineTool + TypeScript,支持逻辑、多次读取、OData/ICF 写入、执行控制台类或经典报表)。

使用方式:代码层读取用 ctx.http.get/head,策略 scope:'read'、opType: OperationType.Read;写入 OData/ICF 用 ctx.http.post/put/delete,scope:'write',路径必须非 ADT,需 SAP_ALLOW_PLUGIN_RAW_WRITES=true 与 SAP_ALLOW_WRITES=true;执行控制台类用 ctx.run.classRun,经典报表用 ctx.run.programRun(仅报表名,无选择参数/变式),均需 SAP_ALLOW_PLUGIN_EXECUTE=true 与 SAP_ALLOW_WRITES=true。ADT 对象写(CLAS/DDLS 等)v1 始终拒绝。构建加载示例:npm link arc-1 && npm run build;ARC1_PLUGINS=$PWD/dist/index.js arc1 --transport http-streamable;arc1-cli call Custom_<X> --json '{"name":"RSPARAM"}'。

限制:Custom_ 命名空间强制且冲突会导致启动失败;ctx.client 为运行时只读视图,数据/SQL 读取被阻断;policy.opType 必须与 scope 匹配;清单层仅支持只读 GET;availableOn 可限定 onprem/btp;SAP_DENY_ACTIONS 可禁用插件工具;无热重载,部署需重新发布。具体部署细节见官方文档 Deploying extensions 章节。