从一句需求到可运行 ABAP 类,拆解 ADT MCP Server 背后的 Agentic Loop 最近在研究 ADT MCP Server 时,有一个场景特别值得拆开来看。我们只给智能体一句很普通的要求,Create an ABAP class that demonstrates how to output text to the console using the classrun API.翻成开发人员熟悉的表达,就是创建一个 ABAP 类,实现IF_OO_ADT_CLASSRUN,再通过out-write把文本输出到 ADT Console。从传统 ABAP 开发视角看,这件事非常简单。熟悉 ADT 的开发人员甚至不需要一分钟,就知道大概要创建一个ZCL_*类,实现接口,写一个main方法,激活,再按快捷键运行。但把这件事情交给 Claude Code、GitHub Copilot 或其他能够消费 MCP Server 的智能体之后,问题突然变得很有意思。智能体面对的并不是一个空白文本编辑器。它面对的是一个真实的 SAP 系统。SAP 系统里有 package,有 transport request,有 repository object type,有命名规则,有系统版本差异,有对象创建权限,还有激活和测试机制。AI 如果只是根据训练数据生成几行 ABAP 代码,距离真正完成开发任务还差得很远。Agentic Loop 解决的正是这个问题。所谓Agentic Loop,可以理解成 AI Agent 为了完成一个目标,自主反复