ABAPilot

io.github.NicoHern由 GitHub 账号 NicoHern 发布v1.0.6更新于 Oct 24, 2026

ABAP MCP connector for SAP ECC and on-premise S/4HANA. Requires a licensed ABAPilot backend.

发布方自己的服务:QuickBooks Connector by Meridian

概览

AI 生成的概览

ABAPilot 将 AI 编程助手连接到 SAP ECC 和本地部署的 S/4HANA,可读取 ABAP 源码、数据字典元数据和表数据,并转发代码写入与程序执行请求。

可以做什么
读取 ABAP 源码、包含文件、屏幕、文本元素和交叉引用,并在不激活代码的情况下做语法检查。浏览数据字典:表结构、对象详情、域、外键、连接推断和开发包内容。查询业务表数据,支持过滤、分页、流式读取、多表连接和行数统计。查看运维与排障数据,如短转储、系统日志、后台作业、用户锁定和 T100 消息。审查变更凭证、安全说明和翻译,并检索 SAP 文档与社区知识。将写入、补丁、程序运行和变式保存请求转发给后端。
适用场景
适合需要让助手理解或审查 SAP ECC 或本地 S/4HANA 系统中现有 ABAP,或借助真实字典与源码上下文协助开发和排障的场景。面向已部署授权 SAP 端后端、希望用编程客户端操作本系统的团队。
运行要求
通过 npx 以 Node.js 进程在本地经 stdio 运行。需要在 SAP 系统中安装授权的 ABAPilot 后端,并在 ABAPILOT_URL 中提供端点地址。认证使用 ABAPILOT_USER 与 ABAPILOT_PASSWORD,或使用 ABAPILOT_TOKEN;ABAPILOT_CLIENT 指定 SAP 客户端。需要能访问 SAP 的 HTTPS 端点。ABAPILOT_TOOLS 可选地限制暴露的工具。
安装前请注意
会把 SAP 源码、字典和表数据发送给所选的 AI 客户端和模型提供商,需确认哪些上下文离开本系统。凭据通过 ABAPILOT_PASSWORD 或 ABAPILOT_TOKEN 提供;ABAPILOT_TLS_INSECURE 会跳过证书校验,仅限开发环境。写入、补丁、翻译写回、程序运行和变式保存工具可能修改或执行 SAP 中的内容;README 说明防护取决于后端,且不能假定每次写入都会做语法检查。请先在沙箱中测试。

安装

在 SourceWeft 中

  1. 打开 控制台中的 ABAPilot,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

ABAPilot — MCP connector for ABAP development on SAP ECC and S/4HANA

[Listed on mcpservers.org]

ABAPilot by Crimson Consulting connects AI coding assistants to SAP ECC and on-premise S/4HANA. Use SAP source code and dictionary context to understand existing ABAP, review proposed changes and support development from your preferred MCP-capable coding client.

The connector is free and MIT-licensed. Connecting to SAP requires a licensed ABAPilot backend installed in your system.

Evidence you can inspect

  • Four-installation operational checks, 9 September 2026: two ECC and two S/4HANA installations passed dictionary reads, component reads, dispatcher-source reads and positive/negative syntax checks. This did not test writes, activation, transports, authorization boundaries or production readiness.
  • Public MIT-licensed ABAP REST framework: inspect the table-driven endpoint registry, dispatcher and example handlers. This framework is separate from the licensed ABAPilot backend and is not proof that the checked installations run an identical public commit.
  • Published MCP catalog: the npm 1.0.6 connector exposes 49 tools. Catalog discovery is not evidence that every operation works on a particular SAP installation.

Start with an existing ABAP program

Ask your assistant to explain a program using source and dictionary definitions retrieved from SAP. Review the references it used before moving to a proposed change. Available operations depend on the connector version, installed backend and enabled endpoints.

Architecture and prerequisites

The MCP connector runs outside SAP and calls the licensed SAP-side backend. Agree the SAP release, backend version, HTTPS endpoint, individual user permissions and permitted operations with your SAP team before a customer trial.

Start the connector using npx -y abapilot. This command does not install the SAP backend. Follow the linked setup guide for client-specific configuration and secret handling. Pin a reviewed connector version for repeatable team rollouts.

Technical reference: Architecture

Tools

The current repository catalog lists 49 tools. Availability depends on the installed connector, backend version and enabled endpoints.

Business data

  • sap_read_table_data — Reads actual data from a SAP table with optional WHERE clause filtering and metadata inclusion
  • sap_read_table_data_enhanced — Query data from a SAP table with optional WHERE clause filtering
  • sap_read_table_paginated — Read table data with pagination support for large result sets
  • sap_stream_table_data — Streams large table data using offset-based pagination
  • sap_smart_table_query — Execute a table query with automatic metadata-driven enhancements
  • sap_multi_table_query — Execute a multi-table query with proper joins and optional aggregation
  • sap_count_rows — Estimate row count for a table BEFORE fetching data
  • sap_analyze_query — Analyze a natural language query and return intelligent guidance for building the SAP query
  • sap_search_tables — Search the Data Dictionary for tables matching a keyword

