AI Core MCP Server
Manages ArgoCD applications that sync git repository content into SAP AI Core.
Manages Docker registry secrets for pulling private container images in SAP AI Core.
Manages onboarded git repositories containing workflow and serving templates for SAP AI Core.
Manages SAP AI Core resources including scenarios, executables, configurations, executions, deployments, artifacts, and secrets for machine learning lifecycle management.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AI Core MCP Serverlist all deployments"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AI Core MCP Server
An MCP (Model Context Protocol) server for SAP AI Core, powered by odata-mcp-proxy. It exposes SAP AI Core APIs as MCP tools, allowing AI assistants like Claude to manage your AI Core landscape through natural language.
The entire server is defined through a single JSON config file -- no custom code required.
How It Works
This project uses the odata-mcp-proxy npm package, which maps OData/REST services to MCP tools based on a configuration file. You provide a config describing your APIs and entity sets, and the proxy generates the corresponding MCP tools automatically.
AI Assistant (Claude, Cursor, etc.)
|
| MCP Protocol (HTTP or stdio)
v
odata-mcp-proxy
|
| REST + OAuth2 (via BTP Destination Service)
v
SAP AI Core APIsThink of it like the SAP Application Router -- a ready-made runtime you configure, not code you write.
Related MCP server: SAP OData to MCP Server
Exposed AI Core APIs
The config file (ai-core-api-config.json) defines two API groups:
Lifecycle Management (/v2/lm)
Tool | Operations | Description |
| list, get | AI scenarios -- logical groupings of executables that define a ML use case |
| list | Versions of a scenario |
| list, get | Workflow templates (training) and serving templates (inference) under a scenario |
| list | Models available in a scenario (e.g. LLMs in the generative AI hub) |
| list, get, create | Parameter sets binding a scenario/executable to inputs and hyperparameters |
| list, get, create, update, delete | Training or batch inference runs, tracked through lifecycle states |
| list, get, create, update, delete | Running model-serving instances providing real-time inference endpoints |
| list, get, create | Registered references to datasets, models, or files in an object store |
| list, get, create, update, delete | Cron-based schedules that automatically create executions |
| list, delete | Training and evaluation metrics recorded during executions |
| list | Runtime capabilities, supported features, and API version info |
| get, create, delete | Upload, download, and delete files in the object store |
Administration (/v2/admin)
Tool | Operations | Description |
| list, get, create, update, delete | Onboarded git repos containing workflow/serving templates |
| list, get, create, update, delete | ArgoCD applications that sync git repo content into AI Core |
| list, create, update, delete | Credentials for pulling private container images |
| list, create, update, delete | Credentials for S3, Azure Blob, GCS, or other object stores |
| list, get, create, update, delete | Key-value secrets (API keys, tokens) for executions and deployments |
| list, get, create, update, delete | Tenant isolation units that segregate AI assets and workloads |
| list, get | Service broker registrations exposing AI Core capabilities |
Prerequisites
Node.js 18+ (20+ recommended)
SAP BTP account with SAP AI Core provisioned
BTP Destination configured for the AI Core API (
AI_CORE) with OAuth2 authenticationCloud Foundry CLI (
cf) and MBT Build Tool (mbt) for deployment
Project Structure
ai-core-mcp-server/
├── package.json # Start script + odata-mcp-proxy dependency
├── ai-core-api-config.json # API configuration (defines all MCP tools)
├── mta.yaml # BTP Cloud Foundry deployment descriptor
├── xs-security.json # XSUAA OAuth2 configuration
├── default-env.json # Local dev credentials (gitignored)
└── LICENSEGetting Started
1. Install dependencies
npm install2. Configure BTP destination
Create a BTP Destination pointing to the AI Core API:
Destination | URL |
|
|
The destination should use OAuth2 client credentials authentication with the AI Core service key.
3. Local development
Create a default-env.json with your BTP service bindings (XSUAA, Destination, Connectivity) to run locally:
npm startThis runs odata-mcp-proxy --config ai-core-api-config.json.
4. Deploy to BTP
npm run build:btp # Build MTA archive
npm run deploy:btp # Deploy to Cloud FoundryThe MTA deployment provisions three service instances:
Destination (lite) -- resolves API endpoints and manages OAuth2 tokens
Connectivity (lite) -- enables secure backend connectivity
XSUAA (application) -- handles OAuth2 authentication with role-based access control
Security
The XSUAA configuration (xs-security.json) defines three role templates:
Role | Scopes | Description |
| read | Read-only access |
| read, write | Read and write access |
| read, write, admin | Full administrative access |
OAuth2 redirect URIs are pre-configured for Claude.ai, Cursor, Microsoft Teams, and local development.
Creating Your Own MCP Server
This project demonstrates how easy it is to create a custom MCP server using odata-mcp-proxy. To build your own:
Create a new project and install the dependency:
mkdir my-mcp-server && cd my-mcp-server npm init -y npm install odata-mcp-proxyAdd a start script to
package.json:{ "scripts": { "start": "odata-mcp-proxy --config my-api-config.json" } }Define your APIs in a config file (
my-api-config.json):{ "server": { "name": "my-mcp-server", "version": "1.0.0", "description": "My custom MCP server" }, "apis": [ { "name": "my-api", "destination": "MY_BTP_DESTINATION", "pathPrefix": "/api/v1", "csrfProtected": true, "entitySets": [ { "entitySet": "Products", "description": "Product catalog", "category": "master-data", "keys": [{ "name": "Id", "type": "string" }], "operations": { "list": true, "get": true, "create": false, "update": false, "delete": false } } ] } ] }Add your
mta.yaml,xs-security.json, and BTP Destinations, then deploy. That's it -- no code to write.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/lemaiwo/ai-core-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server