@sap/mdk-mcp-server
Five tools for Mobile Development Kit work: create a project, generate pages and rules into it, drive the build and deploy, read the documentation, and pull OData metadata from Mobile Services.
MDK applications are metadata-driven and cross-platform, built against SAP Mobile Services on BTP, which means an agent guessing at them is guessing at a schema rather than at code. mdk-create makes a project or entity metadata from the templates, mdk-gen generates pages, actions, i18n files and rule references into it, mdk-manage runs build, deploy, validate, migrate and QR codes, mdk-docs reaches the documentation and examples, and mdk-fetch-mobile-metadata pulls OData metadata from Mobile Services. Installed globally and launched as mdk-mcp, optionally pinned to a schema version.
Facts
Where it sits
Who is behind it
In the atlas: maintains 137, wrote 14@SAPmaintainerBill FroelichContributes to this
In the atlas: contributes to 2@billfroelichJITENDRA KANSALContributes to this
In the atlas: contributes to 3, wrote 1@jitendrakansalKannusamiKContributes to this
In the atlas: contributes to 1@KannusamiKlnoens-sapContributes to this
In the atlas: contributes to 1@lnoens-sapMing KhoContributes to this
In the atlas: contributes to 2@mingkhoWang, Qiu ShiContributes to this
In the atlas: contributes to 2@qswangsapDimitar StoevContributes to this
In the atlas: contributes to 1@StoevthomaszangContributes to this
In the atlas: contributes to 1@thomaszang8 contributors
Before choosing this
Conditions
PracticalFunctional boundary
It expects a real landscape, not just a project: a .service.metadata file naming the Mobile Services app, endpoint and destination, the Cloud Foundry CLI, and access to a BTP Cloud Foundry environment. From 0.4.0 macOS support is ARM64 only — Intel Macs are not supported — alongside Linux and Windows on x64 and ARM64.
What it declares
Every artifact
- Type
- MCP server
- Origin
- By SAP
- Runtime
- Node.js
- Runs on
- Cloud Foundry
Connections
Letting a coding agent read and act on your project or system
Download
Install
npm add @sap/mdk-mcp-serverDerived from the package name. No recipe recorded; the README has the configuration.
Learn more
- What’s new in Mobile development kit client 26.9What’s new in Mobile development kit client 26.9This Mobile development kit client 26.9 release note explains that @sap/mdk-mcp-server is now reachable from SAP Business Application Studio's AI chat, giving an assistant real knowledge of the MDK metadata schema rather than generic code generation. With it an assistant can scaffold an MDK project, generate pages, actions, rules, i18n, services and styles into it, iterate on it conversationally, and answer schema and client-API questions inline through mdk-docs.published 2026-09-27JITENDRA KANSAL, SAP Community
README
quoted from SAP/mdk-mcp-server under Apache-2.0, readWelcome to @sap/mdk-mcp-server
What is MCP server for Mobile Development Kit (MDK)?
This open-source server provides AI agents with comprehensive MDK knowledge and tools. By combining best practice guidelines, project-aware context information, templates for creating new projects, and access to the MDK CLI tools, the MDK MCP server transforms AI agents into MDK development experts.
What is Mobile Development Kit?
The mobile development kit is a powerful framework that enables developers to build cross-platform mobile applications using a metadata-driven approach. It is part of SAP Business Technology Platform and integrates tightly with SAP Mobile Services. Some of SAP’s larger and complex mobile apps are built using MDK. An example is SAP Service and Asset Manager.
Table of Contents
- Setup
- Available Tools
- Ingesting GitHub Knowledge (Advanced)
- Offline OData Querying (Advanced)
- Support, Feedback, Contributing
- Telemetry
- Security / Disclosure
- Code of Conduct
- Licensing
- Acknowledgments
Setup
Platform Support
The MDK MCP server supports the following platforms:
- macOS: Apple Silicon (ARM64) only
- ⚠️ Note: Intel Mac (x64) is not supported in v0.4.0+ due to onnxruntime-node ≥1.24 dropping darwin/x64 binaries
- Linux: x64, ARM64, and other architectures
- Windows: x64, ARM64
If you're on an Intel Mac, you may need to:
- Use Rosetta 2 to run the ARM64 version (performance may vary)
- Or stay on an earlier version that uses onnxruntime-node <1.24
Installation Steps
-
Install node.js 24.11.1.
-
To install the MDK MCP server, you have two options:
a. Use npm to install it from the public npmjs registry at @sap/mdk-mcp-server.
npm install -g @sap/mdk-mcp-serverb. Clone the open-source code repository at https://github.com/SAP/mdk-mcp-server, and use
npmto install.git clone https://github.com/SAP/mdk-mcp-server.git cd mdk-mcp-server npm i npm run build npm i -g @sap/mdk-mcp-server@. -
Configure your MCP client (AI agent) to connect to the server. Note that configuration will vary depending on the AI agent used.
Cline in VS Code: Example using the Cline extension.
- With Cline open, look below the prompt box and click Manage MCP Servers.
- In the dialog, click Settings. The MCP Servers page opens.
- Click Configure MCP Servers. This will open the
cline_mcp_settings.jsonfile in your editor. - In the JSON settings file, add a configuration block for MDK MCP server within the
mcpServerssection, and save the file. The supported schema versions include 26.9 (default), 26.6, 26.3, 25.9, 25.6, 24.11, and 24.7.
{ "mcpServers": { "mdk-mcp": { "type": "stdio", "command": "mdk-mcp", "args": ["--schema-version", "26.9"] } } }Note:
If the MCP server is not listed with its available tools in the Cline extension immediately, restart VS Code.Expand: Usage in Claude Code (VS Code Extension)
Claude Code discovers MCP servers from its configuration.
- Open (or create) your Claude Code configuration file:
~/.claude.json- Add the following MCP server configuration:
{ "mcpServers": { "mdk-mcp": { "type": "stdio", "command": "mdk-mcp", "args": ["--schema-version", "26.9"] } } }Note: If
~/.claude.jsonalready exists, merge themdk-mcpentry into the existingmcpServerssection rather than replacing the entire file.- Reload the VS Code window (or restart VS Code).
Verify the installation
Open the Claude Code panel in VS Code and run:
/mcpYou should see
mdk-mcplisted as an available MCP server.Expand: Usage in OpenCode
An example using OpenCode:
{ "mcp": { "mdk-mcp": { "type": "local", "command": ["mdk-mcp", "--schema-version", "26.9"], "enabled": true } } }Expand: Usage in Cursor
Edit the file
~/.cursor/mcp.json:{ "mcpServers": { "mdk-mcp": { "type": "stdio", "command": "mdk-mcp", "args": ["--schema-version", "26.9"] } } }Expand: Usage in Claude Desktop
Use the absolute path to Node.js in your Claude Desktop configuration file.-
Find your Node.js installation path by running the terminal command:
which nodeThis might output something like
/usr/local/bin/nodeor/opt/homebrew/bin/node. -
Edit
~/Library/Application Support/Claude/claude_desktop_config.jsonand update thecommandfield to use the absolute path:{ "mcpServers": { "mdk-mcp": { "command": "/usr/local/bin/node", "args": ["/usr/local/lib/node_modules/@sap/mdk-mcp-server/build/index.js", "--schema-version", "26.9"] } } } -
Restart Claude Desktop.
Note: Adjust the paths based on your actual Node.js and MDK MCP server installation locations.
Once configured, your AI agent will have access to the MDK MCP server. Depending on your IDE settings, you may need to approve initial tool calls.
-
Create a Rule File: To ensure your AI coding assistant uses the MCP servers appropriately for your project, define rules and guidelines in a file named
AGENTS.md. In the Cline extension for VS Code, click the Manage Cline Rules & Workflows icon below the prompt box, click + to create a new rule file (e.g.,AGENTS.md) and add the example rules shown below:- Do not generate `.service.metadata` file. - Do not generate `.xml` file in the `Services` folder. - Do not change `.project.json` file. -
Verify your LLM Provider and AI model.
When you add Cline to VS Code, it serves as the default API provider. You can choose a different LLM provider, such as SAP AI Core. To add an SAP AI Core API provider in the Cline extension for VS Code, follow these steps:
- With Cline open, look below the prompt box and click Select Model / API Providers.
- Choose your API provider (such as SAP AI Core) and enter your details. See the instructions here for a detailed setup.
- Select your preferred AI model.
-
Integration with SAP Mobile Services: To create a new MDK application, the MCP server uses the Cloud Foundry CLI and a
.service.metadatafile containing:- The mobile application defined in the SAP Mobile Services instance.
- Mobile Services API Endpoint
- Mobile Services App ID
- Mobile Destinations including OData service metadata.
We include a tool to help with creating or updating this file as part of our VS Code extension: Mobile development kit extension for VS Code. This is how you can use this tool to create or update the
.service.metadatafile:- Install the Mobile development kit extension for VS Code version 1.32.0 or later.
- Install the Cloud Foundry CLI.
- Log in to your SAP BTP Cloud Foundry environment. For more details you can refer to this help documentation.
cf login -a <your target endpoint> --sso- Create an empty folder on your machine and open it in VS Code.
- Open the Command Palette in VS Code and select MDK: Open Mobile App Editor.
- Create a new or select an existing mobile app.
- Select a destination.
- Click Add App to Project.
- The mobile application defined in the SAP Mobile Services instance.
-
Your environment is now ready for the MDK development with MCP server. You can now enter a prompt to:
- Generate a new MDK project displaying OData entities information.
- Enhance an existing project by adding additional UI controls on a given page.
- Validate your current MDK project schema.
- Migrate old MDK projects to latest schema.
- Deploy your MDK project.
- Generate onboarding QR code.
- Explain specific properties.
- Find information about control properties or any aspect of the documentation.
Available Tools
Note
Tools are meant to be used by AI models and do not constitute a stable API.
This release of the MDK MCP server includes the following tools, which can be accessed by your AI agent:
| Tools | Description | Parameters |
|---|---|---|
mdk-create | Creates MDK projects or entity metadata using templates (CRUD, List Detail, Base). Use this for initializing new projects or adding entity metadata to existing projects. | - folderRootPath: The path of the current project root folder. - scope: The scope of creation:• project: Initialize a new MDK project with full structure• entity: Add entity metadata to an existing project- templateType: The type of template to use (crud, list detail, base). Note: base template is only valid for project scope.- oDataEntitySets: The OData entity sets relevant to the user prompt, separated by commas.- offline: Whether to generate the project in offline mode (only applicable for project scope). Set to false unless offline is explicitly specified. |
mdk-gen | Generates MDK artifacts including pages, actions, i18n files, and rule references. Returns prompts for LLM processing (pages, actions, i18n) or searches for rule examples. | - artifactType: The type of artifact to generate:• page: Generate MDK page files (.page) with databinding or layout• action: Generate MDK action files (.action)• i18n: Generate internationalization files (.properties)• rule: Search for and return relevant JavaScript rule examples- folderRootPath: The path of the current project root folder (not required for rule artifact type).For page artifacts: - pageType: Type of page page):• databinding: Data-driven pages with controls bound to OData• layout: Structure-focused pages with specific layouts- controlType: The control type for databinding pages (required when pageType is databinding). Available types: ObjectTable, FormCell, KeyValue, ObjectHeader, ContactTable, SimplePropertyCollection, ObjectCard, DataTable, KPIHeader, ProfileHeader, ObjectCollection, Timeline, TimelinePreview, Calendar.- oDataEntitySets: Optional: The OData entity sets to use for page generation, separated by commas (required only when pageType is databinding).- layoutType: The layout type for layout pages (required when pageType is layout). Available types: Section, BottomNavigation, FlexibleColumnLayout, SideDrawerNavigation, Tabs, Extension.For action artifacts: - actionType: The type of action (required when artifactType is action). Available types: CreateODataEntity, UpdateODataEntity, DeleteODataEntity, CreateODataMedia, InitializeOfflineOData, DownloadOfflineOData, UploadOfflineOData, CancelDownloadOfflineOData, CancelUploadOfflineOData, ClearOfflineOData, CloseOfflineOData, CreateODataRelatedEntity, CreateODataRelatedMedia, CreateODataService, DeleteODataMedia, DownloadMediaOData, LogMessage, Message, Navigation, OpenODataService, ProgressBanner, PushNotificationRegister, PushNotificationUnregister, ReadODataService, RemoveDefiningRequest, SendRequest, SetLevel, SetState, ToastMessage, UndoPendingChanges, UploadLog, UploadODataMedia, UploadStreamOData, ChatCompletion, PopoverMenu, CheckRequiredFields, ChangeSet, OpenDocument, Banner, Filter.- oDataEntitySets: Optional: The OData entity sets to use for action generation, separated by commas (required only when artifactType is action).For i18n artifacts: - No additional parameters required beyond folderRootPath. For rule artifacts: - query: Search query for rule reference (required when artifactType is rule). Examples: get app name, handle form validation, navigate to page, etc. |
mdk-manage | Comprehensive MDK project management tool that handles build, deploy, validate, migrate, show QR code, and mobile app editor operations. | - folderRootPath: The path of the current project root folder. - operation: The operation to perform on the MDK project. Available operations:• build: Build an MDK project• deploy: Deploy an MDK project to the Mobile Services• validate: Validate an MDK project• migrate: Migrate an MDK project to the latest MDK version• show-qrcode: Show QR code for an MDK project• open-mobile-app-editor: Instruct how to open the Mobile App Editor to create .service.metadata file- externals: Optional: Array of external package names to include in the deployment (e.g., [@nativescript/geolocation]). If not specified, will automatically read from mdk.bundlerExternals in .vscode/settings.json of the project. Defaults to empty array if neither is provided. |
mdk-docs | Unified tool for accessing MDK documentation including search, component schemas, property details, and examples. | - operation: The type of documentation operation to perform:• search: Returns the top N results from MDK documentation by semantic search, sorted by relevance• component: Returns the schema of an MDK component based on the name of the component• property: Returns the documentation of a specific property of an MDK component• example: Returns an example usage of an MDK component• search-samples: Search through MDK tutorial samples and code examples from GitHub- folderRootPath: The path of the current project root folder. Used to determine the appropriate MDK schema version. - query: Search query string (required for search and search-samples operations). - component_name: Name of the component (required for component, property, and example operations). - property_name: Name of the property (required for property operation). - N: Number of results to return for search operation (default: 5). |
mdk-fetch-mobile-metadata | Fetches OData $metadata document from a Mobile Services destination and saves it as a .service.metadata file in the MDK project. This file is required by mdk-create and mdk-gen tools for data-bound page/action generation. Requires CF CLI authentication (cf login). | - folderRootPath: The path of the MDK project root folder where .service.metadata will be saved.- appId: The Mobile Services application ID (e.g., myapp.mdk.demo).- destination: The destination name configured in Mobile Services (e.g., IncidentManagement).- pathSuffix: Optional path suffix to append before /$metadata (e.g., /api/v1). Leave empty if not needed.- landscapeType: The Mobile Services landscape type. Use Standard for production environments (default) or Preview for preview environments. |
Ingesting GitHub Knowledge (Advanced)
The MDK MCP server can ingest additional knowledge from GitHub repositories to enhance the search-samples operation. This allows the AI agent to search through MDK tutorial samples and code examples.
What Gets Ingested
By default, the server ingests knowledge from:
- MDK Tutorial Samples: https://github.com/SAP-samples/cloud-mdk-tutorial-samples
- MDK Sample and Showecase Apps: https://github.com/SAP-samples/cloud-mdk-samples
When to Run Ingestion
You typically only need to run ingestion in these scenarios:
- First-time setup (if you want to use
search-samplesoperation) - Updating knowledge base (when new samples are added to GitHub repositories)
- After cloning the repository (ingested data is not included in the repo)
Note: The ingestion process is optional. The server will work without it, but the
search-samplesoperation will not return results until ingestion is completed.
How to Ingest
Basic ingestion (uses cached data if available):
npm run ingest
Fresh ingestion (ignores cache, re-downloads everything):
npm run ingest:fresh
With GitHub token (recommended for better rate limits):
export GITHUB_TOKEN="your_github_token_here"
npm run ingest
Custom options:
npm run build
node build/ingest-github-knowledge.js --no-cache --github-token "your_token" --chunk-size 800
Command Line Options
| Option | Description | Default |
|---|---|---|
--no-cache | Force re-download of all content, ignoring cache | Uses cache |
--github-token <token> | GitHub personal access token for API requests | $GITHUB_TOKEN env var |
--vector-db <path> | Path to store the vector database | ./knowledge.db |
--chunk-size <number> | Size of text chunks for embedding | 1000 |
--chunk-overlap <number> | Overlap between chunks | 200 |
GitHub Token Setup
To avoid GitHub API rate limits, create a personal access token:
- Go to https://github.com/settings/tokens
- Click Generate new token (classic)
- Select scopes:
public_repo(read access to public repositories) - Copy the token and set it as an environment variable:
export GITHUB_TOKEN="ghp_your_token_here"
Ingestion Output
The ingestion process will:
- Fetch content from configured GitHub repositories
- Chunk the content into manageable pieces
- Generate embeddings using the AI model
- Store embeddings in a vector database
- Enable semantic search via the
search-samplesoperation
Example output:
Fetching from MDK Tutorial Samples...
Chunking content: 150 chunks created
Generating embeddings: 150/150 (100%)
✓ Ingestion complete!
Troubleshooting
Issue: GitHub API rate limit exceeded
- Solution: Set up a GitHub token (see above)
Issue: Ingestion takes too long
- Solution: Use
--no-cacheonly when necessary; cached runs are much faster
Issue: Out of memory
- Solution: Reduce
--chunk-sizeor process fewer repositories
Offline OData Querying (Advanced)
The MDK MCP server can help you query offline OData stores using the ilodata command-line tool. This is useful for debugging offline applications or inspecting data stored locally on devices during development.
Prerequisites
- MDK SDK
- ilodata Tool: Extract from
SAPOfflineOData-xx.xx.xx-Tools.zipin the MDK SDK - Offline Store Files: A pair of
.udband.rq.udbfiles from your offline application
Setup Steps
-
Extract the ilodata tool:
# Download MDK SDK and locate the tools zip file unzip SAPOfflineOData-*.zip -d ~/ilodata-tools -
Prepare your offline store files:
# Copy your offline store files to the ilodata folder cp /path/to/your/app/*.udb ~/ilodata-tools/ cp /path/to/your/app/*.rq.udb ~/ilodata-tools/
Querying Offline Stores
Once set up, you can use natural language prompts with the MDK MCP server to query offline stores:
Example Prompts:
Basic query:
Open and query the CustomerStore offline store located at ~/ilodata-tools/CustomerStore.udb
and retrieve the top 5 entities from the Customers entity set
Filtered query:
Query the SalesOrders offline store at ~/ilodata-tools/SalesOrders.udb
and get all orders where CustomerID equals `ALFKI`
Specific fields:
Open the Products offline store at ~/ilodata-tools/Products.udb
and retrieve ProductID, ProductName, and UnitPrice from the Products entity set
Count entities:
Query the Employees offline store at ~/ilodata-tools/Employees.udb
and count the total number of records in the Employees entity set
How It Works
The AI agent will:
- Understand your natural language query
- Construct the appropriate
ilodatacommand - Execute the command against your offline store
- Return the results in a readable format
Support, Feedback, Contributing
This project is open to feature requests/suggestions, bug reports, and so on, via GitHub issues. Contribution and feedback are encouraged and always welcome.
Contributing
These instructions help contributors set up, test, and maintain code quality for this project. All commands should be run from your project folder in a terminal.
- Test:
npm test - Build:
npm run build - Lint:
npm run lint:all
For more information about how to contribute, the project structure, as well as additional contribution information, see our Contribution Guidelines.
Telemetry
You can enable or disable the collection of analytics. By default, non-personally identifiable information is collected to help understand how you use the product and improve the MDK MCP Server. If you want to opt-out, there are two ways to disable telemetry:
Method 1: Configuration File
Create or change the file ~/.fioritools/telemetrysettings.json:
{
"telemetrysettings": {
"telemetrySetting": {
"enableTelemetry": false
}
}
}
Set enableTelemetry to false to disable telemetry collection.
Method 2: Environment Variable
Set the environment variable SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY to true:
export SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY=true
Setting this environment variable disables the telemetry client.
Security / Disclosure
If you find a bug that may pose a security problem, please follow our instructions in our security policy on how to report it. Please do not create GitHub issues for security-related doubts or problems.
Code of Conduct
As members, contributors, and leaders, we pledge to make participation in our community a harassment-free experience for everyone. By participating in this project, you agree to abide by its Code of Conduct at all times.
Licensing
Copyright 2025 SAP SE or an SAP affiliate company. Please see our LICENSE for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available .
Acknowledgments
- @huggingface/transformers.js is used to compare the output of the WordPiece tokenizer.
- @modelcontextprotocol/sdk provides the SDK for MCP.
History
Changed 2
Notes
Changed
- Update yo to 7.0.1
- Support 26.9 schema version
Features 3, Changed 2
Notes
Added
- Add new tool
mdk-fetch-mobile-metadata - Support CAP project scenario
- Support new
search-exampleoperation ofmdk-docstool
Changed
- Improve
validateoperation inmdk-managetool to automatically run validation with 2-minute timeout and fallback to manual instructions - Improve
show-qrcodeoperation message to show instructions of how to open the QR Code image
- Add new tool
Others providing
Compare all 48 on the Agent access to your code page →- @abap2ui5/mcp-server@abap2ui5/mcp-serverAn MCP server that puts the abap2UI5 development loop on the machine an agent runs on: check the view the ABAP builds, photograph it, deploy the class into a sandbox, boot the app headless and read the errors.community org, abapMCP server for the abap2UI5 check, deploy and run loopfrom ABAP
- arc-1-bopf-enharc-1-bopf-enhAn extension of four tools for arc-1, with an ABAP service behind it, that lets an agent read and maintain classic BOPF enhancements of SAP standard business objects.independent, abaparc-1 extension for reading and maintaining BOPF enhancementsfrom ABAP
- HammerHammerA native macOS code editor for ABAP and CDS, with an Object Navigator, Transport Organizer, Data Browser and Gateway Client in the same app as the editor.independent, abapNative macOS code editor for ABAP and CDSfrom ABAP
- arc-1-lsparc-1-lspAn edition of ARC-1 that hands every ADT interaction to SAP's own embedded adt-ls language server instead of a hand-rolled HTTP client.independent, abapEdition of ARC-1 that runs ADT calls through adt-lsfrom ABAP
- arc-1arc-1An MCP server in front of the ADT REST API that runs locally and on Cloud Foundry with twelve tools that read, search, write, activate, lint and transport ABAP objects.independent, abapMCP server over the ADT REST API for ABAP objectsfrom ABAP
- arc1-abap-bridgearc1-abap-bridgeA VS Code extension between arc-1 and ABAP Development Tools for VS Code, so GitHub Copilot can open an ABAP object by name, diff the inactive version and ask the system whether an edit would be accepted.independent, abapVS Code bridge between arc-1 and ADT for VS Codefrom ABAP
- arc1-adt-abap-mcp-extarc1-adt-abap-mcp-extOne JAR in Eclipse's dropins that turns on SAP's own ADT MCP server and adds read-only repository tools beside it — so an AI client reads your system without leaving Eclipse.independent, abapEclipse add-on enabling the ADT MCP server with read-only toolsfrom ABAP
- capforgecapforgeAn MCP server that scaffolds CAP and CDS for a coding agent and then holds it to cds compile — the agent does not stop until the generated code builds clean.independent, capMCP server scaffolding CAP and CDS checked by cds compilefrom CAP
- ABAP Accelerator MCP ServerABAP Accelerator MCP ServerAWS's ABAP MCP server for Amazon Q Developer and Kiro, deployable locally, in Docker or centrally on ECS Fargate with OAuth principal propagation; its repository is no longer maintained.partner, abapAWS's ABAP MCP server for Amazon Q Developer and Kirofrom ABAP
- Modernization Agents for SAP on AWSModernization Agents for SAP on AWSAWS's suite of agents for SAP modernisation work: custom ABAP converted for S/4HANA, PI/PO interfaces moved to Integration Suite, BW objects moved to SAP Datasphere, deployed into a customer's own AWS account and reached only after registration.partner, abapAWS agents for ABAP, PI/PO and BW modernisation workfrom ABAP
- @mcp-abap-adt/core@mcp-abap-adt/coreA descendant of the Andreschak and fr0ster servers rebuilt on its own architecture, published as an npm scope and a Claude Code plugin, with Korean and Japanese documentation beside the English.independent, abapABAP ADT MCP server published as an npm scope and pluginfrom ABAP
- @cap-js/mcp-server@cap-js/mcp-serverSAP's MCP server for CAP development, run as cds-mcp: search_model searches the project's compiled CDS model, search_docs searches the CAP documentation indexed as embeddings on the developer's own machine.sap official, capMCP server for CAP development: model and docs searchfrom CAP
- chandrashekhar-mahajan/abap-mcp-serverchandrashekhar-mahajan/abap-mcp-serverFifteen ADT tools behind five pluggable authentication strategies — Kerberos/SPNEGO, OAuth 2.0, X.509, browser SSO and basic — for systems where basic auth is not an option.independent, abapABAP MCP server with ADT tools and five authentication strategiesfrom ABAP
- dassian-adtdassian-adtA fork of mcp-abap-abap-adt-api hardened for use: 25 tools, input validation, error intelligence, MCP elicitation, session recovery and a test suite.independent, abapFork of mcp-abap-abap-adt-api with 25 tools and session recoveryfrom ABAP
- erpl-adterpl-adtOne C++ binary that speaks the ADT REST API as a CLI and as an MCP server — no Eclipse, no NetWeaver RFC SDK, no JVM — and reaches BW/4HANA modelling as well as ABAP.independent, abapC++ binary speaking the ADT REST API as a CLI and MCP serverfrom ABAP
- bw-modeling-mcpbw-modeling-mcpReads, creates and modifies BW/4HANA modelling objects through the same internal APIs Eclipse BWMT and the BW/4HANA Cockpit use — and can run centrally on BTP with each caller reaching BW as themselves.independent, btpMCP server for BW/4HANA modelling objectsfrom BTP/BAIP
- EPOD ADT MCP ServerEPOD ADT MCP ServerAn MCP server for ABAP that runs inside ABAP Development Tools for Eclipse on the ADT session of each connected project, with a standalone mode that runs with no IDE open.independent, abapMCP server for ABAP on the ADT session, in Eclipse or standalonefrom ABAP
- ZARC1_EXTENSION_FORMSZARC1_EXTENSION_FORMSAn extension of four tools for arc-1, with an ABAP backend behind it, that reaches the classic form objects ADT has no API for: SAPscript layout sets, Smart Styles and the TADIR record of a Smart Form.independent, abaparc-1 extension for SAPscript and Smart Forms objectsfrom ABAP
- fgalastri/MCP_ABAPfgalastri/MCP_ABAPValidates an ABAP class before it is deployed by converting the global class to a local one and syntax-checking that — plus CDS DDL and table metadata retrieval.independent, abapValidates an ABAP class before it is deployed by converting the global class to a local one and syntax-checking that — plus CDS DDL and table metadata retrieval.from ABAP
- fr0ster/mcp-abap-adtfr0ster/mcp-abap-adtFull CRUD across on-premise and ABAP Cloud systems, with five authentication methods and three transports: a library under Apache-2.0 and a standalone server under AGPL-3.0-only.independent, abapABAP MCP server with full CRUD on on-premise and ABAP Cloudfrom ABAP
- abapsmithabapsmithAn MCP server that lets an LLM develop in ABAP on a live system over ADT, with writes off by default and every mutation recorded in a local journal that can undo it.independent, abapABAP MCP server over ADT with a local journal that can undo writesfrom ABAP
- sap-ai-dev-toolkitsap-ai-dev-toolkitAn MCP proxy that pins an agent's ABAP tools to one SAP system: setup reads the BAS destinations or the local SAP GUI landscape and writes one stdio server per system, leaving the credentials in the destination or in the editor's own login prompts.independent, abapMCP proxy pinning an agent's ABAP tools to one SAP systemfrom ABAP
- aibap.mcpaibap.mcpA Go server that closes the loop: after create, write and activate it can run the class it just wrote through ADT's classrun and hand the console output back.independent, abapGo MCP server that writes, activates and runs ABAP classes via ADTfrom ABAP
- BellaBellaAn Eclipse plugin that puts Claude into ABAP Development Tools: explain, generate, rework and implement from the editor's context menu, completion as ghost text, and a chat whose tools reach the system through the developer's existing ADT logon.independent, abapEclipse plugin bringing Claude into ABAP Development Toolsfrom ABAP
- Maherd18/sap-mcp-serverMaherd18/sap-mcp-serverAn MCP server for ABAP development over the ADT resources: eight tools, each checked against a JSON policy file before the call reaches the system, with activation and transport release held for a person to approve.independent, abapPolicy-checked MCP server for ABAP development over ADTfrom ABAP
- sapdumpmcpsapdumpmcpAn MCP server for SAP dumps: it connects to an ABAP system over the ADT resources and lets an MCP client ask a dump for its description and call stack.independent, abapMCP server reading ABAP short dumps over ADTfrom ABAP
- ABAP remote filesystemABAP remote filesystemA Visual Studio Code extension that opens an ABAP system over ADT as an editable filesystem and exposes system tools to GitHub Copilot and external MCP clients.independent, abapVS Code extension editing ABAP systems over ADT as a filesystemfrom ABAP
- mcp-abap-abap-adt-apimcp-abap-abap-adt-apiThe write half of the same pair: a thin wrapper over Marcello Urbani's abap-adt-api, exposing lock, edit, activate, transport and syntax check for a full development loop.independent, abapWrite-oriented MCP server over abap-adt-apifrom ABAP
- mcp-abap-adtmcp-abap-adtThe read-oriented half of a pair of ABAP MCP servers: high-level tools such as GetProgram, GetClass and GetTable that fetch from a system, aimed at understanding it rather than changing it.independent, abapRead-oriented MCP server fetching ABAP programs, classes, tablesfrom ABAP
- SAP MCP Connection ManagerSAP MCP Connection ManagerA Windows desktop manager that holds SAP connections and hands them to Claude Desktop or Codex through a local MCP server, each connection carrying a policy that decides what the assistant may change and what data it may read.independent, abapWindows desktop manager handing SAP connections to assistants over MCPfrom ABAP
- ABAPilotABAPilotAn MIT-licensed MCP connector for ECC and on-premise S/4HANA that reads ABAP source and dictionary context, whose SAP-side half is a licensed product you install in the system.independent, abapMCP connector for ECC and on-premise S/4HANA with a licensed SAP sidefrom ABAP
- vibing-steampunkvibing-steampunkAn ADT-to-MCP bridge in Go that reaches past what ADT exposes — cluster tables decoded, spool and job logs read as tables, the IMG searched, selection texts written back.independent, abapADT-to-MCP bridge in Go reaching past what ADT exposesfrom ABAP
- ADT MCP ServerADT MCP ServerSAP's own ADT MCP server, and not a package: a preference inside ABAP Development Tools for VS Code that starts a local HTTP MCP server on a port you choose.sap official, abapLocal HTTP MCP server started from ABAP Development Tools for VS Codefrom ABAP
- ABAP Development Tools for VS CodeABAP Development Tools for VS CodeSAP's ABAP tools in VS Code: editing, debugging, ABAP Unit, ATC and transports for classes, CDS and RAP objects, over RFC to an on-premise or Private Cloud system and HTTP to a cloud one, with Joule's ADT MCP server and code completion behind an AI-unit licence.sap official, abapSAP's ABAP tools in VS Code for editing, debugging, ATC and transportsfrom ABAP
- SAP Joule for Developers, ABAP AI capabilitiesSAP Joule for Developers, ABAP AI capabilitiesSAP's AI for ABAP development in ADT for Eclipse and VS Code: chat, code completion, explain, test and CDS generation, RAP logic prediction, and since June 2026 an agentic mode over the ADT MCP Server, metered in AI units through the ABAP AI Hub Service on BTP.sap official, abapSAP's AI for ABAP development in ADT for Eclipse and VS Codefrom ABAP
- @sap-ux/fiori-mcp-server@sap-ux/fiori-mcp-serverSAP's Fiori MCP server, run as fiori-mcp, letting a coding assistant create and edit Fiori applications directly rather than describing the steps.sap official, ui5MCP server for creating and editing Fiori applicationsfrom UI5
- ABAPDocMCPABAPDocMCPTurns a transport request into a WRICEF technical specification: reads the transport's objects and source over ADT and writes a structured Markdown document with an object-relationship diagram.independent, abapMCP server turning a transport request into a WRICEF specificationfrom ABAP
- claude-sap-kitclaude-sap-kitA Claude Code plugin of three skills that extends arc-1 with five Custom_* tools for an on-premise ABAP system: running a report and reading its ALV as JSON, previewing a NAST message as PDF, and reading, writing and replacing SmartForms as XML.independent, abapClaude Code plugin adding Custom_* tools to arc-1from ABAP
- Skybuffer AI MCP serverSkybuffer AI MCP serverAn ABAP add-on that serves SAP business data, transactions and development context as MCP tools from an ICF node inside SAP ECC and S/4HANA, each call running as the signed-in user under PFCG authorization checks.independent, abapABAP add-on serving business data and transactions as MCP toolsfrom ABAP
- @ui5/mcp-server@ui5/mcp-serverSAP's MCP server for UI5 development: ten tools that scaffold an app or a card, read the project in front of the agent, and run the linter and the manifest validator against it.sap official, ui5MCP server for UI5 development with ten toolsfrom UI5
- abap-adt-cliabap-adt-cliPulls an ABAP package to local files over the ADT REST API in parallel, and pushes edited objects back under a transport — bulk sync rather than one object at a time in SE80 or Eclipse.independent, abapCLI that pulls and pushes ABAP packages as local files over ADTfrom ABAP
- workskong/mcp-abap-adtworkskong/mcp-abap-adtA deliberately light MCP adapter over ABAP ADT for object search, source, DDIC metadata, a data preview and runtime diagnostics, read-only in practice and documented in Korean.independent, abapLight MCP adapter for ABAP over ADT, documented in Koreanfrom ABAP
- KlystronKlystronAn MCP server written in ABAP that runs inside the application server behind an ICF service and exposes typed tools for ABAP development, quality, transports, customizing, roles, Basis operations and integration, with a client-side plugin of SAP skills.independent, abapMCP server in ABAP inside the application server, with agent skillsfrom ABAP
- pyrfc-mcppyrfc-mcpAn MCP server for calling an SAP system's RFC-enabled function modules from an agent, built so that discovering a function does not authorise calling it: a read or a write is denied unless the function name matches an allowlist the server is configured with.independent, abapMCP server calling RFC-enabled function modules behind an allowlistfrom ABAP
- ABAP-AI-CODE-TOOLSABAP-AI-CODE-TOOLSAn optional abapGit package that adds create, modify and delete tools to ABAP AI Code, for ABAP programs and classes, with each diff block approved before it is saved.independent, abapabapGit package adding create, modify and delete tools to ABAP AI Codefrom ABAP
- ABAP AI CodeABAP AI CodeAn agentic coding assistant written in ABAP that runs as a SAP GUI report and reads, explains and reviews repository objects inside the system, running an LLM's tool calls as ABAP.independent, abapAgentic coding assistant in ABAP that runs as an SAP GUI reportfrom ABAP
- VERTEXVERTEXAn extension for ABAP Development Tools for Eclipse and VS Code that shows Simple Data Explorer, AVE and ACE in the editor over the developer's ADT connection.independent, abapADT extension for Eclipse and VS Code showing three SAP GUI toolsfrom ABAP
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
Contributors
History in the atlas
- Entered from the sap-ai-mcp-servers catalogue, which is credited as the source; the description is written from the project's own README and documentation rather than from the catalogue's line about it.
- First seen.
For your agent
- Ref
artifact:sap-mdk-mcp-server- JSON
- /artifacts/sap-mdk-mcp-server.json
- MCP
- Connecting an agent