Skip to main content
Glama
ethanhan2014

SAP ADT MCP Server

by ethanhan2014

SAP ADT MCP Server

SAP ABAP Development Tools (ADT) REST API用のMCPサーバーです。AIアシスタントが、単一のサーバーインスタンスから複数のSAPシステムにわたり、ABAPソースコードの読み取り・作成・変更、DDICオブジェクトの検査、SQLクエリの実行、移送管理、トレース分析、ショートダンプの取得、デバッガーの制御などを行えるようにします。

ツール (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_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

.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_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