← Conexiones SAP ↔ IA
Guía paso a pasoNivel intermedio12 min de lectura

Conectar Claude Code a tu SAP por la vía de desarrollo (ADT)

Te cortaron el MCP y no sabes cómo volver a hacerlo bien. Aquí tienes las tres vías que existen hoy, cuál elegir según tu caso y los pasos exactos para tener a Claude leyendo y escribiendo ABAP sin salirte del carril.

Si estás aquí probablemente te pasó lo mismo que a mucha gente: tenías Claude hablando con tu SAP por MCP, llegó el cambio de política de SAP y se acabó. La buena noticia es que la vía no está muerta —está institucionalizada—. La mala es que ahora hay varias opciones y no todas valen lo mismo delante de tu equipo de seguridad.

Lo primero: distingue dos cosas que no son lo mismo

La API Policy v4/2026 apunta a las APIs de NEGOCIO consumidas por agentes que encadenan llamadas (OData, RFC, ODP). La vía de DESARROLLO —ADT, el mismo canal que usa Eclipse para hablar con el backend— es otra cosa, y va en dirección contraria: SAP presentó su propio ABAP MCP Server en Sapphire 2026. Esta guía va solo de la segunda.

Cómo funciona por dentro

Nadie te lo explica y luego cuesta depurar. La cadena es siempre la misma, cambien las piezas que cambien:

Claude Code

El agente. Vive en tu terminal y lee su configuración de ~/.claude.json

Servidor MCP

Traduce las peticiones del agente a herramientas concretas

APIs de ADT

El canal REST /sap/bc/adt, el mismo que usa Eclipse

Tu sistema SAP

Con TUS autorizaciones. El agente no puede hacer lo que tú no puedes

Esto es más importante de lo que parece

El agente actúa contra SAP con un usuario, y ese usuario tiene autorizaciones. Ninguna configuración de MCP te salta un objeto de autorización. Si el usuario no puede modificar un paquete, el agente tampoco. Tenlo presente cuando alguien te diga que «la IA va a tocar producción».

Antes de empezar

Cinco minutos comprobando esto te ahorran una tarde de errores raros.

  • Un sistema de DESARROLLO donde probar

    Nunca estrenes esto contra producción. Un sandbox, un entorno de pruebas o el ABAP trial en Docker sirven perfectamente.

  • Servicios ADT activos en el sistema

    Los nodos ICF de /sap/bc/adt tienen que estar activos. Si tu Eclipse conecta bien, esto ya lo cumples.

  • Un usuario SAP de desarrollo con sus autorizaciones

    Preferiblemente el tuyo, no uno técnico compartido: si algo sale mal, quieres que el log diga quién fue.

  • Claude Code instalado

    Se instala con npm install -g @anthropic-ai/claude-code. Necesitas Node en tu máquina.

  • Hablarlo con seguridad antes, no después

    Aunque técnicamente puedas montarlo tú solo, que un agente escriba en el sistema es una conversación que conviene tener por delante.

Elige tu vía

Tres caminos, mismo destino. La diferencia real no es qué pueden hacer, sino dónde viven las credenciales y quién puede auditarlo.

1. ABAP MCP Server oficial de SAP

Empieza por aquí

Para quién: Cualquiera que pueda esperar a tenerlo disponible en su instalación. Es la vía soportada y la que no hay que justificar ante nadie.

  • Construido y mantenido por SAP
  • Disponible en Eclipse y en VS Code
  • Funciona con Claude Code, Copilot o Amazon Q
  • No dependes de un proyecto de terceros
  • Su disponibilidad depende de tu release y de tu contrato
  • Joule for Developers está atado a RISE o GROW
  • El consumo se factura en AI Units al acabar el periodo gratuito
Ver su ficha en el observatorio →

2. ARC-1, si necesitas arquitectura de empresa

Para quién: Equipos donde el MCP no puede vivir en el portátil de cada uno: hace falta despliegue central, identidad por usuario y auditoría.

  • Se despliega central en BTP, no en tu portátil
  • Solo lectura por defecto y escrituras limitadas a $TMP
  • Principal Propagation: el agente actúa con TU usuario SAP real
  • Audit log integrable con el servicio de BTP
  • Montarlo requiere BTP, XSUAA y destinos
  • Es un proyecto de comunidad, no producto de SAP
  • Más pasos antes de ver el primer resultado
Ver su ficha en el observatorio →

3. Un servidor ADT MCP local

Para quién: Probar el concepto en un sandbox y entender qué da de sí antes de pedir nada a nadie.

  • Lo tienes funcionando en 10 minutos
  • No dependes de infraestructura ni de permisos
  • Perfecto para aprender cómo encaja todo
  • Credenciales guardadas en tu máquina
  • Sin identidad propagada ni auditoría central
  • No lo lleves a un sistema real sin repensarlo
Ver su ficha en el observatorio →

Mi consejo, sin rodeos

Empieza por la opción 3 en un sandbox para entenderlo, pero no la conviertas en tu montaje definitivo. En cuanto quieras usar esto de verdad, muévete a la 1 o a la 2. La diferencia entre «funciona» y «puedo defenderlo» es exactamente esa.

Ruta rápida: montarlo en Eclipse en 5 pasos

