abap-mcpb

abap-mcpb

Enables SAP ABAP development by connecting Claude Desktop to SAP systems via the ADT API for reading, writing, and deploying code. It offers 25 tools covering object management, transports, quality assurance, and SQL data access.

Category
Visit Server

README

abap-mcpb

An MCPB (MCP Bundle) package for SAP ABAP development via the ADT API. Connect Claude Desktop to your SAP system and let it read, write, test, and deploy ABAP code — no build step required.

Origins

This MCPB is packaged from dassian-adt (v2.0), which is itself a production rewrite of mcp-abap-abap-adt-api by Mario Andreschak. The underlying ADT HTTP communication is powered by Marcello Urbani's abap-adt-api library.

What changed in this MCPB vs the original dist/

Only two files were modified from the original compiled output:

  1. handlers/QualityHandlers.js — The ATC check (abap_atc_run) was rewritten to actively trigger a new ATC run and return structured findings grouped by severity (error/warning/info) with fields like checkId, checkTitle, messageTitle, and location (line/column). The original passively fetched an existing worklist.

  2. index.js — Added global uncaughtException and unhandledRejection handlers, ENV diagnostic logging at startup, and try/catch wrapping around runStdio() for better error reporting. The original had bare .catch(console.error).

All other 24 files (handlers, lib, auth, types) are identical to the dassian-adt v2.0 dist/ output.

What It Does

25 tools covering the full ABAP development lifecycle:

Category Tools What They Do
Source abap_get_source, abap_set_source, abap_get_function_group Read/write ABAP source for any object type. Function group tool fetches all includes and FMs in one call.
Objects abap_create, abap_delete, abap_activate, abap_search, abap_object_info Full object lifecycle. Create in $TMP or real packages.
Transports transport_create, transport_assign, transport_release, transport_list, transport_info, transport_contents Create, populate, and release transports.
Quality abap_syntax_check, abap_atc_run Syntax check and ATC with structured severity grouping.
Data abap_table, abap_query Read tables/CDS views with WHERE/LIKE/BETWEEN. Execute freestyle SQL.
Run abap_run Create temp class, run ABAP code, capture output, clean up.
System login, healthcheck, abap_get_dump, raw_http Session management, connectivity test, ST22 dumps, raw ADT access.
Git git_repos, git_pull gCTS repository listing and pull.

Why Use an MCPB?

An MCPB (MCP Bundle) is a self-contained package that installs directly into Claude Desktop — no cloning repos, no npm install, no build steps. You get:

  • One-click install — download the .mcpb file and open it in Claude Desktop
  • Built-in configuration UI — enter your SAP connection details in a form, no JSON editing required
  • Per-tool permissions — enable or disable individual tools from the Claude Desktop settings, so you control exactly what the AI can do on your SAP system

Configuration

After installing, Claude Desktop presents a configuration form for your SAP connection:

SAP Connection Configuration

Tool Permissions

All 25 tools are listed in the Claude Desktop permissions panel. You can enable or disable each tool individually — for example, keep read-only tools on while disabling write operations until you're ready:

Tool Permissions

Installation

Prerequisites

  • Claude Desktop with MCPB support
  • Access to an SAP system with ADT enabled (typically port 44300)
  • SAP user with development authorization

Install the MCPB

  1. Download abap-mcpb.mcpb from the Releases page
  2. Open Claude Desktop and install the bundle
  3. Configure your SAP connection when prompted:
    • SAP System URL — e.g. https://your-sap-server:44300
    • SAP Username
    • SAP Password
    • SAP Client — e.g. 100 (optional, defaults to 100)
    • SAP Language — e.g. EN (optional, defaults to EN)
    • Allow Self-Signed Certificates — set to 0 if your SAP system uses self-signed certs

How This MCPB Was Built

This section documents how the bundle was created from the dassian-adt source, for reproducibility.

1. Clone and build the original

git clone https://github.com/DassianInc/dassian-adt.git
cd dassian-adt
npm install
npm run build

This produces a dist/ folder with compiled JavaScript.

2. Create the MCPB project folder

mkdir abap-mcpb
cp -r dist/ abap-mcpb/server/
cp -r node_modules/ abap-mcpb/node_modules/
cp package.json package-lock.json abap-mcpb/

The dist/ folder was renamed to server/ to match the MCPB convention.

3. Apply fixes

Two files were modified from the original dist/ output:

  • server/index.js — Added global error handlers (uncaughtException, unhandledRejection), ENV diagnostic logging at startup, and try/catch around runStdio()
  • server/handlers/QualityHandlers.js — Rewrote ATC check to actively trigger runs and return structured findings grouped by severity

4. Create manifest.json

A manifest.json was created defining the server entry point (server/index.js), user configuration schema (SAP connection details), and the 25 tool declarations.

5. Create .mcpbignore

An .mcpbignore file excludes tests, dev config, TypeScript source, build artifacts, and dev-only node_modules (jest, babel, types) from the bundle.

6. Build the bundle

The .mcpb bundle was created using the Claude Desktop MCPB tooling, producing abap-mcpb.mcpb.

Project Structure

abap-mcpb/
  manifest.json       MCPB metadata, tool declarations, user config schema
  abap-mcpb-icon.png  Extension icon
  server/             Runtime JavaScript (compiled from dassian-adt)
    index.js          MCP server entry point
    handlers/         Tool handler modules (Source, Object, Transport, etc.)
    lib/              URL builder, error classification, logger
    auth/             Browser-based SAP login page
    types/            Tool schema definitions
  node_modules/       Runtime dependencies
  package.json        Dependency manifest
  .mcpbignore         Bundle exclusion rules
  abap-mcpb.mcpb      The built bundle

Credits

License

MIT — see LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured