SAP ADT MCP Server
SAP ADT MCP 服务器
用于 SAP ABAP 开发工具 (ADT) REST API 的 MCP 服务器。使 AI 助手能够从单个服务器实例读取、创建和修改 ABAP 源代码、检查 DDIC 对象、执行 SQL 查询、管理传输请求、分析跟踪、获取短转储 (short dumps)、控制调试器等——跨多个 SAP 系统。
工具 (66)
源代码与 DDIC (11)
工具 | 描述 | 输入 |
| 获取 ABAP 程序/报表源代码 |
|
| 获取 ABAP 类源代码 |
|
| 获取函数模块源代码 |
|
| 获取函数组源代码 |
|
| 获取 ABAP include 源代码 |
|
| 获取 ABAP 接口源代码 |
|
| 获取 CDS 视图 DDL 源代码 |
|
| 获取 DDIC 结构定义 |
|
| 获取 ABAP 数据库表定义 |
|
| 获取 DDIC 数据元素定义 |
|
| 获取 DDIC 域定义 |
|
存储库与搜索 (3)
工具 | 描述 | 输入 |
| 按名称模式搜索 ABAP 对象(支持通配符) |
|
| 获取事务代码详情(包、应用组件) |
|
| 获取包内容(包含类型/描述的对象) |
|
创建、更改与执行 (12)
工具 | 描述 | 输入 |
| 创建、写入源代码并激活程序 |
|
| 修改现有程序(锁定、写入、激活、解锁) |
|
| 创建、写入源代码并激活类 |
|
| 修改现有类(锁定、写入、激活、解锁) |
|
| 创建、写入源代码并激活接口 |
|
| 修改现有接口(锁定、写入、激活、解锁) |
|
| 创建、写入源代码并激活 CDS 视图 |
|
| 修改现有 CDS 视图(锁定、写入、激活、解锁) |
|
| 执行程序并返回 WRITE 输出 |
|
| 执行 ABAP SQL 查询并以表格形式返回结果 |
|
| 获取指定日期的 ST22 短转储 |
|
| 获取 CSRF 令牌和会话 Cookie | (无) |
传输管理 (7)
工具 | 描述 | 输入 |
| 列出当前用户所有可修改的传输请求 | (无) |
| 获取完整的传输详情(任务、对象、状态) |
|
| 检查对象的传输要求 |
|
| 创建新的传输请求 |
|
| 释放传输请求以供导入 |
|
| 删除传输请求 |
|
| 列出 SAP 系统用户 | (无) |
SAT 跟踪 (7)
工具 | 描述 | 输入 |
| 列出 ABAP 运行时跟踪 (SAT/SE30) |
|
| 获取跟踪的性能命中列表 |
|
| 获取跟踪的数据库访问统计信息 |
|
| 获取跟踪的语句级调用树 |
|
| 删除运行时跟踪 |
|
| 创建跟踪收集配置 |
|
| 删除跟踪配置 |
|
ST05 性能跟踪 (3)
工具 | 描述 | 输入 |
| 为用户启用 SQL/缓冲区/RFC/授权跟踪 |
|
| 禁用所有活动的性能跟踪 | (无) |
| 获取活动的跟踪类型、用户过滤器和服务器信息 | (无) |
跨系统跟踪 (5)
工具 | 描述 | 输入 |
| 为 RAP、OData、SADL、BAdI、Gateway 启用跨系统跟踪 |
|
| 禁用跨系统跟踪激活 |
|
| 列出活动的跨系统跟踪激活 | (无) |
| 列出捕获的跨系统跟踪结果 |
|
| 获取跨系统跟踪的详细记录 |
|
服务绑定 (3)
工具 | 描述 | 输入 |
| 获取 OData 服务绑定详情 |
|
| 发布 OData 服务绑定 |
|
| 取消发布 OData 服务绑定 |
|
调试器 (14)
工具 | 描述 | 输入 |
| 启动调试器监听器(打开有状态会话) |
|
| 停止监听器并关闭调试会话 |
|
| 检查调试器会话是否已附加 |
|
| 在源代码位置设置断点 |
|
| 移除断点 |
|
| 附加到正在运行的 ABAP 调试会话 |
|
| 获取当前调用堆栈 | (无) |
| 获取变量值 |
|
| 获取子/嵌套变量值 |
|
| 在调试期间设置变量值 |
|
| 单步进入/跳过/返回/继续/终止 |
|
| 导航到堆栈帧 |
|
| 在变量上设置监视点(值更改时暂停) |
|
| 列出所有活动的监视点 | (无) |
多系统 (1)
工具 | 描述 | 输入 |
| 列出所有已配置的 SAP 系统(包含 ID、主机名和客户端) | (无) |
所有工具都接受可选的 system_id 参数以针对特定的 SAP 系统。省略该参数则使用默认(第一个配置的)系统。
先决条件
Node.js v18 或更高版本
拥有 S_ADT_RES 权限的 SAP 用户,用于访问 ADT 资源
在
/sap/bc/adt/下激活 ICF 服务(通过事务SICF)角色 SAP_BC_DWB_ABAPDEVELOPER 或等效角色
安装
git clone https://github.com/ethanhan2014/sap-adt-mcp.git
cd sap-adt-mcp
npm install
npm run build配置
选项 1:通过 .env 配置单个系统
cp .env.example .env编辑 .env 文件,填入您的 SAP 系统连接详情:
SAP_HOSTNAME=your-sap-host.example.com
SAP_SYSNR=50
SAP_USERNAME=YOUR_USER
SAP_PASSWORD=YOUR_PASSWORD
SAP_CLIENT=001
SAP_LANGUAGE=EN变量 | 描述 | 示例 |
| SAP 系统主机名 |
|
| 系统编号 (端口 = |
|
| SAP 用户名 |
|
| SAP 密码 |
|
| SAP 客户端 |
|
| 登录语言 (默认: |
|
选项 2:通过 systems.json 配置多个系统
在项目根目录下创建 systems.json(参考 systems.json.example):
[
{
"id": "DEV",
"hostname": "dev-system.sap.com",
"sysnr": "50",
"client": "001",
"username": "YOUR_USER",
"password": "YOUR_PASSWORD",
"language": "EN"
},
{
"id": "QA",
"hostname": "qa-system.sap.com",
"sysnr": "00",
"client": "001",
"authType": "certificate",
"certThumbprint": "YOUR_CERT_THUMBPRINT",
"language": "EN"
}
]当存在 systems.json 时,系统配置将忽略 .env 文件。第一个系统为默认系统。在任何工具调用中使用 system_id 即可针对特定系统操作。
支持的认证类型:
basic (默认) — 用户名/密码
certificate — 通过
certThumbprint使用 X.509 客户端证书
使用方法
Claude Code
添加到 ~/.claude.json:
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"]
}
}
}Cline (VS Code)
添加到 Cline MCP 设置 (cline_mcp_settings.json):
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"],
"disabled": false,
"autoApprove": []
}
}
}独立运行
npm start开发(使用 MCP Inspector)
npx @modelcontextprotocol/inspector node dist/index.js技术栈
TypeScript + Node.js
MCP SDK (
@modelcontextprotocol/sdk)Axios (用于 HTTP)
SAP ADT REST API (通过 HTTPS,支持 Basic Auth 或 X.509 证书)
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ethanhan2014/sap-adt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server