← 返回目录
M

MCP Abap Adt

社区
SAP ABAP ADT 的 MCP 服务器:支持 SAP BTP ABAP Cloud 和本地 ECC/S/4HANA,提供完整的 CRUD、JWT/XSUAA 和服务密钥认证。
GitHub 源仓库 ↗
★ 83 Stars 分类 · 开发工具 热门 源版本 05688ee9841b
61FMRS · C
可靠性
8/20
安全与权限
12/20
维护活跃度
13/20
文档质量
15/20
安装易用性
13/20

该服务器为 SAP ABAP 系统提供了强大的 CRUD 功能,适合 AI 辅助开发,但需要安全配置和谨慎监管。它支持多种认证方式和三种传输方式。

查看 FMRS 评分方法 →

mcp-abap-adt 是一个为 ABAP ADT 设计的 MCP 服务器,适用于 SAP ECC/S/4HANA(本地)和 SAP BTP ABAP Cloud 系统。它通过 ADT 为 AI 代理提供对真实 ABAP 仓库的受控访问,使分析和修改基于系统数据而非假设。它专为 AI 辅助结对编程(AIPNV)而非自动驾驶式编码而构建。

工具能力

GetWhereUsed
执行对象的使用位置分析,映射使用范围和潜在影响。
DescribeByList
列出对象元数据信息。
GetObjectStructure
获取对象的内部结构。
GetObjectInfo
获取对象的详细信息。
SearchObject
搜索 ABAP 对象。
GetPackageTree
获取包层级结构。
GetPackageContents
获取包内容列表。
GetAbapAST
获取 ABAP 语法树。
GetAbapSemanticAnalysis
获取 ABAP 语义分析结果。
GetIncludesList
递归发现 include 列表。
CreateBehaviorDefinition
创建行为定义。
UpdateBehaviorDefinition
更新行为定义。
CreateBehaviorImplementation
创建行为实现。
UpdateBehaviorImplementation
更新行为实现。
CreateServiceDefinition
创建服务定义。
UpdateServiceDefinition
更新服务定义。
CreateMetadataExtension
创建元数据扩展。
UpdateMetadataExtension
更新元数据扩展。
CreateView
创建 CDS 或经典视图。
UpdateView
更新 CDS 或经典视图。
GetView
获取视图信息。
DeleteView
删除视图。
CreateClass
创建 ABAP 类。
UpdateClass
更新 ABAP 类。
GetClass
获取 ABAP 类信息。
DeleteClass
删除 ABAP 类。
CreateInterface
创建 ABAP 接口。
UpdateInterface
更新 ABAP 接口。
GetInterface
获取 ABAP 接口信息。
DeleteInterface
删除 ABAP 接口。
CreateFunctionGroup
创建函数组。
UpdateFunctionGroup
更新函数组。
GetFunctionGroup
获取函数组信息。
DeleteFunctionGroup
删除函数组。
CreateFunctionModule
创建函数模块。
UpdateFunctionModule
更新函数模块。
GetFunctionModule
获取函数模块信息。
DeleteFunctionModule
删除函数模块。
CreateTransport
创建传输请求。
GetTransport
获取传输请求。
ActivateObject
激活 ABAP 对象。
GetDomain
获取域。
CreateDomain
创建域。
UpdateDomain
更新域。
GetDataElement
获取数据元素。
CreateDataElement
创建数据元素。
UpdateDataElement
更新数据元素。
GetTable
获取数据库表。
CreateTable
创建数据库表。
GetTableContents
预览表数据。
GetStructure
获取结构。
CreateStructure
创建结构。
GetBehaviorDefinition
获取行为定义。
GetEnhancements
分析增强。
GetEnhancementImpl
获取增强实现。
GetEnhancementSpot
获取增强点。
GetInactiveObjects
监控待激活的非活动对象。
RuntimeCreateProfilerTraceParameters
创建性能分析跟踪参数。
RuntimeListProfilerTraceFiles
列出性能分析跟踪文件。
RuntimeGetProfilerTraceData
获取性能分析跟踪数据。
RuntimeGetDumpById
获取转储数据。
RuntimeListFeeds
读取运行时提要(转储、系统消息、网关错误)。
RuntimeListSystemMessages
获取 SM02 系统消息。
RuntimeGetGatewayErrorLog
获取网关错误日志。
GetSqlQuery
通过 ADT 数据预览 API 执行自定义 SQL 查询。

安装接入

  1. 全局安装服务器和配置器:npm install -g @mcp-abap-adt/corenpm install -g @mcp-abap-adt/configurator
  2. 使用配置器自动配置客户端,例如:mcp-conf --client cline --name abap --mcp TRIAL
  3. 或手动配置:在 MCP 客户端中设置 stdio 服务器,命令为 mcp-abap-adt,并配置环境变量(如 SAP_URL)。

更多详情请参考官方文档。

选型与风险

适合谁

  • ABAP 开发人员和架构师
  • RAP 开发者
  • 团队负责人和技术负责人,需要快速了解仓库
  • 构建 SAP 环境 RAG/代理工作流的团队

不适合谁

  • 不使用 SAP 系统的用户
  • 需要只读访问且不允许修改的用户(此服务器支持全 CRUD)
  • 依赖非标准认证方法且不支持的用户

所需权限

  • 需要访问 SAP 系统的 URL (SAP_URL)
  • 需要认证凭据:JWT 令牌(XSUAA)或基本认证用户名/密码
  • 需要 ABAP 客户端编号(SAP_CLIENT)
  • 对于本地系统,可能需要传输请求对象(SAP_MASTER_SYSTEM, SAP_RESPONSIBLE)
  • 可以创建、读取、更新和删除 ABAP 对象,因此需要足够的 ABAP 系统权限

风险与副作用

  • AI 代理可能意外修改或删除 ABAP 对象,如果权限过高导致破坏
  • 暴露的凭据(如密码、JWT 令牌)如果处理不当会被泄露
  • 对 SAP 系统的频率访问可能导致性能或锁问题
  • 代码生成的质量可能不符合生产标准,需要人工审查

常见排障

  1. 确保 SAP_URL 正确且可从运行 MCP 服务器的机器访问
  2. 验证认证方法:对于 BTP ABAP Cloud 使用 XSUAA/JWT,对于本地使用基本认证
  3. 检查 ABAP 客户端编号是否正确
  4. 对于本地系统,确保有足够的传输请求权限
  5. 阅读官方文档中的认证和配置部分

使用场景

变更前进行影响分析/使用位置分析,映射对象使用情况
跨类、接口、DDIC、CDS/视图和 RAP 工件进行依赖审计
为重构或云就绪准备提取仓库事实
通过 ADT 支持的 CRUD 操作快速迭代开发 RAP 和经典 ABAP
自动化文档和 RAG 摄入,从 ABAP 系统提取结构化事实

支持客户端

Claude Desktop完整支持