mcpField
A
ABAPilot

ABAPilot

ローカル
crimsonconsultingsl.com開発ツール47 週間前に更新

ABAPilot について

ABAPilotは、AIコーディングクライアントとSAP ECCおよびオンプレミスのS/4HANAをつなぐABAP開発用MCPコネクターです。ソースやディクショナリー情報の参照、構文チェックなどを提供し、SAP接続には別途ライセンス付きバックエンドが必要です。

主な機能

  1. 01ABAPソースとディクショナリー情報の参照
  2. 02ABAP構文チェック
  3. 03SAPデータとメタデータの検索
  4. 04ダンプ、ログ、ジョブの確認
  5. 05クライアントに表示するツールの絞り込み

活用シーン

  1. 01既存ABAPプログラムと依存関係の把握
  2. 02変更案の構文エラー確認
  3. 03SAPテーブル構造とデータの調査
  4. 04SAPダンプとシステムログの調査

MCP 対応

コネクターはSAP外部で動作し、ライセンス付きのSAP側バックエンドを介してMCP対応クライアントにツールを提供します。利用可能な操作は、コネクターのバージョン、バックエンド、稼働中のエンドポイントによって異なります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"nicohern-abapilot": {
"command": "npx",
"args": [
"-y",
"abapilot"
],
"env": {
"ABAPILOT_URL": "<ABAPILOT_URL>",
"ABAPILOT_USER": "<ABAPILOT_USER>",
"ABAPILOT_PASSWORD": "<ABAPILOT_PASSWORD>",
"ABAPILOT_TOKEN": "<ABAPILOT_TOKEN>",
"ABAPILOT_CLIENT": "<ABAPILOT_CLIENT>",
"ABAPILOT_TOOLS": "<ABAPILOT_TOOLS>",
"ABAPILOT_TLS_INSECURE": "<ABAPILOT_TLS_INSECURE>"
}
}
}
}
起動コマンドnpx -y abapilot
設定が必要な環境変数
ABAPILOT_URLURL of the ABAPilot SICF endpoint in your SAP system, e.g. https://sap-host:8443/sap/bc/abapilot
ABAPILOT_USERSAP user for basic authentication
ABAPILOT_PASSWORDシークレットSAP password for basic authentication
ABAPILOT_TOKENシークレットBearer token, alternative to basic authentication
ABAPILOT_CLIENTSAP client number, e.g. 100
ABAPILOT_TOOLSComma-separated allowlist of tool names to expose to the client. Optional; default is the full catalog.
ABAPILOT_TLS_INSECURESet to 1 to skip TLS certificate verification (development systems only)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmabapilot1.0.6

ツール

49

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
querystringはい自然言語クエリ(例:'top 10 customers by sales in 2024')
fetch_metadatabooleanいいえtrue の場合、特定されたテーブルのフィールドメタデータも取得して分類します(デフォルト:true)

詳細

ABAPilot — SAP ECC および S/4HANA での ABAP 開発向け MCP コネクター

mcpservers.org に掲載

Crimson Consulting の ABAPilot は、AI コーディングアシスタントを SAP ECC およびオンプレミスの S/4HANA に接続します。SAP のソースコードとディクショナリーのコンテキストを使って既存の ABAP を理解し、変更案をレビューして、お好みの MCP 対応コーディングクライアントでの開発を支援します。

コネクターは無料で、MIT ライセンスです。SAP に接続するには、システムにライセンス済みの ABAPilot バックエンドをインストールする必要があります。

確認可能なエビデンス
  • 4 つのインストール環境での運用チェック、2026 年 9 月 9 日:2 つの ECC と 2 つの S/4HANA のインストール環境で、ディクショナリーの読み取り、コンポーネントの読み取り、ディスパッチャーのソース読み取り、および肯定/否定の構文チェックに合格しました。書き込み、アクティベーション、移送、認可の境界、または本番環境への適合性はテストしていません。
  • 公開されている MIT ライセンスの ABAP REST フレームワーク:テーブル駆動型のエンドポイントレジストリー、ディスパッチャー、ハンドラーの例を確認できます。このフレームワークはライセンス済みの ABAPilot バックエンドとは別のものであり、確認済みのインストール環境で同一の公開コミットが実行されていることを示す証拠ではありません。
  • 公開済み MCP カタログ:npm 1.0.6 コネクターは 49 個のツールを公開しています。カタログでの検出は、特定の SAP インストール環境ですべての操作が動作することを示す証拠ではありません。
既存の ABAP プログラムから始める

SAP から取得したソースとディクショナリー定義を使って、プログラムを説明するようアシスタントに依頼してください。変更案に進む前に、アシスタントが使用した参照を確認してください。利用できる操作は、コネクターのバージョン、インストール済みバックエンド、有効化されているエンドポイントによって異なります。

アーキテクチャと前提条件

