AI 不了解低代码库和存储的schema,无法做上下文关联给出正确的提示和代码修改。
这是MCP擅长的领域之一,学会它就能解决一大批类似的场景。
这篇文章侧重于实战闭环:让 AI 识别代码中的低代码组件,自动去公司内网 API 查询该页面的数据库 Schema,并结合代码中的属性进行智能分析。
🎯 本课目标
连接公司内网的低代码API:使用Axios调用内网接口,不再是返回假数据。
动态 Token 管理:解决 Access Token 容易过期的问题,无需重启服务即可更新。
Agentic Workflow (闭环):通过系统提示词(System Prompt),给 AI 植入“条件反射”,让它看到特定代码就自动查库。
业务逻辑注入:教 AI 理解“数据库配置”与“代码覆盖”之间的优先级关系。
先看看效果:
提了一些要求,核心数据并不在本地工程里,而是在低代码平台的schema里,正常情况下AI是无法读取的。
但是有了我们的MCP和提示词优化,AI就可以正常读取和修改本地代码覆写了。
2.1 🔧 工具一:get_page_detail_by_code
解决痛点:AI 的“黑盒盲区” (The Black Box Problem)
现状: 当 AI 在代码中看到 时,对它来说,这只是一串毫无意义的字符。它不知道这个页面里是有 3 个按钮还是 5 个输入框,更不知道数据库里默认的配置是什么。因此,AI 无法判断你写的 customProps 代码是对的还是错的。
解决方案: 这个工具相当于给 AI 装上了 “透视眼”。 它打通了从 前端组件引用 到 后端数据库定义 的路径。当 AI 调用这个工具时,它能瞬间拿到该页面的“出厂设置”(Schema)。
意义: 只有拿到了这份“出厂设置”,AI 才能执行我们在 Prompt 里定义的 “Context Merge(上下文合并)” 逻辑——即对比“出厂设置”和“你的代码覆写”,从而精准地告诉你:“嘿,你在这里把原本显示的按钮给隐藏了。”
2.2 💉 工具二:update_auth_token
解决痛点:解决Token注入和过期续期
现状: 在企业级开发中,安全令牌(Access Token)通常有效期很短(如 2 小时)。 如果没有这个工具,一旦 Token 过期,API 报错 401,你就必须:
停止 OpenCode/IDE。
cartier-hzs.jshdwatch.com
cartier-bjs.xajshd.com
cartier-sz.kmjshd.com
cartier-hzs.hebjshd.com
cartier-bjs.watchrft.cn
cartierw.jsfltime.com
cartierw.watchec.cn
cartierw.nnjshd.com
cartierw.richardweixiu.com
cartierw.ytjshd.com
cartierw.watchjwj.cn
cartierw.swatchkb.top
cartierw.ywbzn.com
cartier-cds.hidcwatch.com
cartier-njs.ywbzn.com
cartier-beijing.watch4s.com
cartier-beijing.wbiaohome.com
cartier-beijing.wbiao120.com
constantin-hzs.jshdwatch.com
constantin-bjs.xajshd.com
constantin-sz.kmjshd.com
constantin-hzs.hebjshd.com
constantin-bjs.watchrft.cn
constantinw.jsfltime.com
constantinw.watchec.cn
constantinw.nnjshd.com
constantinw.richardweixiu.com
constantinw.ytjshd.com
constantinw.watchjwj.cn
constantinw.swatchkb.top
constantinw.ywbzn.com
constantin-cds.hidcwatch.com
constantin-njs.ywbzn.com
constantin-beijing.watch4s.com
constantin-beijing.wbiaohome.com
constantin-beijing.wbiao120.com
patek-hzs.jshdwatch.com
patek-bjs.xajshd.com
patek-sz.kmjshd.com
patek-hzs.hebjshd.com
patek-bjs.watchrft.cn
patekw.jsfltime.com
patekw.watchec.cn
patekw.nnjshd.com
patekw.richardweixiu.com
patekw.ytjshd.com
patekw.watchjwj.cn
patekw.swatchkb.top
patekw.ywbzn.com
patek-cds.hidcwatch.com
patek-njs.ywbzn.com
patek-beijing.watch4s.com
patek-beijing.wbiaohome.com
patek-beijing.wbiao120.com
去 .env 文件或配置文件里手动修改 Token。
重启 OpenCode。
重新加载上下文。 这会严重打断开发者的心流。
解决方案: 我们利用 Node.js 的内存特性,定义了一个全局变量 let memoryToken。 update_auth_token 是一个允许 AI(或用户通过 AI)在运行时动态修改这个变量 的接口。
价值闭环: 当 AI 收到 401 错误时,它会提示你。你只需要把新 Token 丢给它,它调用这个工具更新内存变量,然后立即重试刚才失败的请求。整个过程无需重启,丝般顺滑。
这是我们的核心逻辑。注意看我们如何处理 memoryToken,这是一种简单有效的“热更新”策略。