Token导航 LogoToken导航TokenDH.com
Erpl Adt logo
开发工具stdio官方级别未说明来源级核验

Erpl Adt

MCP Server

一个用于与SAP ADT REST API交互的CLI和MCP服务器工具,支持ABAP对象搜索、源代码读写、测试运行和传输管理。

工具数

0

提示词数

0

GitHub Stars

7

资源数

0
C++命令行工具PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

DataZooDE

提供方

DataZooDE

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx erpl-adt --help

详细介绍

erpl-adt

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

![Build](https://github.com/datazooDE/erpl-adt/actions/workflows/build.yaml)

部分 Datazoo ERPL家族。

它做什么

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

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

快速示例

# 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

# 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
erpl-adt ddic table SFLIGHT
erpl-adt ddic cds I_AIRLINE

# Check syntax
erpl-adt source check /sap/bc/adt/oo/classes/zcl_my_class/source/main

安装

运行erpl-adt的最快方法——无需下载:

uvx erpl-adt --help

或永久安装:

pip install erpl-adt
平台架构
Linuxx86_64
macOSarm64,x86_64
Windowsx64

全参考

erpl-adt --help 查看完整的命令列表。关键命令:

SEARCH — Search for ABAP objects
  search 
                        Search for ABAP objects
      --type                        Object type: CLAS, PROG, TABL, INTF, FUGR
      --max                            Maximum number of results

OBJECT — Read, create, delete, lock/unlock ABAP objects
  object create                           Create an ABAP object
      --type, --name, --package           (required)
      --description, --transport
  object delete                      Delete an ABAP object
  object lock                        Lock an object for editing
  object read                Read object structure
  object run           Run an ABAP console class (IF_OO_ADT_CLASSRUN)
  object unlock                      Unlock an object

SOURCE — Read, write, and check ABAP source code
  source check               Check syntax
  source edit                Open source in $EDITOR and write back
  source read                Read source code
      --version                  active or inactive (default: active)
      --section 
                 main, localdefinitions, localimplementations, testclasses, all
      --color / --no-color                ANSI syntax highlighting
  source write               Write source code
      --file 
                       Path to local source file  (required)
      --activate                          Activate the object after writing
      --optimistic                        Try lockless write first (pre-7.51 SAP)

ACTIVATE — Activate inactive ABAP objects
  activate 

TEST / CHECK
  test                       Run ABAP unit tests
  check                      Run ATC quality checks
      --variant                     ATC variant (default: DEFAULT)

TRANSPORT — List, create, and release transports
  transport create --desc  --package 

  transport list [--user ]
  transport release 

DATA DICTIONARY — Tables and CDS views
  ddic table                        Get table definition (fetches lengths + descriptions by default)
      --no-resolve-types                  Skip data-element lookup; show field names and types only
      --raw                               Print raw SAP XML response
  ddic cds                          Get CDS view source

PACKAGE — List contents and check package existence
  package exists 
  package list 
  package tree                      Recursive BFS traversal
      --type                        Filter: CLAS, PROG, TABL, INTF, FUGR
      --max-depth                      (default: 50)

GLOBAL FLAGS
  --host, --port, --user, --password, --client
  --https, --insecure
  --json                                  Machine-readable JSON output
  --color / --no-color
  --timeout 
  --session-file 
                   Persist session for lock/write/unlock workflows
  -v / -vv                                INFO / DEBUG logging

EXIT CODES
  0  Success   1  Connection/auth   2  Not found   5  Activation error
  6  Lock conflict   7  Test failure   8  ATC check error   99  Internal error

MCP服务器

erpl-adt包括一个内置的MCP服务器(模型上下文协议,版本2024-11-05),它通过stdin/stdout上的JSON-RPC 2.0将所有adt操作作为工具公开。这使得AI代理可以直接搜索、读取、写入、测试和管理ABAP代码。

erpl-adt mcp --host sap.example.com --port 44300 --https

在MCP客户端中配置它(例如,Claude Desktop、Claude Code):

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

部署工作流

erpl-adt还包括原始 deploy 通过YAML配置自动部署abapGit包的工作流程:

cat > config.yaml <<EOF
connection:
  host: localhost
  port: 50000
  use_https: false
  client: "001"
  user: DEVELOPER
  password_env: SAP_PASSWORD

repos:
  - name: flight
    url: https://github.com/SAP-samples/abap-platform-refscen-flight.git
    branch: refs/heads/main
    package: /DMO/FLIGHT
    activate: true
EOF

export SAP_PASSWORD=your_password
erpl-adt deploy -c config.yaml

部署工作流是幂等状态机: discover → create package → clone → pull → activate。每一步都检查先决条件,如果已经满足,则跳过。重新运行是安全的。支持多仓库部署 depends_on 用于拓扑排序。

从源头构建

git clone --recurse-submodules https://github.com/datazooDE/erpl-adt.git
cd erpl-adt
make release

需要CMake 3.21+、Ninja和C++17编译器(GCC 13+、Apple Clang 15+或MSVC 17+)。vcpkg作为git子模块包含在内。

要运行测试,请执行以下操作:

make test                          # Unit tests (offline, no SAP system needed)
make test-integration-py           # Integration tests (requires SAP system)

码头工人

docker build -t erpl-adt .
docker run --rm -v $(pwd)/config.yaml:/config.yaml \
    -e SAP_PASSWORD=your_password \
    erpl-adt deploy -c /config.yaml

或者使用Docker Compose进行SAP ABAP云开发人员试用版的端到端配置:

docker compose up

许可证

Apache许可证2.0 --版权所有2026 Datazoo GmbH

目录标签

目录标签

C++命令行工具PythonClaude本地部署SAP开发ABAP工具CLI工具RESTAPI源代码管理

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP