SAP RFC MCP Server
Servidor SAP RFC MCP
Conector SAP RFC de nivel empresarial basado en el Model Context Protocol (MCP). Este proyecto tiene como objetivo proporcionar a los agentes de IA (como Claude Desktop, GPT-4, Cursor, etc.) capacidades de acceso a sistemas SAP seguras, eficientes y conscientes del contexto. A través del protocolo estandarizado MCP, el agente puede ejecutar SAP RFC y recuperar datos empresariales como si llamara a funciones locales.
🌟 Aspectos destacados del proyecto
Seguridad de nivel empresarial: Soporta una arquitectura de gestión de Master Key, con generación de tokens dinámicos (Dynamic Tokens), gestión de validez y función de revocación con un solo clic.
Trazabilidad completa: Sistema de registro consciente de la identidad, donde cada registro incluye la IP del cliente y la identidad del agente, con soporte para división automática diaria a medianoche.
Lectura inteligente de tablas: Mecanismo de protección de búfer de datos integrado, que maneja automáticamente el error
DATA_BUFFER_EXCEEDEDy admite la lectura iterativa y segura de grandes volúmenes de datos.Metadatos optimizados para IA: Proporciona definiciones detalladas de interfaces de funciones, descripciones de parámetros y soporte para exportar bases de conocimiento en formatos compatibles con RAG (Generación Aumentada por Recuperación).
Sesiones de alta disponibilidad: Soporta la reutilización inteligente de sesiones; el agente no necesita gestionar manualmente el ID de sesión, ya que el sistema restaura automáticamente las sesiones activas basadas en el Token.
🚀 Capacidades principales (Tools)
Este servidor expone el siguiente conjunto de herramientas al cliente MCP, cubriendo todo el proceso desde el descubrimiento del sistema hasta la manipulación de datos:
1. Interacción central con RFC
call_rfc_function: Llama dinámicamente a cualquier función SAP RFC, soportando el paso de parámetros con estructuras anidadas complejas.rfc_system_info: Obtiene metadatos como la versión del sistema SAP, protocolo, kernel, tipo de base de datos, etc.get_rfc_functions: Consulta las funciones de llamada remota disponibles en el sistema SAP mediante coincidencia difusa (fuzzy matching).
2. Lectura segura de datos
read_table: Herramienta de lectura de tablas con protección automática contra desbordamiento, capaz de seleccionar campos automáticamente según el límite de 512 bytes de RFC.read_table_complete: Modo de lectura iterativa, que admite la solicitud de una gran cantidad de campos que superan el límite del búfer, procesándolos automáticamente en lotes.get_table_structure: Recupera la definición detallada de las tablas SAP, incluyendo atributos técnicos de los campos y descripciones multilingües.test_table_access: Verifica rápidamente los permisos de lectura del usuario actual sobre tablas específicas y la conectividad de los datos.
3. Gestión de metadatos
get_function_metadata: Obtiene el "manual" completo de la función, incluyendo la dirección de los parámetros, tipo, longitud y comentarios multilingües.search_rfc_functions: Realiza una búsqueda de texto completo sobre nombres y descripciones de funciones, ayudando al agente a descubrir interfaces adecuadas.export_metadata_for_rag: Exporta el conocimiento de la interfaz SAP a JSON para construir una base de conocimiento offline para el agente.
⚙️ Modos de ejecución
El proyecto admite tres modos de ejecución para satisfacer las necesidades de integración en diferentes escenarios:
Modo HTTP (predeterminado): Basado en el transporte HTTP Streamable proporcionado por FastAPI, admite respuestas en streaming (SSE), adecuado para el acceso de agentes remotos.
Modo STDIO: Comunicación a través de entrada y salida estándar, adecuado para clientes MCP instalados localmente como Claude Desktop.
Modo Dual: Habilita HTTP y STDIO simultáneamente, equilibrando la depuración local y el servicio remoto.
📦 Despliegue rápido
1. Requisitos del entorno
Python: Versión 3.9 o superior.
SAP NW RFC SDK: Es obligatorio instalar el SDK oficial de SAP y configurar la variable de entorno
SAPNWRFC_HOME.
2. Instalación
git clone <repo_url>
cd sap-rfc-mcp-server
python -m venv .venv
source .venv/bin/activate # Windows 使用 .venv\Scripts\activate
pip install -e .3. Configuración
Copie .env.example a .env y complete sus parámetros de conexión SAP y claves de seguridad:
# SAP 连接
SAP_ASHOST=192.168.1.100
SAP_SYSNR=00
SAP_CLIENT=100
SAP_USER=YOUR_USER
SAP_PASSWD=YOUR_PASSWD
# 安全密钥
MCP_MASTER_KEY=admin-secret-key-2026🔐 Guía de autenticación
El servidor utiliza una arquitectura de autenticación de dos capas:
Capa de gestión (Master): Utiliza
MCP_MASTER_KEYpara acceder a la interfaz/auth/*y realizar la emisión de tokens.Capa de negocio (Agent): Utiliza el Token dinámico generado para acceder a la interfaz
/mcp/*y llamar a las funciones SAP.
Ejemplo de generación de Token (usando Master Key):
POST /auth/token/generate
X-API-Key: admin-secret-key-2026
Body: {"agent_name": "Finance_Agent", "ttl_hours": 48}📂 Estructura del proyecto
sap_rfc_mcp_server/
├── auth.py # 动态 Token 管理与持久化
├── server.py # MCP 工具定义与处理核心逻辑
├── sap_client.py # 底层 pyrfc 连接管理与池化
├── rfc_table_reader.py # 增强型表数据安全读取逻辑
├── streamable_http_server.py # HTTP/SSE 传输层实现
├── logger.py # 身份感知的自动切分日志系统
└── metadata_manager.py # SAP 元数据分析与 RAG 优化📖 Más documentación
QUICKSTART.md: Guía de inicio rápido de 5 minutos.
MODES_GUIDE.md: Detalles sobre modos de ejecución y configuración.
DEPLOY.md: Despliegue en entornos de producción con Systemd y Docker.
© 2026 SAP RFC MCP Server Team. Licenciado bajo MIT.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Time-90/sap-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server