# User Guide Documentation This directory contains documentation for end users of the MCP ABAP ADT Server. ## Quick Start ### Installation Options You can install MCP ABAP ADT Server in two ways: #### 1. From Pre-built Package (Recommended for Production) Install from a pre-built `.tgz` package: ```bash # Install globally npm install -g ./mcp-abap-adt-core-.tgz # Available commands: mcp-abap-adt # stdio transport (default, for MCP clients) mcp-abap-adt --transport=http # HTTP server mcp-abap-adt --transport=sse # SSE server ``` **Configuration:** ```bash # Create .env file cat > .env << 'EOF' SAP_URL=https://your-sap-system.com SAP_CLIENT=100 SAP_AUTH_TYPE=jwt SAP_JWT_TOKEN=your-jwt-token EOF # Run HTTP server mcp-abap-adt --transport=http --port=3000 ``` See [Installation Guide](../installation/INSTALLATION.md#package-installation-details) for detailed instructions. #### 2. From Source Repository (For Development) ```bash # Clone and build git clone --recurse-submodules https://github.com/fr0ster/mcp-abap-adt.git cd mcp-abap-adt npm install npm run build npm start ``` See [Installation Guide](../installation/INSTALLATION.md) for full instructions. --- ## Documentation Files - **[CLIENT_CONFIGURATION.md](CLIENT_CONFIGURATION.md)** - Guide for configuring MCP clients to connect to the server, including HTTP header configuration for dynamic SAP connection setup - **[AVAILABLE_TOOLS_READONLY.md](AVAILABLE_TOOLS_READONLY.md)** - Read-only tools (auto-generated) - **[AVAILABLE_TOOLS_HIGH.md](AVAILABLE_TOOLS_HIGH.md)** - High-level tools (auto-generated) - **[AVAILABLE_TOOLS_LOW.md](AVAILABLE_TOOLS_LOW.md)** - Low-level tools (auto-generated) - **[AVAILABLE_TOOLS_COMPACT.md](AVAILABLE_TOOLS_COMPACT.md)** - Compact facade tools (auto-generated) - **[AVAILABLE_TOOLS.md](AVAILABLE_TOOLS.md)** - Full combined tools reference (auto-generated) - **[AUTHENTICATION.md](AUTHENTICATION.md)** - Destination-based auth, service key locations, and header-based auth - **[TERMINOLOGY.md](TERMINOLOGY.md)** - Project-specific terminology - **[HANDLERS_MANAGEMENT.md](HANDLERS_MANAGEMENT.md)** - Enable/disable handler groups and exposure ## Getting Started 1. **Install the server**: Choose package or source installation above 2. **Configure your client**: - **Auto (recommended)**: Use the configurator (`@mcp-abap-adt/configurator`, repo: `mcp-abap-adt-conf`) - **Manual**: See [CLIENT_CONFIGURATION.md](CLIENT_CONFIGURATION.md) for JSON/TOML examples 3. **Explore available tools**: - [Read-only tools](AVAILABLE_TOOLS_READONLY.md) - [High-level tools](AVAILABLE_TOOLS_HIGH.md) - [Low-level tools](AVAILABLE_TOOLS_LOW.md) - [Compact tools](AVAILABLE_TOOLS_COMPACT.md) ## Package Tree Output `GetPackageTree` returns a package root with nested subpackages and a flat list of objects for each package. Each object includes: - `adtType` (ADT type string, e.g. `CLAS/OC`) - `type` (normalized object type) - `codeFormat` (`source` or `xml`) - `restoreStatus` (`ok` or `not-implemented`) ## Command Reference After installing from package, these commands are available: ### `mcp-abap-adt` - Default stdio transport ```bash mcp-abap-adt [--env ] [--env-path /path/to/.env] ``` Use with MCP clients like Claude Desktop, VSCode extensions. ### `mcp-abap-adt --transport=http` - HTTP server ```bash mcp-abap-adt --transport=http [--port 3000] [--host localhost] [--env ] [--env-path /path/to/.env] ``` Starts HTTP server with StreamableHTTP transport. ### `mcp-abap-adt --transport=sse` - SSE server ```bash mcp-abap-adt --transport=sse [--port 3000] [--host localhost] [--env ] [--env-path /path/to/.env] ``` Starts HTTP server with Server-Sent Events transport. ## Examples ### Example 1: HTTP Server on Port 8080 ```bash mcp-abap-adt --transport=http --port=8080 ``` ### Example 2: SSE Server Accessible from Network ```bash mcp-abap-adt --transport=sse --host=0.0.0.0 --port=3000 ``` ### Example 3: Custom Environment File ```bash mcp-abap-adt --transport=http --env-path /opt/config/.env.production --port=8080 ```