DE

datazoode/erpl-adt

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

21 stars 4 forks 质量 84 趋势 30Apache-2.0

SAP ADT REST API 的 CLI 和 MCP 服务器——搜索、读写 ABAP 源代码、运行测试、管理传输。没有 Eclipse,没有 RFC SDK,也没有 JVM。

概览

SAP ADT REST API 的 CLI 和 MCP 服务器——一个单一的二进制,使用与 Eclipse ADT 使用的相同 HTTP 端点。没有 Eclipse,没有 SAP NW RFC SDK,也没有 JVM。 - ABAP 对象、包、数据字典表、CDS 视图 - 带锁管理和传输集成的源代码 - — 命令行的 ABAP 单元和 ATC 质量检查 - — 创建、列出并释放传输请求 - 通过 JSON-RPC 向 AI 代理开放所有能力(MCP 2025-06-18,协商至 2024-11-05) 每个命令都接受机器可读输出的 --json。 读取一个数据字典表,已解析字段类型和校验表: 阅读带有内置语法高亮功能的ABAP源代码: 递归浏览一个包以枚举其包含的所有内容: 在 ADSO、复合提供商、DTP、转换和查询中搜索 BW 目录: 检查ADSO的字段结构,包括每个字段映射到的信息对象:

概述(AI 翻译)

SAP ADT REST API 的 CLI 和 MCP 服务器——一个单一的二进制,使用与 Eclipse ADT 使用的相同 HTTP 端点。没有 Eclipse,没有 SAP NW RFC SDK,也没有 JVM。

属于Datazoo ERPL家族。

它的作用

  • 搜索和浏览 ABAP对象、包、数据字典表、CDS视图
  • **带锁管理和传输集成的读写源代码
  • 运行测试 — 命令行进行ABAP单元和ATC质量检查
  • 管理传输 — 创建、列出并释放传输请求
  • MCP 服务器 — 通过 JSON-RPC 向 AI 代理开放所有能力(MCP 2025-06-18,协商至2024-11-05)

每个命令都接受机器可读输出 --json。

行动中

按名称模式查找ABAP对象:

读取一个数据字典表,已解析字段类型和校验表:

阅读带有内置语法高亮功能的ABAP源代码:

递归浏览一个包以枚举其包含的所有内容:

BW/4HANA 模特

在 ADSO、复合提供商、DTP、转换和查询中搜索 BW 目录:

检查ADSO的字段结构,包括每个字段映射到的信息对象:

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

erpl-adt

CLI and MCP server for the SAP ADT REST API — a single binary that talks the same HTTP endpoints Eclipse ADT uses. No Eclipse, no SAP NW RFC SDK, no JVM.

Part of the Datazoo ERPL family.

What it does

  • Search and browse ABAP objects, packages, data dictionary tables, CDS views
  • Read and write source code with lock management and transport integration
  • Run tests — ABAP Unit and ATC quality checks from the command line
  • Manage transports — create, list, and release transport requests
  • MCP server — expose all capabilities to AI agents over JSON-RPC (MCP 2025-06-18, negotiating down to 2024-11-05)

Every command accepts --json for machine-readable output.

In action

Find ABAP objects by name pattern:

Read a data-dictionary table, with field types and check tables resolved:

Read ABAP source code with built-in syntax highlighting:

Browse a package recursively to enumerate everything it contains:

BW/4HANA Modeling

Search the BW catalog across ADSOs, composite providers, DTPs, transformations, and queries:

Inspect an ADSO’s field structure, complete with the InfoObject each field maps to:

Export an InfoProvider’s dataflow as Mermaid — pipe it straight into a renderer or commit it next to the model:

Quick examples

# Save connection credentials (prompts for password)
erpl-adt login --host sap.example.com --port 44300 --https --user DEVELOPER

# Search for classes matching a pattern
erpl-adt search ZCL_MY_* --type CLAS --max 20

# Connect in a specific logon language (descriptions come back translated)
erpl-adt --language DE search T000 --max 1     # -> description "Mandanten"

# Read object metadata and source code
erpl-adt object read /sap/bc/adt/oo/classes/zcl_my_class
erpl-adt source read /sap/bc/adt/oo/classes/zcl_my_class/source/main

# Write source code (auto-locks, writes, unlocks)
erpl-adt source write /sap/bc/adt/oo/classes/zcl_my_class/source/main --file impl.abap

# Write and activate in one step
erpl-adt source write /sap/bc/adt/oo/classes/zcl_my_class/source/main --file impl.abap --activate

# Activate an object by name
erpl-adt activate ZCL_MY_CLASS

# Run unit tests and ATC checks (by name or URI)
erpl-adt test ZCL_MY_CLASS
erpl-adt check ZCL_MY_CLASS --variant DEFAULT

# Create a transport request and release it
erpl-adt transport create --desc "Feature XYZ" --package ZPACKAGE
erpl-adt transport release NPLK900042

# Browse packages and data dictionary
erpl-adt package tree ZPACKAGE --type CLAS
在 GitHub 查看完整 README

安装

uvx erpl-adt --help
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "erpl-adt": { "command": "erpl-adt", "args": ["mcp", "--host", "sap.example.com", "--port", "44300", "--https"], "env": { "SAP_PASSWORD": "your_password" } } } }