mcpbeat Sign in

Abap Adt MCP Server

by williansaez Your server? Claim it
local only

Abap Adt MCP runs on your own machine — the client starts it, so there is no endpoint to ping. 513 installs a week from npm. Last commit 2 Nov 2026.

ABAP development from Claude and other MCP hosts: source, transports, tests, ATC, debugger

Installs per day peak 411 · avg 58 · +464% w/w
a month agotoday
513
Installs / week
npm · abap-adt-mcp
15
Stars
3 open issues
2 Nov 2026
Last commit
13 releases in 90 days
MIT
License
TypeScript

What the code does

We read the source, 10 h ago · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Runs an external command src/lib/sso2TicketProvider.ts:19
    execFile(config.command, config.args, {
Builds a file path from a variable src/handlers/NavigationHandlers.ts:330
                    const file = path.join(pkgDir, fileName);

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.

run in your terminal
claude mcp add abap-adt-mcp -- npx -y abap-adt-mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "abap-adt-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "abap-adt-mcp"
      ]
    }
  }
}
~/.codex/config.toml
[mcp_servers.abap-adt-mcp]
command = "npx"
args = ["-y", "abap-adt-mcp"]
.cursor/mcp.json
{
  "mcpServers": {
    "abap-adt-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "abap-adt-mcp"
      ]
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "abap-adt-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "abap-adt-mcp"
      ]
    }
  }
}

Optional settings from the registry entry, left out of the block above: SAP_SYSTEMS_FILE (Path to a JSON file mapping destination names to system configs (url, client, authType basic/sso/sso2/oauth, credentials). Recommended; keep the file mode 0600. See systems.example.json), SAP_SYSTEMS (Inline JSON map of destinations (same shape as SAP_SYSTEMS_FILE). Contains credentials — prefer SAP_SYSTEMS_FILE), SAP_DEFAULT_DESTINATION (Destination name used when a tool call omits `destination` (alternatively mark an entry with "default": true)), SAP_AUTH_TYPE (Default auth type for entries that don't specify one: sso (default), sso2, basic, or oauth), MCP_HTTP_PORT (When set (1024-65535), serve Streamable HTTP on http://127.0.0.1:<port>/mcp with bearer-token auth instead of stdio), MCP_HTTP_HOST (Bind address for the HTTP transport (default 127.0.0.1). Set 0.0.0.0 only inside containers that publish the port), MCP_HTTP_TOKEN (Bearer token for the HTTP transport; auto-generated and written to ~/.abap-adt-mcp/http-token when unset), MCP_HTTP_MAX_SESSIONS (Maximum concurrent MCP sessions on the HTTP transport (default 16); further initialize requests get 503), MCP_HTTP_MAX_BODY_BYTES (Largest request body the HTTP transport accepts, in bytes (default 4194304); larger bodies are refused with HTTP 413), MCP_HTTP_SESSION_TTL_MINUTES (Idle minutes after which an HTTP session (and its SAP sessions/locks) is closed (default 30)), MCP_HTTP_ALLOWED_ORIGINS (Comma-separated Origin values allowed on the HTTP transport (loopback origins always allowed when bound to loopback; * allows any)), MCP_HTTP_ALLOWED_HOSTS (Comma-separated Host header values allowed (DNS-rebinding protection; loopback hosts always allowed when bound to loopback)), MCP_EXPORT_ROOT (When set, exportPackageSources may only write inside this directory), MCP_AUDIT_FILE (Path of a JSONL audit trail: one record per tool call (tool, destination, duration, outcome ok/error/denied/unavailable, policy gate, redacted argument summary)), MCP_ADT_TRACE_FILE (Diagnostics: path of a JSONL trace with one line per ADT request (method, URI, status, headers). Cookie, Set-Cookie, Authorization and CSRF values are reduced to name and length; no response body is kept, error lines carry the first 300 characters of the redacted error text. Off when unset), MCP_READ_ONLY (Set to 1 to make every destination read-only (server-side; only read-only annotated tools plus login/logout run). Per-destination policies live in systems.json), MCP_ALLOW_DATA_PREVIEW (Set to 1 to let tableContents read table and CDS rows on every destination that does not state policy.allowDataPreview itself (reading table data is off by default)), MCP_ALLOW_FREE_SQL (Set to 1 to allow runQuery and tableContents with sqlQuery on every destination that does not state policy.allowFreeSql itself (free SQL is off by default; implies table data)), MCP_TOOLSETS (Toolsets to publish: comma list (core,source,objects,transports,analysis,tests,atc,data,discovery,runtime,refactoring,rap,services,git,debugger,traces) or a preset: all (default) or focused), MCP_DISABLED_TOOLSETS (Toolsets to hide, comma list (core cannot be disabled)), MCP_MAX_RESPONSE_CHARS (Character budget for a single tool response before results are paged/truncated (default 40000, minimum 5000). Raise it if your MCP host accepts larger tool outputs), SAP_ALLOW_REENTRANCE_TICKET (Set to 1 to enable the reentranceTicket tool (disabled by default: it returns a live SAP logon credential into the conversation)), SAP_URL (Legacy single-system mode: base URL of the SAP system, e.g. https://host:44300), SAP_USER (Legacy single-system mode: SAP username), SAP_PASSWORD (Legacy single-system mode: SAP password), SAP_CLIENT (Legacy single-system mode: SAP client number, e.g. 100), SAP_LANGUAGE (Legacy single-system mode: logon language, e.g. EN), SAP_BROWSER_PATH (SSO destinations: path to a Chromium/Chrome/Edge binary for the browser login (auto-detected when unset)), SAP_BROWSER_PROFILE_DIR (SSO destinations: directory of the persistent browser profile that keeps the identity-provider session (default ~/.abap-adt-mcp/sso/<host>)), SAP_SSO2_COMMAND (Legacy single-system sso2 mode: absolute path to the trusted local ticket provider), SAP_SSO2_ARGS (Legacy single-system sso2 mode: JSON array of provider arguments (never put a ticket here)), SAP_SSO2_TIMEOUT_MS (Legacy single-system sso2 mode: provider timeout in milliseconds (default 30000; range 1000-300000)), SAP_TLS_INSECURE (Legacy single-system mode: set to 1 to skip TLS certificate verification for that system only (sandboxes with self-signed certificates)), SAP_OAUTH_TOKEN_URL (Legacy single-system mode with SAP_AUTH_TYPE=oauth: OAuth2 token endpoint (client_credentials)), SAP_OAUTH_CLIENT_ID (Legacy single-system mode with SAP_AUTH_TYPE=oauth: OAuth2 client id), SAP_OAUTH_CLIENT_SECRET (Legacy single-system mode with SAP_AUTH_TYPE=oauth: OAuth2 client secret), SAP_OAUTH_SCOPE (Legacy single-system mode with SAP_AUTH_TYPE=oauth: optional OAuth2 scope), MCP_PROFILE_GATE (Platform gate for toolsets the destination does not expose (debugger, traces, abapGit, ...): enforce (default, refuse before calling SAP), warn (log only) or off), SAP_REQUEST_TIMEOUT_SECONDS (Seconds an ADT request may receive nothing before it fails as a network error, so a connection that died while the machine slept cannot hang every call (default 600; 0 waits forever)), MCP_SOURCE_CACHE_TTL_SECONDS (Lifetime of the per-session source cache used by grepPackage, cdsViewInfo and syntaxCheckCode (default 300; 0 keeps entries until logout)), MCP_CACHE_DIR (Directory for the cached SAP cloudification repository used by apiReleaseState (default ~/.abap-adt-mcp/cache)), MCP_API_CLASSIFICATION_FILES (Extra classification files for apiReleaseState, comma list: a path inside SAP's cloudification repository (partner/objectClassifications_ACME.json) or an https URL).

