技术实践

腾讯云DES平台用MCP、Skills和Hooks分发团队护栏

智能体系统Agent 工具调用Agent 动作执行与治理Agent Harness智能体互操作协议Agent SkillsMCP

概述

该团队为 DES 平台构建 des-agent-plugin,用三层结构给 Agent 装护栏。MCP 层:放弃自建 Spring Boot MCP Server(AiController 需重做 AOP 切面、并发控制、异常处理,且独立 Java 服务的构建部署监控都要另维护),改用部门内已有的 MCP 市场 SA-Market——上传 Swagger/OpenAPI 规范(后支持 MCP Json),平台自动解析出 tool schema 注册为 MCP 工具,无需写一行适配代码,最终覆盖 72 个工具、4 个环境统一,架构为 Agent → MCP 协议 → SA-Market → REST → DES Backend。 并按 Tools(启动时批量注册注入 system prompt)/Resources(惰性按需拉取,如 150+ 张数据表 schema)/Prompts(可参数化模板)三类原语分工。Skills 层:用 Mermaid 流程图而非文字步骤列表写 8 个 Skill 的 SOP(如 deploy-workflow 的导入 JSON→保存草稿→调试运行→修复→更新→发布上线及其失败回退路径),并在 context.md 中定义强制走链(如调用 workflow_import 前必须先走 des-generator Skill)。 Hooks 层:在 MCP 工具调用链路注入同步拦截点,用 PreToolUse(pre_tool_guard.py 约 60KB)、PostToolUse(post_tool_audit.py 约 40KB)、SessionStart(session_start.py 约 15KB)三类脚本实现四级渐进安全分级与 9 步流水线(规则加载→…→放行),规则全部外化到 rules.json 的 18 段配置(blocked 5 个不可逆删除工具、warned 31 个高风险写工具、audit 40 个静默审计工具、dangerous_ddl_patterns 8 种 DDL 危险语句、body_check_tools 14 个写工具的 tiers 条件链 + _array_check 叠加校验等),新增规则只需追加配置段。 多平台:用 Monorepo + 6 个 symlink 让 CodeBuddy IDE(Python Hooks)与 iMate/OpenClaw(JS Hooks,经 mcporter 调度)共享同一份 shared/ 配置源,改一处双平台同时生效。