btp-sap-odata-to-mcp-server-optimized

Raistlin82/btp-sap-odata-to-mcp-server-optimized

3.3

If you are the rightful owner of btp-sap-odata-to-mcp-server-optimized and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

This document provides a comprehensive overview of the SAP OData to MCP Server for BTP, detailing its architecture, features, and usage.

SAP OData to AI-Powered MCP Server (Optimized)

This repository is an enterprise-ready MCP (Model Context Protocol) server that bridges SAP OData services with AI capabilities. Based on the original project btp-sap-odata-to-mcp-server by @lemaiwo, this optimized version features enhanced security, simplified configuration, modular authentication, and comprehensive Cloud Foundry integration.

✨ Key Features

🔐 Enhanced Security Architecture

  • Modular Authentication System: Factory pattern supporting IAS, OAuth2, JWT, Basic Auth, and API Keys
  • Secure Session Management: Thread-safe session bridging with proper locking mechanisms
  • Role-Based Access Control: Granular permissions with XSUAA integration
  • Principal Propagation: Maintains user context throughout the request lifecycle
  • Security Best Practices: No sensitive data logging, secure error handling, JWT validation

🎯 Simplified OData Discovery

  • Pattern-Based Filtering: Simple include/exclude patterns for service discovery
  • Business Domain Mode: Pre-configured domains (sales, finance, HR, etc.)
  • Whitelist Mode: Explicit service control for production environments
  • Smart Defaults: Automatic exclusion of test/debug services

🧠 AI-Powered Capabilities

  • Smart Query Router: Natural language to OData conversion
  • Hierarchical Tool Architecture: 17+ tools organized in logical layers
  • Intelligent Workflow Orchestration: Automatic tool chaining and optimization
  • Real-time Analytics: KPI monitoring and trend analysis

🎨 Interactive UI Tools Suite

  • ui-form-generator: Dynamic SAP Fiori forms with validation
  • ui-data-grid: Interactive tables with sorting and filtering
  • ui-dashboard-composer: Real-time KPI dashboards
  • ui-workflow-builder: Visual workflow creation
  • ui-report-builder: Analytical reports with drill-down

☁️ Cloud-Native Features

  • Cloud Foundry Optimized: Native integration with CF services
  • Structured Logging: SAP Cloud Logging with fallback support
  • Health Monitoring: Comprehensive health check endpoints
  • Performance Metrics: Built-in performance tracking
  • Graceful Shutdown: Proper resource cleanup

🚀 Quick Start

Prerequisites

  • Access to an SAP BTP, Cloud Foundry environment.
  • Required BTP services: XSUAA, Identity, Connectivity, Destination.
  • Node.js >= 18.

1. Installation

git clone <this-repo>
cd btp-sap-odata-to-mcp-server-optimized
npm install

2. Configuration

Configure the application using environment variables. See the for detailed documentation.

cp .env.example .env
# Edit .env with your configuration
Quick Configuration Example
# Authentication
SAP_IAS_URL=https://your-tenant.accounts.ondemand.com
SAP_IAS_CLIENT_ID=your-client-id
SAP_IAS_CLIENT_SECRET=your-secret

# OData Discovery (Simplified)
ODATA_DISCOVERY_MODE=pattern
ODATA_INCLUDE_PATTERNS=*API*,Z*
ODATA_EXCLUDE_PATTERNS=*_TEST*,*_TEMP*
ODATA_MAX_SERVICES=50

# Destinations
SAP_DESTINATION_NAME=SAP_S4HANA

3. Build and Deploy

# Build the TypeScript source code for BTP
npm run build:btp

# Deploy to SAP BTP, Cloud Foundry
npm run deploy:btp

📚 Documentation

Complete documentation is available with structured navigation for all aspects of the project.

🏠

Main navigation center with use-case-based guidance and complete file index.

🚀 Quick Links

CategoryDocumentDescription
Getting StartedEnvironment setup, OData discovery, CF deployment
ArchitectureSystem design, security model, tool hierarchy
🎨 Modern DiagramsNEW! Interactive visual architecture
UsageAuthentication, tool usage, workflow examples
ReferenceComplete tool documentation with parameters
DeploymentSAP BTP and local development setup
DevelopmentTest suite and development guidelines
ChangesVersion history and feature updates

📖 Navigation Flow

README.md → docs/README.md → All Documentation
     ↓           ↓
Quick Start → Structured Navigation → Complete Coverage