MCP コネクターは SAP の外部で実行され、ライセンス済みの SAP 側バックエンドを呼び出します。顧客環境で試用する前に、SAP チームと SAP リリース、バックエンドのバージョン、HTTPS エンドポイント、個々のユーザー権限、および許可する操作について合意してください。

npx -y abapilot を使ってコネクターを起動します。このコマンドでは SAP バックエンドはインストールされません。クライアント固有の設定とシークレットの取り扱いについては、リンク先のセットアップガイドに従ってください。チームで再現可能な展開を行うには、レビュー済みのコネクターのバージョンを固定してください。

技術リファレンス:アーキテクチャ

ツール

現在のリポジトリーカタログには 49 個のツールが掲載されています。利用可否は、インストール済みのコネクター、バックエンドのバージョン、および有効化されているエンドポイントによって異なります。

ビジネスデータ

  • sap_read_table_data — 任意の WHERE 句によるフィルタリングとメタデータの取得を含め、SAP テーブルの実データを読み取ります
  • sap_read_table_data_enhanced — 任意の WHERE 句によるフィルタリングを指定して、SAP テーブルのデータをクエリします
  • sap_read_table_paginated — 大規模な結果セットに対応するページネーションを使ってテーブルデータを読み取ります
  • sap_stream_table_data — オフセットベースのページネーションを使って、大量のテーブルデータをストリーミングします
  • sap_smart_table_query — メタデータに基づく拡張を自動的に適用して、テーブルクエリを実行します
  • sap_multi_table_query — 適切な結合と任意の集計を使って、複数テーブルのクエリを実行します
  • sap_count_rows — データを取得する前に、テーブルの行数を推定します
  • sap_analyze_query — 自然言語のクエリを分析し、SAP クエリの構築に役立つインテリジェントなガイダンスを返します
  • sap_search_tables — キーワードに一致するテーブルをデータディクショナリーで検索します

データディクショナリーとメタデータ

  • sap_read_table_structure — フィールド定義、データ型、キー、説明など、データディクショナリテーブルのメタデータを取得します
  • sap_read_object_details — SAP リポジトリまたは DDIC オブジェクトの詳細情報を取得します
  • sap_read_object_info — 作成日、最終変更日、作成者、パッケージなど、ABAP オブジェクトのメタデータを取得します
  • sap_check_type_exists — SAP データディクショナリに型が存在するかを確認し、その種別を返します
  • sap_read_domain_values — ドメインに定義された固定値を取得します
  • sap_read_field_domain_values — 特定のテーブルフィールドに対するドメインの固定値を取得します
  • sap_read_foreign_keys — データディクショナリ(DD08L)からテーブルの外部キー関係を読み取ります
  • sap_infer_joins — ドメインの一致に基づいて、2つのテーブル間の結合キーを自動的に検出します
  • sap_get_field_metadata — 意味的な分類を含む、SAP テーブルフィールドの拡充されたメタデータを取得します
  • sap_list_package_objects — 開発パッケージ(DEVCLASS)内のすべての ABAP リポジトリオブジェクトを一覧表示します

ABAP コード

  • sap_read_code — ABAP オブジェクト(プログラム、クラス、または関数グループ)のソースコードを取得します
  • sap_read_includes — プログラムのすべてのインクルードファイルとそのソースコードを取得します
  • sap_read_dynpros — フィールド一覧を含む、プログラムの画面定義を取得します
  • sap_read_texts — プログラムのテキスト要素(選択テキスト、テキストシンボル)を取得します
  • sap_read_where_used — SAP の相互参照テーブル(WBCROSSGT/WBCROSSI)を検索し、指定したオブジェクトを使用しているオブジェクト(順方向)、または指定したオブジェクトが使用しているオブジェクト(逆方向)を見つけます
  • sap_get_enhancements — 1回の呼び出しで、SAP トランザクションまたはプログラムのすべての拡張を一覧表示します
  • sap_syntax_check — ABAP ソースコードを作成または有効化せずに、構文エラーがないか検証します
  • sap_write_code — ソースコード書き込みリクエストを転送します。オブジェクトのサポート、検証、有効化は、インストールされているバックエンドによって異なります
  • sap_write_code_safe — リクエストをバックエンドに転送します。セーフガードはパブリック Node コネクタに実装されておらず、入力スキーマも不完全です
  • sap_patch_code — ソースコードのパッチ適用リクエストを転送します。サポートされるパッチ引数と検証は、バックエンドによって異なります