Alternatives to Abap Adt MCP

same job, measured the same way
SAP ABAP MCP
by coaspe

Develop, test, analyze, and operate SAP ABAP systems through ADT from AI coding agents.

459 installs/wk local only
Testfinder
by cloudcorprecords

Find the tests relevant to a source file from an import map, ranked, with the run command.

local only
Mobile MCP
by mobile-next

MCP server for iOS and Android Mobile Development, Automation and Testing

57 092 installs/wk local only
AndroidMCP Framework
by kshivam1177

MCP server and CLI for Android development and change-aware Android and Flutter testing workflows.

9 417 installs/wk local only
ai tag debugger
by analitikisler

QA-tests your site analytics, ad and consent tags (GA4, GTM, Ads, Meta, TikTok) from chat.

650 installs/wk local only
R
R Packagedev MCP
by b0ydt

MCP server for R package development using usethis, devtools, renv, and testthat

43 installs/wk local only
C
Ceraph
by ceraph

MCP server for agent-driven React Native and Expo development and mobile testing

181 installs/wk local only
Trunk Flaky Tests
by trunk

Flaky test detection, root cause analysis, and fix suggestions for development teams.

answering

Abap Adt MCP — questions

Answers built from our own checks of this server.

Why is there no uptime for Abap Adt MCP?
Abap Adt MCP runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the npm package abap-adt-mcp was installed 513 times last week.
How do I connect Abap Adt MCP?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It runs locally, so the command pulls abap-adt-mcp straight from npm; nothing to host, nothing to sign up for.
How many people use Abap Adt MCP?
The npm package abap-adt-mcp was installed 513 times in the last week. Week over week that is +464%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Abap Adt MCP open source?
Yes — it is published under the MIT licence, written in TypeScript, 15 stars on GitHub and 3 open issues. The source link is on this page, so you can read exactly what it does with your data before you connect it.