Data Dictionary & metadata

  • sap_read_table_structure — Retrieves the metadata of a Data Dictionary table including field definitions, data types, keys, and descriptions
  • sap_read_object_details — Read comprehensive details about any SAP repository or DDIC object
  • sap_read_object_info — Get metadata about an ABAP object including creation date, last changed date, author, and package
  • sap_check_type_exists — Checks whether a type exists in the SAP Data Dictionary and returns its kind
  • sap_read_domain_values — Retrieves the fixed values defined for a domain
  • sap_read_field_domain_values — Get domain fixed values for a specific table field
  • sap_read_foreign_keys — Read foreign key relationships for a table from Data Dictionary (DD08L)
  • sap_infer_joins — Automatically detect join keys between two tables based on domain matching
  • sap_get_field_metadata — Get enriched metadata for SAP table fields with semantic classification
  • sap_list_package_objects — List all ABAP repository objects in a development package (DEVCLASS)

ABAP code

  • sap_read_code — Retrieves the source code of an ABAP object (program, class, or function group)
  • sap_read_includes — Retrieves all include files for a program with their source code
  • sap_read_dynpros — Retrieves screen definitions for a program including field lists
  • sap_read_texts — Retrieves text elements (selection texts, text symbols) for a program
  • sap_read_where_used — Queries SAP's cross-reference tables (WBCROSSGT/WBCROSSI) to find what objects use a given object (forward) or what a given object uses (inverse)
  • sap_get_enhancements — List ALL enhancements for a SAP transaction or program in one call
  • sap_syntax_check — Validates ABAP source code for syntax errors without creating or activating it
  • sap_write_code — Forward a source-write request; object support, validation and activation depend on the installed backend
  • sap_write_code_safe — Forward a request to the backend; safeguards are not implemented by the public Node connector and its input schema is incomplete
  • sap_patch_code — Forward a source-patching request; supported patch arguments and validation depend on the backend

Operations & troubleshooting

  • sap_read_dumps — Query ABAP runtime errors (short dumps) from SAP's ST22 transaction
  • sap_read_dump_details — Get detailed information for a specific short dump including full error texts, cause, and solution
  • sap_read_syslog — Query system log entries from SAP's SM21 transaction
  • sap_read_jobs — Query background job information from SAP's SM37 transaction
  • sap_run_program — Request report execution; output depends on the backend, with no timeout or background-job fallback implemented by this connector
  • sap_run_transaction — Run the ABAP report behind a report transaction code, optionally with a selection-screen variant, and return its list output
  • sap_save_variant — Create or overwrite an ABAP selection-screen VARIANT for a report, so it can be reused by sap_run_program (and the performance trace / headless…
  • sap_read_user_locks — Query user lock status from USR02 table
  • sap_diagnose_message — Diagnose a SAP error/warning/info message end-to-end
  • sap_lookup_t100 — Look up a specific SAP T100 message by message class and number
  • sap_lookup_error — Analyze a SAP error message using all available external knowledge sources

Audit & compliance

  • sap_read_change_docs — Query change documents from CDHDR/CDPOS tables
  • sap_read_change_docs_v2 — Optimized change document query using function modules
  • sap_discover_change_object — Find the change document OBJECTCLAS for a table by querying TCDOB
  • sap_scan_security_notes — Discover ABAP Security/HotNews notes for a SAP patch-day month and rank them by relevancy to this system
  • sap_check_notes_relevancy — Check relevancy of one or more SAP Note numbers against this system (component/SP levels, download state, implementation readiness)

Translation

  • sap_read_translations — Reads translatable texts from a SAP object in source and optionally target language
  • sap_write_translations — Writes translated texts back to a SAP object
  • sap_translate — Composite tool: reads translatable texts from a SAP object, translates them using AI, and optionally writes them back

Knowledge

  • sap_search_knowledge — Search SAP documentation and community for information on any SAP topic

The catalog is gated in two places. In your system, the /ABAPILOT/CONFIG (or /TSRA/CONFIG) endpoint registry decides which endpoints are live — switch one off and the tool stops working, with no client change. On the client side, ABAPILOT_TOOLS narrows what a given MCP client sees:

json
"env": { "ABAPILOT_TOOLS": "sap_read_table_data,sap_read_code,sap_syntax_check" }

The licensed backend may expose operations beyond this public catalog. Agree the required capabilities and verify them on the deployed version before a trial.

Validation and data handling

The public connector advertises source and dictionary readers, syntax checking and write endpoints. Validation and deployment safeguards depend on the installed backend. A syntax check must not be assumed for every write. Confirm the enabled endpoints, validation behavior, authorization failures and log attribution on your deployed version.

Review which SAP context your chosen AI client and model provider receive. Using your own API key does not by itself establish local processing or a particular retention policy.

Evaluate the workflow

The September 2026 walkthrough uses Claude Code, ABAPilot and a lifecycle skill to change a sandbox copy of an existing material-description report, then update its technical specification and test scenarios. Length and invalid-character checks run independently; a regex-cache regression checks that changing patterns does not reuse a stale expression.

The final recorded ABAP Unit run passed 14 test methods. The scenario document records 15 passes out of 16 scenarios: 14 unit scenarios and a documentation review, with manual report integration not run. Material selection, SALV rendering, MM03 navigation and runtime termination before data selection were not verified by the unit run. The original report and material-master data were not changed. This is one configured sandbox installation, not evidence of production readiness or a promise of identical support on every SAP release.

The technical case contains screenshots and the coverage boundaries. The earlier four-minute creation demo is also available.

The recorded demo shows one sandbox workflow. In a live demo we can discuss your system, IDE and requirements before agreeing a customer trial. Choose a time.

Further reading

来源:README.md,提交 25639b7

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.6最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Pilot 集成