mcpbeat

Sap AI Core

secondsky/sap-ai-core

|

39k tokens
context cost
the whole folder, loaded on every use
14
files
instructions only
0
copies elsewhere
how many repositories repackaged it
398
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/secondsky/sap-skills --skill sap-ai-core

What comes with it

143 466 bytes besides the instruction
README.md
agents/openai.yaml
references/advanced-features.md
references/ai-launchpad-guide.md
references/api-reference.md
references/generative-ai-hub.md
references/grounding-rag.md
references/ml-operations.md
references/model-providers.md
references/orchestration-modules.md
templates/deployment-config.json
templates/orchestration-workflow.json
templates/tool-definition.json

The instruction itself

33 sections, as written by the author

SAP AI Core & AI Launchpad Skill

  • sap-btp-cloud-platform: Use for platform context, BTP account setup, and service integration
  • sap-cap-capire: Use for building AI-powered applications with CAP or integrating AI services
  • sap-cloud-sdk-ai: Use for SDK integration, AI service calls, and Java/JavaScript implementations
  • sap-btp-best-practices: Use for production deployment patterns and AI governance guidelines

When to Use This Skill

Use this skill when provisioning SAP AI Core, using SAP AI Launchpad, configuring Generative AI Hub orchestration, choosing model providers, building RAG or grounding flows, managing prompt templates, deploying training/inference workloads, or wiring AI capabilities into SAP applications.

Table of Contents

  • Overview
  • Quick Start
  • Service Plans
  • Model Providers
  • Orchestration
  • Content Filtering
  • Data Masking
  • Grounding (RAG)
  • Tool Calling

10. Structured Output

11. Embeddings

12. ML Training

13. Deployments

14. Bundled Resources

15. SAP AI Launchpad

16. Prompt Registry

17. API Reference

18. Common Patterns

19. Troubleshooting

20. References

Overview

SAP AI Core is a service on SAP Business Technology Platform (BTP) that manages AI asset execution in a standardized, scalable, hyperscaler-agnostic manner. SAP AI Launchpad provides the management UI for AI runtimes including the Generative AI Hub.

Core Capabilities

| Capability | Description |

|------------|-------------|

| Generative AI Hub | Access to LLMs from multiple providers with unified API |

| Orchestration | Modular pipeline for templating, filtering, grounding, masking |

| ML Training | Argo Workflows-based batch pipelines for model training |

| Inference Serving | Deploy models as HTTPS endpoints for predictions |

| Grounding/RAG | Vector database integration for contextual AI |

Three Components

  • SAP AI Core: Execution engine for AI workflows and model serving
  • SAP AI Launchpad: Management UI for AI runtimes and GenAI Hub
  • AI API: Standardized lifecycle management across runtimes

Quick Start

Prerequisites

  • SAP BTP enterprise account
  • SAP AI Core service instance (Extended plan for GenAI)
  • Service key with credentials

1. Get Authentication Token

# Set environment variables from service key
export AI_API_URL="<your-ai-api-url>"
export AUTH_URL="<your-auth-url>"
export CLIENT_ID="<your-client-id>"
export CLIENT_SECRET="<your-client-secret>"

# Get OAuth token
AUTH_TOKEN=$(curl -s -X POST "$AUTH_URL/oauth/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET" \
  | jq -r '.access_token')

2. Create Orchestration Deployment

# Check for existing orchestration deployment
curl -X GET "$AI_API_URL/v2/lm/deployments" \
  -H "Authorization: Bearer $AUTH_TOKEN" \
  -H "AI-Resource-Group: default" \
  -H "Content-Type: application/json"

# Create orchestration deployment if needed
curl -X POST "$AI_API_URL/v2/lm/deployments" \
  -H "Authorization: Bearer $AUTH_TOKEN" \
  -H "AI-Resource-Group: default" \
  -H "Content-Type: application/json" \
  -d '{
    "configurationId": "<orchestration-config-id>"
  }'

3. Use Harmonized API for Model Inference

ORCHESTRATION_URL="<deployment-url>"

curl -X POST "$ORCHESTRATION_URL/v2/completion" \
  -H "Authorization: Bearer $AUTH_TOKEN" \
  -H "AI-Resource-Group: default" \
  -H "Content-Type: application/json" \
  -d '{
    "config": {
      "module_configurations": {
        "llm_module_config": {
          "model_name": "gpt-4o",
          "model_version": "latest",
          "model_params": {
            "max_tokens": 1000,
            "temperature": 0.7
          }
        },
        "templating_module_config": {
          "template": [
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "{{?user_query}}"}
          ]
        }
      }
    },
    "input_params": {
      "user_query": "What is SAP AI Core?"
    }
  }'

Service Plans

| Plan | Cost | GenAI Hub | Support | Resource Groups |

|------|------|-----------|---------|-----------------|

| Free | Free | No | Community only | Default only |

| Standard | Per resource + baseline | No | Full SLA | Multiple |

| Extended | Per resource + tokens | Yes | Full SLA | Multiple |

Key Restrictions:

  • Free and Standard mutually exclusive in same subaccount
  • Free → Standard upgrade possible; downgrade not supported
  • Max 50 resource groups per tenant

Model Providers

SAP AI Core provides access to model providers through a tenant-specific catalog. Treat exact model names and versions as examples until verified in the target tenant with GET /v2/lm/scenarios/foundation-models/models or SAP AI Launchpad Model Library.

  • Azure OpenAI: GPT-family chat, vision, reasoning, realtime, and embedding models where entitled
  • SAP Open Source: Llama/Falcon/Mistral-family open source models where enabled
  • Google Vertex AI: Gemini-family chat, vision, code, and embedding models where entitled
  • AWS Bedrock: Anthropic Claude and Amazon model families where entitled
  • Mistral AI: Mistral Large/Small/Codestral-family models where enabled
  • IBM: Granite models
  • Perplexity: Sonar-family web-grounded models where enabled

