abap-accelerator

abap-accelerator

Enables ABAP development on SAP systems by exposing ADT APIs as MCP tools for browsing, creating, updating, and testing ABAP objects.

Category
Visit Server

README

ABAP Accelerator MCP Server

<!-- mcp-name: io.github.kashzod/abap-accelerator -->

SAP ADT API Model Context Protocol (MCP) server for ABAP development. Works with any MCP-compatible client including Claude Code, Amazon Q Developer, Kiro, Cursor, Windsurf, and more.

Fork notice: This is a fork of AWS ABAP Accelerator for Amazon Q Developer, repackaged for PyPI and optimized for local stdio runs. The original project targets Docker/ECS enterprise deployments; this fork focuses on the simplest path: pip install and go.

Quick Start

pip install abap-accelerator

Create a .env file or set environment variables:

SAP_HOST=your-sap-host.example.com   # or host:port (e.g., 10.0.0.1:44300)
SAP_INSTANCE_NUMBER=00                # used to calculate port when SAP_HOST has no port
SAP_CLIENT=100
SAP_USERNAME=your_username
SAP_PASSWORD=your_password

Run:

abap-accelerator

That's it. The server starts in stdio mode and is ready for your MCP client.

MCP Client Configuration

Add to your client's MCP config file:

Claude Code (.mcp.json in project root):

{
  "mcpServers": {
    "abap-accelerator": {
      "command": "abap-accelerator",
      "env": {
        "SAP_HOST": "your-sap-host.example.com",
        "SAP_INSTANCE_NUMBER": "00",
        "SAP_CLIENT": "100",
        "SAP_USERNAME": "your_username",
        "SAP_PASSWORD": "your_password"
      }
    }
  }
}

Amazon Q Developer (~/.aws/amazonq/mcp.json or workspace .amazonq/mcp.json):

{
  "mcpServers": {
    "abap-accelerator": {
      "command": "abap-accelerator",
      "env": {
        "SAP_HOST": "your-sap-host.example.com",
        "SAP_INSTANCE_NUMBER": "00",
        "SAP_CLIENT": "100",
        "SAP_USERNAME": "your_username",
        "SAP_PASSWORD": "your_password"
      }
    }
  }
}

Kiro (.kiro/settings/mcp.json):

{
  "mcpServers": {
    "abap-accelerator": {
      "command": "abap-accelerator",
      "env": {
        "SAP_HOST": "your-sap-host.example.com",
        "SAP_INSTANCE_NUMBER": "00",
        "SAP_CLIENT": "100",
        "SAP_USERNAME": "your_username",
        "SAP_PASSWORD": "your_password"
      }
    }
  }
}

Tip: If you run abap-accelerator from a directory with a .env file, you can omit the env block — the server loads .env automatically.

Environment Variables

Variable Required Default Description
SAP_HOST Yes - SAP hostname or host:port
SAP_INSTANCE_NUMBER Yes - Instance number (00-99), used to calculate port
SAP_CLIENT Yes - SAP client number (e.g., 100)
SAP_USERNAME Yes - SAP username
SAP_PASSWORD Yes - SAP password
SAP_LANGUAGE No EN SAP language
SAP_SECURE No true Use HTTPS
SSL_VERIFY No true Verify SSL certificates (set false for self-signed)
CUSTOM_CA_CERT_PATH No - Path to custom CA certificate
LOG_LEVEL No INFO Logging level (DEBUG, INFO, WARNING, ERROR)

SAP Port Calculation

The server calculates the SAP port from the instance number:

Instance Number HTTPS Port HTTP Port
00 44300 8000
01 44301 8001
02 44302 8002

Formula: HTTPS = 44300 + instance_number, HTTP = 8000 + instance_number

If SAP_HOST includes a port (e.g., 10.0.0.1:44300), the instance number is ignored.

Available Tools

Tool Description
aws_abap_cb_connection_status Check SAP connection status
aws_abap_cb_get_objects List ABAP objects in a package
aws_abap_cb_get_source Get source code of an object
aws_abap_cb_search_object Search for ABAP objects
aws_abap_cb_create_object Create new ABAP object
aws_abap_cb_update_source Update source code
aws_abap_cb_check_syntax Check syntax of source code
aws_abap_cb_activate_object Activate ABAP object
aws_abap_cb_activate_objects_batch Batch activate objects
aws_abap_cb_run_atc_check Run ATC quality checks
aws_abap_cb_run_unit_tests Execute unit tests
aws_abap_cb_get_test_classes Get test classes for an object
aws_abap_cb_create_or_update_test_class Create/update test class
aws_abap_cb_get_migration_analysis Get migration analysis
aws_abap_cb_get_transport_requests Get transport requests

Environment Guidance

This tool provides direct access to ABAP development objects. Use it in non-production environments:

Intended Not Recommended
Development (DEV) Production (PRD)
Sandbox (SBX) Pre-production
Quality Assurance (QAS)
Test / Training / Demo

Troubleshooting

SSL Certificate Errors (SSL: CERTIFICATE_VERIFY_FAILED):

  • Set CUSTOM_CA_CERT_PATH to your corporate CA cert
  • For testing only: set SSL_VERIFY=false

Connection Timeout:

  • Verify SAP system is reachable from your network
  • Check firewall allows port 44300 (or your SAP port)
  • Verify SAP ADT services are enabled (transaction SICF)

Debug Logging:

  • Set LOG_LEVEL=DEBUG for verbose output

License

MIT No Attribution (MIT-0) — see LICENSE

Original work Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.

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