Esta es la ruta con la que verás resultados hoy mismo. Usa un plugin de Eclipse que levanta un servidor MCP local y escribe él solo la configuración de Claude Code. Hazlo contra un sistema de desarrollo.

  1. Instala el plugin en Eclipse

    Ve a Help → Install New Software..., pulsa Add... y añade el sitio de actualizaciones. Marca el plugin, Next → Finish y reinicia Eclipse.

    Nombre
    SAP ADT MCP Server for Claude Code
    Ubicación
    https://yahornovik.github.io/sap-adt-mcp-server/

    Ojo: Necesitas Eclipse 2024-03 o superior con ADT instalado, y Java 17 o más.

  2. Abre la vista del servidor

    Window → Show View → Other..., busca «SAP ADT MCP Server for Claude Code» y ábrela. Verás un panel con cuatro botones: Connect SAP, Start Server, Launch Claude Code y Clear.

  3. Conecta con tu sistema

    Pulsa Connect SAP y rellena el diálogo con los datos de tu sistema de desarrollo. El plugin entra por las APIs REST de ADT y registra sus herramientas.

    SAP URL
    https://tu-host-sap:44300
    Usuario
    TU_USUARIO
    Contraseña
    ••••••••
    Mandante
    100
    Idioma
    ES

    Ojo: Usa tu usuario de desarrollo, no uno técnico compartido. Si algo se tuerce, el log de SAP dirá tu nombre y eso es lo correcto.

  4. Arranca el servidor MCP

    Pulsa Start Server. Levanta un servidor local en el puerto 3000 que habla el protocolo MCP y escribe la configuración en tu ~/.claude.json, respetando lo que ya tuvieras. De paso añade el servidor de documentación de SAP.

    ~/.claude.json
    {
      "mcpServers": {
        "sap-adt": {
          "type": "http",
          "url": "http://localhost:3000/mcp"
        },
        "sap-docs": {
          "type": "http",
          "url": "https://mcp-sap-docs.marianzeis.de/mcp"
        }
      }
    }
  5. Lanza Claude Code

    Desde el propio Eclipse con el botón Launch Claude Code, o desde cualquier terminal. La configuración ya está escrita, así que no hace falta ningún parámetro extra.

    terminal
    claude

    Ojo: Si Claude no ve las herramientas, casi siempre es que el servidor no está arrancado o que abriste la terminal antes de que se escribiera el fichero. Reinicia Claude Code y listo.

Qué gana Claude al conectarse

Estas son las herramientas que quedan a su alcance. Merece la pena leerlas: te dan una idea muy clara de hasta dónde llega y hasta dónde no.

HerramientaQué hace
sap_searchBusca objetos ABAP por patrón de nombre
sap_get_sourceLee el código de programas, clases, interfaces o módulos de función
sap_object_structureMetadatos: paquete, descripción, includes, métodos
sap_usage_referencesDónde se usa un objeto (el clásico where-used)
sap_abap_docuDocumentación de palabras clave, clases y módulos
sap_create_objectCrea programas, clases, interfaces o grupos de funciones
sap_lock / sap_unlockBloquea y libera objetos para edición
sap_set_sourceActualiza el código fuente
sap_activateActiva objetos para que los cambios surtan efecto
sap_syntax_checkChequeo de sintaxis
sap_run_unit_testsEjecuta pruebas ABAP Unit y devuelve resultados
sap_atc_runLanza chequeos de calidad ATC
sap_sql_queryEjecuta consultas SQL contra la base de datos

Las tres de esta lista que dan más respeto

sap_set_source, sap_activate y sap_sql_query. Escribir código, activarlo y consultar la base de datos directamente. Si tu servidor MCP permite restringir operaciones —ARC-1 lo hace y arranca en solo lectura—, empieza por lo mínimo y ve abriendo. Es mucho más fácil que ir cerrando después de un susto.

Pruébalo con esto

Ve de menos a más: empieza leyendo, luego analiza, y solo cuando te fíes, deja que escriba.

Busca todas las clases que empiecen por ZCL_SALES

Enséñame el código de la clase ZCL_SALES_ORDER y explícame qué hace

¿Dónde se usa el módulo de función BAPI_SALESORDER_CREATEFROMDAT2?

Lanza los chequeos ATC sobre ZCL_SALES_ORDER y resúmeme los hallazgos por gravedad

Ejecuta las pruebas unitarias de ZCL_SALES_ORDER y dime cuáles fallan y por qué

Crea una clase ZCL_MI_HELPER en el paquete $TMP con descripción «Clase de utilidades»

Corrige el error de sintaxis del programa ZTEST_REPORT, actívalo y confírmame el resultado

Antes de llevarlo a un sistema que importe

Lo que acabas de montar vive en tu portátil: las credenciales están en tu máquina, el servidor se autentica con un solo usuario y no hay un registro central de qué hizo el agente. Para un sandbox es perfecto. Para cualquier sistema que le importe a alguien, la conversación cambia: ahí es donde entran el servidor oficial de SAP o una arquitectura como ARC-1, con despliegue central, identidad propagada y auditoría. Esa es, precisamente, la siguiente guía.

Dudas que salen siempre

Fichas del observatorio relacionadas