For detailed provider configurations and model lists, see references/model-providers.md.

Orchestration

The orchestration service provides unified access to multiple models through a modular pipeline with 8 execution stages:

  • Grounding → 2. Templating (mandatory) → 3. Input Translation → 4. Data Masking → 5. Input Filtering → 6. Model Configuration (mandatory) → 7. Output Filtering → 8. Output Translation

For complete orchestration module configurations, examples, and advanced patterns, see references/orchestration-modules.md.

Content Filtering

Azure Content Safety: Filters content across 4 categories (Hate, Violence, Sexual, SelfHarm) with severity levels 0-6. Azure OpenAI blocks severity 4+ automatically. Additional features include PromptShield and Protected Material detection.

Llama Guard 3: Covers 14 categories including violent crimes, privacy violations, and code interpreter abuse.

Data Masking

Two PII protection methods:

  • Anonymization: MASKED_ENTITY (non-reversible)
  • Pseudonymization: MASKED_ENTITY_ID (reversible)

Supported entities (25 total): Personal data, IDs, financial information, SAP-specific IDs, and sensitive attributes. For complete entity list and implementation details, see references/orchestration-modules.md.

Grounding (RAG)

Integrate external data from SharePoint, S3, SFTP, SAP Build Work Zone, and DMS. Supports PDF, HTML, DOCX, images, and more. Limit: 2,000 documents per pipeline with daily refresh. For detailed setup, see references/grounding-rag.md.

Tool Calling

Enable LLMs to execute functions through a 5-step workflow: define tools → receive tool_calls → execute functions → return results → LLM incorporates responses. Templates available in templates/tool-definition.json.

Structured Output

Force model responses to match JSON schemas using strict validation. Useful for structured data extraction and API responses.

Embeddings

Generate semantic embeddings for RAG and similarity search via /v2/embeddings endpoint. Supports document, query, and text input types.

ML Training

Uses Argo Workflows for training pipelines. Key requirements: create default object store secret, define workflow template, create configuration with parameters, and execute training. For complete workflow patterns, see references/ml-operations.md.

Deployments

Deploy models via two-step process: create configuration (with model binding), then create deployment with TTL. Statuses: Pending → Running → Stopping → Stopped/Dead. Templates in templates/deployment-config.json.

SAP AI Launchpad

Web-based UI with 4 key applications:

  • Workspaces: Manage connections and resource groups
  • ML Operations: Train, deploy, monitor models
  • Generative AI Hub: Prompt experimentation and orchestration
  • Functions Explorer: Explore available AI functions

Required roles include genai_manager, genai_experimenter, prompt_manager, orchestration_executor, and mloperations_editor. For complete guide, see references/ai-launchpad-guide.md.

Prompt Registry

The Prompt Registry manages the lifecycle of prompt templates from design to runtime, integrating them into SAP AI Core and orchestration workflows.

Two management interfaces:

  • Imperative API: Full CRUD via REST, for design-time prompt refinement
  • Declarative API: Git repository sync, for runtime and CI/CD use cases

Key endpoints:

  • POST /v2/lm/promptTemplates — Create a prompt template
  • POST /v2/lm/promptTemplates/{id}/substitution — Fill template by ID
  • POST /v2/lm/scenarios/{scenario}/promptTemplates/{name}/versions/{version}/substitution — Fill by name

For complete Prompt Registry documentation, see references/ai-launchpad-guide.md.

API Reference

Core Endpoints

Key endpoints: /v2/lm/scenarios, /v2/lm/configurations, /v2/lm/deployments, /v2/lm/executions, /lm/meta. For complete API reference with examples, see references/api-reference.md.

Common Patterns

CAP Integration: SAP CAP is the primary consumer framework for AI Core on BTP. Bind an AI Core service instance to your CAP app via MTA, then call the orchestration API from CAP event handlers using the SAP Cloud SDK for AI. Always process LLM calls asynchronously in production (return 202 Accepted, process in background via cds.spawn) to avoid BTP load balancer timeouts. See sap-cap-capire and sap-cloud-sdk-ai skills for complete code examples.

Simple Chat: Basic model invocation with templating module

RAG with Grounding: Combine vector search with LLM for context-aware responses

Secure Enterprise Chat: Filtering + masking + grounding for PII protection

Templates available in templates/orchestration-workflow.json.

Troubleshooting

Common Issues:

  • 401 Unauthorized: Refresh OAuth token
  • 403 Forbidden: Check IAM roles, request quota increase
  • 404 Not Found: Verify AI-Resource-Group header
  • Deployment DEAD: Check deployment logs
  • Training failed: Create default object store secret

Request quota increases via support ticket (Component: CA-ML-AIC).

Bundled Resources

Reference Documentation

  • references/orchestration-modules.md - All orchestration modules in detail
  • references/generative-ai-hub.md - Complete GenAI hub documentation
  • references/model-providers.md - Model providers and configurations
  • references/api-reference.md - Complete API endpoint reference
  • references/grounding-rag.md - Grounding and RAG implementation
  • references/ml-operations.md - ML operations and training
  • references/advanced-features.md - Chat, applications, security, auditing
  • references/ai-launchpad-guide.md - Complete SAP AI Launchpad UI guide

Templates

  • templates/deployment-config.json - Deployment configuration template
  • templates/orchestration-workflow.json - Orchestration workflow template
  • templates/tool-definition.json - Tool calling definition template

Official Sources

How to use it

Copy the folder

Take secondsky/sap-ai-core from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.