SAP ADT MCP Server
Servidor MCP SAP ADT
Servidor MCP para la API REST de SAP ABAP Development Tools (ADT). Permite a los asistentes de IA leer, crear y modificar código fuente ABAP, inspeccionar objetos DDIC, ejecutar consultas SQL, gestionar transportes, analizar trazas, obtener volcados (short dumps), controlar el depurador y más, a través de múltiples sistemas SAP desde una única instancia de servidor.
Herramientas (66)
Código fuente y DDIC (11)
Herramienta | Descripción | Entrada |
| Obtener código fuente de programa/reporte ABAP |
|
| Obtener código fuente de clase ABAP |
|
| Obtener código fuente de módulo de funciones |
|
| Obtener código fuente de grupo de funciones |
|
| Obtener código fuente de include ABAP |
|
| Obtener código fuente de interfaz ABAP |
|
| Obtener fuente DDL de vista CDS |
|
| Obtener definición de estructura DDIC |
|
| Obtener definición de tabla de base de datos ABAP |
|
| Obtener definición de elemento de datos DDIC |
|
| Obtener definición de dominio DDIC |
|
Repositorio y búsqueda (3)
Herramienta | Descripción | Entrada |
| Buscar objetos ABAP por patrón de nombre (se admiten comodines) |
|
| Obtener detalles de transacción (paquete, componente de aplicación) |
|
| Obtener contenido del paquete (objetos con tipos/descripciones) |
|
Crear, cambiar y ejecutar (12)
Herramienta | Descripción | Entrada |
| Crear, escribir código fuente y activar un programa |
|
| Modificar un programa existente (bloquear, escribir, activar, desbloquear) |
|
| Crear, escribir código fuente y activar una clase |
|
| Modificar una clase existente (bloquear, escribir, activar, desbloquear) |
|
| Crear, escribir código fuente y activar una interfaz |
|
| Modificar una interfaz existente (bloquear, escribir, activar, desbloquear) |
|
| Crear, escribir código fuente y activar una vista CDS |
|
| Modificar una vista CDS existente (bloquear, escribir, activar, desbloquear) |
|
| Ejecutar un programa y devolver la salida WRITE |
|
| Ejecutar consulta SQL ABAP y devolver resultados como tabla |
|
| Obtener volcados (short dumps) de ST22 para una fecha |
|
| Obtener token CSRF y cookie de sesión | (ninguna) |
Gestión de transportes (7)
Herramienta | Descripción | Entrada |
| Listar todos los transportes modificables para el usuario actual | (ninguna) |
| Obtener detalles completos del transporte (tareas, objetos, estado) |
|
| Comprobar requisitos de transporte para un objeto |
|
| Crear una nueva orden de transporte |
|
| Liberar un transporte para importación |
|
| Eliminar una orden de transporte |
|
| Listar usuarios del sistema SAP | (ninguna) |
Traza SAT (7)
Herramienta | Descripción | Entrada |
| Listar trazas de tiempo de ejecución ABAP (SAT/SE30) |
|
| Obtener lista de resultados de rendimiento para una traza |
|
| Obtener estadísticas de acceso a base de datos para una traza |
|
| Obtener árbol de llamadas a nivel de sentencia para una traza |
|
| Eliminar una traza de tiempo de ejecución |
|
| Crear una configuración de recopilación de trazas |
|
| Eliminar una configuración de traza |
|
Traza de rendimiento ST05 (3)
Herramienta | Descripción | Entrada |
| Habilitar traza SQL/buffer/RFC/auth para un usuario |
|
| Deshabilitar todas las trazas de rendimiento activas | (ninguna) |
| Obtener tipos de traza activos, filtro de usuario e información del servidor | (ninguna) |
Traza cruzada (5)
Herramienta | Descripción | Entrada |
| Habilitar traza cruzada para RAP, OData, SADL, BAdI, Gateway |
|
| Deshabilitar una activación de traza cruzada |
|
| Listar activaciones de traza cruzada activas | (ninguna) |
| Listar resultados de traza cruzada capturados |
|
| Obtener registros detallados para una traza cruzada |
|
Binding de servicios (3)
Herramienta | Descripción | Entrada |
| Obtener detalles de binding de servicio OData |
|
| Publicar un binding de servicio OData |
|
| Despublicar un binding de servicio OData |
|
Depurador (14)
Herramienta | Descripción | Entrada |
| Iniciar oyente del depurador (abre sesión con estado) |
|
| Detener oyente y cerrar sesión de depuración |
|
| Comprobar si hay una sesión de depurador adjunta |
|
| Establecer un punto de interrupción en una ubicación de código fuente |
|
| Eliminar un punto de interrupción |
|
| Adjuntar a una sesión de depuración ABAP en ejecución |
|
| Obtener la pila de llamadas actual | (ninguna) |
| Obtener valores de variables |
|
| Obtener valores de variables hijas/anidadas |
|
| Establecer el valor de una variable durante la depuración |
|
| Paso a paso (entrar/sobre/retornar/continuar/terminar) |
|
| Navegar a un marco de pila |
|
| Establecer un punto de vigilancia en una variable (pausar al cambiar el valor) |
|
| Listar todos los puntos de vigilancia activos | (ninguna) |
Multisistema (1)
Herramienta | Descripción | Entrada |
| Listar todos los sistemas SAP configurados con IDs, nombres de host y clientes | (ninguna) |
Todas las herramientas aceptan un parámetro opcional system_id para apuntar a un sistema SAP específico. Omítalo para usar el sistema predeterminado (el primero configurado).
Requisitos previos
Node.js v18 o posterior
Usuario SAP con autorización S_ADT_RES para acceso a recursos ADT
Servicios ICF activados bajo
/sap/bc/adt/(vía transacciónSICF)Rol SAP_BC_DWB_ABAPDEVELOPER o equivalente
Instalación
git clone https://github.com/ethanhan2014/sap-adt-mcp.git
cd sap-adt-mcp
npm install
npm run buildConfiguración
Opción 1: Sistema único vía .env
cp .env.example .envEdite .env con los detalles de conexión de su sistema SAP:
SAP_HOSTNAME=your-sap-host.example.com
SAP_SYSNR=50
SAP_USERNAME=YOUR_USER
SAP_PASSWORD=YOUR_PASSWORD
SAP_CLIENT=001
SAP_LANGUAGE=ENVariable | Descripción | Ejemplo |
| Nombre de host del sistema SAP |
|
| Número de sistema (puerto = |
|
| Usuario SAP |
|
| Contraseña SAP |
|
| Cliente SAP |
|
| Idioma de inicio de sesión (predeterminado: |
|
Opción 2: Múltiples sistemas vía systems.json
Cree systems.json en la raíz del proyecto (vea systems.json.example):
[
{
"id": "DEV",
"hostname": "dev-system.sap.com",
"sysnr": "50",
"client": "001",
"username": "YOUR_USER",
"password": "YOUR_PASSWORD",
"language": "EN"
},
{
"id": "QA",
"hostname": "qa-system.sap.com",
"sysnr": "00",
"client": "001",
"authType": "certificate",
"certThumbprint": "YOUR_CERT_THUMBPRINT",
"language": "EN"
}
]Cuando systems.json está presente, se ignora .env para la configuración del sistema. El primer sistema es el predeterminado. Use system_id en cualquier llamada a herramienta para apuntar a un sistema específico.
Tipos de autenticación admitidos:
basic (predeterminado) — nombre de usuario/contraseña
certificate — certificado de cliente X.509 vía
certThumbprint
Uso
Claude Code
Añada a ~/.claude.json:
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"]
}
}
}Cline (VS Code)
Añada a la configuración MCP de Cline (cline_mcp_settings.json):
{
"mcpServers": {
"sap-adt": {
"command": "node",
"args": ["/path/to/sap-adt-mcp/dist/index.js"],
"disabled": false,
"autoApprove": []
}
}
}Independiente
npm startDesarrollo (con MCP Inspector)
npx @modelcontextprotocol/inspector node dist/index.jsStack tecnológico
TypeScript + Node.js
MCP SDK (
@modelcontextprotocol/sdk)Axios para HTTP
API REST de SAP ADT sobre HTTPS con autenticación básica o certificado X.509
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ethanhan2014/sap-adt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server