Skip to main content
Glama
ethanhan2014

SAP ADT MCP Server

by ethanhan2014

SAP ADT MCP 서버

SAP ABAP Development Tools (ADT) REST API를 위한 MCP 서버입니다. AI 어시스턴트가 단일 서버 인스턴스에서 여러 SAP 시스템에 걸쳐 ABAP 소스 코드를 읽고, 생성 및 수정하며, DDIC 객체를 검사하고, SQL 쿼리를 실행하며, 전송(transport)을 관리하고, 추적(trace)을 분석하고, 덤프를 가져오고, 디버거를 제어하는 등의 작업을 수행할 수 있도록 지원합니다.

도구 (66)

소스 코드 및 DDIC (11)

도구

설명

입력

get_abap_program

ABAP 프로그램/리포트 소스 코드 가져오기

name

get_class

ABAP 클래스 소스 코드 가져오기

name

get_function_module

함수 모듈 소스 코드 가져오기

function_group, function_name

get_function_group

함수 그룹 소스 코드 가져오기

name

get_include

ABAP 인클루드 소스 코드 가져오기

name

get_interface

ABAP 인터페이스 소스 코드 가져오기

name

get_cds_view

CDS 뷰 DDL 소스 가져오기

name

get_structure

DDIC 구조 정의 가져오기

name

get_table

ABAP 데이터베이스 테이블 정의 가져오기

name

get_data_element

DDIC 데이터 엘리먼트 정의 가져오기

name

get_domain

DDIC 도메인 정의 가져오기

name

리포지토리 및 검색 (3)

도구

설명

입력

search_object

이름 패턴으로 ABAP 객체 검색 (와일드카드 지원)

query, max_results?

get_transaction

트랜잭션 세부 정보(패키지, 앱 컴포넌트) 가져오기

name

get_package

패키지 내용(유형/설명이 포함된 객체) 가져오기

name

생성, 변경 및 실행 (12)

도구

설명

입력

create_abap_program

프로그램 생성, 소스 작성 및 활성화

name, description, source, package?

change_abap_program

기존 프로그램 수정 (잠금, 작성, 활성화, 잠금 해제)

name, source

create_abap_class

클래스 생성, 소스 작성 및 활성화

name, description, source, package?

change_abap_class

기존 클래스 수정 (잠금, 작성, 활성화, 잠금 해제)

name, source

create_interface

인터페이스 생성, 소스 작성 및 활성화

name, description, source, package?

change_interface

기존 인터페이스 수정 (잠금, 작성, 활성화, 잠금 해제)

name, source

create_cds_view

CDS 뷰 생성, 소스 작성 및 활성화

name, description, source, package?

change_cds_view

기존 CDS 뷰 수정 (잠금, 작성, 활성화, 잠금 해제)

name, source

execute_program

프로그램 실행 및 WRITE 출력 반환

name

execute_sql

ABAP SQL 쿼리 실행 및 결과를 테이블로 반환

query

fetch_st22_dumps

특정 날짜의 ST22 덤프 가져오기

date, user?, max_results?

get_csrf_token

CSRF 토큰 및 세션 쿠키 가져오기

(없음)

전송 관리 (7)

도구

설명

입력

list_user_transports

현재 사용자의 모든 수정 가능한 전송 목록

(없음)

get_transport

전체 전송 세부 정보(태스크, 객체, 상태) 가져오기

transport_number

get_transport_info

객체에 대한 전송 요구 사항 확인

uri, devclass, operation?

create_transport

새 전송 요청 생성

devclass, description, ref?, operation?

release_transport

가져오기를 위한 전송 릴리스

transport_number

delete_transport

전송 요청 삭제

transport_number

list_system_users

SAP 시스템 사용자 목록

(없음)

SAT 추적 (7)

도구

설명

입력

list_traces

ABAP 런타임 추적(SAT/SE30) 목록

user?

get_trace_hitlist

추적에 대한 성능 히트 리스트 가져오기

trace_id

get_trace_db_access

추적에 대한 데이터베이스 액세스 통계 가져오기

trace_id

get_trace_statements

추적에 대한 문장 수준 호출 트리 가져오기