運用とトラブルシューティング

  • sap_read_dumps — SAP の ST22 トランザクションから ABAP ランタイムエラー(ショートダンプ)を照会します
  • sap_read_dump_details — 完全なエラーテキスト、原因、解決策など、特定のショートダンプの詳細情報を取得します
  • sap_read_syslog — SAP の SM21 トランザクションからシステムログエントリを照会します
  • sap_read_jobs — SAP の SM37 トランザクションからバックグラウンドジョブ情報を照会します
  • sap_run_program — レポートの実行をリクエストします。出力はバックエンドによって異なり、このコネクタにはタイムアウトやバックグラウンドジョブへのフォールバックは実装されていません
  • sap_run_transaction — レポートトランザクションコードに対応する ABAP レポートを実行します。必要に応じて選択画面のバリアントを指定し、リスト出力を返します
  • sap_save_variant — レポート用の ABAP 選択画面 VARIANT を作成または上書きし、sap_run_program(およびパフォーマンストレース/ヘッドレス…
  • sap_read_user_locks — USR02 テーブルからユーザーロックの状態を照会します
  • sap_diagnose_message — SAP のエラー/警告/情報メッセージをエンドツーエンドで診断します
  • sap_lookup_t100 — メッセージクラスと番号を指定して、特定の SAP T100 メッセージを検索します
  • sap_lookup_error — 利用可能なすべての外部ナレッジソースを使って、SAP のエラーメッセージを分析します

監査とコンプライアンス

  • sap_read_change_docs — CDHDR/CDPOS テーブルから変更文書を照会します
  • sap_read_change_docs_v2 — 関数モジュールを使用した最適化済みの変更文書クエリです
  • sap_discover_change_object — TCDOB を照会して、テーブルの変更文書 OBJECTCLAS を見つけます
  • sap_scan_security_notes — SAP のパッチデー対象月の ABAP Security/HotNews ノートを検出し、このシステムとの関連性に基づいて順位付けします
  • sap_check_notes_relevancy — 1つ以上の SAP Note 番号について、このシステムとの関連性(コンポーネント/SP レベル、ダウンロード状態、実装準備状況)を確認します

翻訳

  • sap_read_translations — SAP オブジェクトから翻訳可能なテキストをソース言語と、必要に応じてターゲット言語で読み取ります
  • sap_write_translations — 翻訳済みテキストを SAP オブジェクトに書き戻します
  • sap_translate — 複合ツール:SAP オブジェクトから翻訳可能なテキストを読み取り、AI を使用して翻訳し、必要に応じて書き戻します

ナレッジ

  • sap_search_knowledge — SAP に関するあらゆるトピックについて、SAP のドキュメントやコミュニティを検索します

カタログは 2 か所で制御されています。システムでは、/ABAPILOT/CONFIG(または /TSRA/CONFIG)エンドポイントレジストリによって有効なエンドポイントが決まります。エンドポイントを 1 つ無効にすると、クライアントを変更せずにツールが動作しなくなります。クライアント側では、ABAPILOT_TOOLS によって各 MCP クライアントに表示されるツールを絞り込みます。

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

ライセンス対象のバックエンドでは、この公開カタログに含まれない操作が公開される場合があります。トライアルの前に、必要な機能について合意し、導入済みバージョンで動作を確認してください。

検証とデータの取り扱い

公開コネクターでは、ソースおよび辞書の読み取り、構文チェック、書き込みエンドポイントが提供されます。検証やデプロイの安全対策は、インストールされているバックエンドによって異なります。すべての書き込みで構文チェックが行われるとは限りません。導入済みバージョンで、有効なエンドポイント、検証の動作、認可エラー、ログの帰属先を確認してください。

選択した AI クライアントとモデルプロバイダーが、どの SAP コンテキストを受け取るか確認してください。独自の API キーを使用しても、それだけでローカル処理や特定のデータ保持ポリシーが保証されるわけではありません。

ワークフローを評価する

2026 年 9 月の解説では、Claude Code、ABAPilot、ライフサイクルスキルを使用し、既存の品目説明レポートのサンドボックスコピーを変更した後、技術仕様書とテストシナリオを更新します。長さと無効な文字のチェックは独立して実行されます。また、正規表現キャッシュの回帰テストでは、パターンを変更したときに古い式が再利用されないことを確認します。

最後に記録された ABAP Unit の実行では、14 個のテストメソッドが合格しました。シナリオ文書では、16 シナリオ中 15 件の合格が記録されています。内訳は、14 件のユニットテストシナリオとドキュメントレビューで、レポートの手動統合テストは実施されていません。品目選択、SALV のレンダリング、MM03 のナビゲーション、データ選択前の実行時終了は、ユニットテストでは検証されていません。元のレポートと品目マスターデータは変更されていません。これは構成済みのサンドボックス環境 1 つでの事例であり、本番環境への対応可否を示すものでも、すべての SAP リリースで同一のサポートを保証するものでもありません。

技術事例には、スクリーンショットとカバレッジの範囲が掲載されています。以前の 4 分間の作成デモもご覧いただけます。

収録デモでは、サンドボックスでのワークフローを 1 つ紹介しています。ライブデモでは、お客様のトライアルについて合意する前に、お客様のシステム、IDE、要件についてご相談いただけます。日時を選択してください。

関連資料

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。