trace_id

delete_trace

런타임 추적 삭제

trace_id

create_trace_config

추적 수집 구성 생성

object_name, process_type?, description?

delete_trace_config

추적 구성 삭제

config_id

ST05 성능 추적 (3)

도구

설명

입력

enable_st05_trace

사용자에 대한 SQL/버퍼/RFC/인증 추적 활성화

user?, sql?, buffer?, rfc?, auth?, enqueue?, http?

disable_st05_trace

모든 활성 성능 추적 비활성화

(없음)

get_st05_trace_state

활성 추적 유형, 사용자 필터 및 서버 정보 가져오기

(없음)

교차 추적 (5)

도구

설명

입력

enable_cross_trace

RAP, OData, SADL, BAdI, Gateway에 대한 교차 추적 활성화

user?, components?, max_traces?, trace_level?

disable_cross_trace

교차 추적 활성화 비활성화

activation_id

get_cross_trace_activations

활성 교차 추적 활성화 목록

(없음)

list_cross_traces

캡처된 교차 추적 결과 목록

user?

get_cross_trace_records

교차 추적에 대한 상세 레코드 가져오기

trace_id

서비스 바인딩 (3)

도구

설명

입력

get_binding_details

OData 서비스 바인딩 세부 정보 가져오기

binding_name

publish_service_binding

OData 서비스 바인딩 게시

binding_name, binding_version

unpublish_service_binding

OData 서비스 바인딩 게시 취소

binding_name, binding_version

디버거 (14)

도구

설명

입력

start_debugger_listener

디버거 리스너 시작 (상태 저장 세션 열기)

terminal_id?, ide_id?, user?

stop_debugger_listener

리스너 중지 및 디버그 세션 닫기

terminal_id?, ide_id?, user?

get_debugger_session

디버거 세션 연결 여부 확인

terminal_id?, ide_id?, user?

set_debugger_breakpoint

소스 위치에 중단점 설정

uri, line, user?

delete_debugger_breakpoint

중단점 제거

breakpoint_id

attach_debugger

실행 중인 ABAP 디버그 세션에 연결

debug_mode?

get_debugger_stack

현재 호출 스택 가져오기

(없음)

get_debugger_variables

변수 값 가져오기

variable_names[]

get_debugger_child_variables

하위/중첩 변수 값 가져오기

variable_name

set_debugger_variable_value

디버깅 중 변수 값 설정

variable_name, value

debugger_step

단계별 실행(Step into/over/return/continue/terminate)

step_type, uri?

debugger_goto_stack

스택 프레임으로 이동

stack_type, position

insert_watchpoint

변수에 감시점 설정 (값 변경 시 일시 중지)

variable_name, condition?

get_watchpoints

모든 활성 감시점 목록

(없음)

다중 시스템 (1)

도구

설명

입력

list_systems

ID, 호스트 이름 및 클라이언트가 포함된 모든 구성된 SAP 시스템 목록

(없음)

모든 도구는 특정 SAP 시스템을 대상으로 하는 선택적 system_id 매개변수를 허용합니다. 생략하면 기본(첫 번째로 구성된) 시스템이 사용됩니다.

필수 조건

  • Node.js v18 이상

  • ADT 리소스 액세스를 위한 S_ADT_RES 권한이 있는 SAP 사용자

  • /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

SAP 시스템 연결 세부 정보로 .env를 편집하십시오:

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_HOSTNAME

SAP 시스템 호스트 이름

your-sap-host.example.com

SAP_SYSNR

시스템 번호 (포트 = 443 + sysnr)

50 → 포트 44350

SAP_USERNAME

SAP 사용자

DEVELOPER

SAP_PASSWORD

SAP 비밀번호

secret

SAP_CLIENT

SAP 클라이언트

001

SAP_LANGUAGE

로그온 언어 (기본값: EN)

EN

옵션 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 (기본값) — 사용자 이름/비밀번호

  • certificatecertThumbprint를 통한 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)

  • HTTP용 Axios

  • 기본 인증 또는 X.509 인증서를 사용하는 HTTPS 기반 SAP ADT REST API

Install Server
F
license - not found
B
quality
-
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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