MCP serverMCP servertypeExposes tools to a coding agent over MCP.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

sap-bdc-mcp-server

An MCP server over SAP's BDC Connect SDK that creates, validates, publishes and deletes Databricks Delta shares as data products in SAP Business Data Cloud.

Putting a Databricks table into Business Data Cloud as a data product takes a Delta share, the tables added to it, a grant to the BDC Connect recipient, and a registration that carries ORD or CSN metadata. The tools the README documents cover each step: provision_share runs the whole sequence in one call and reports which step failed, validate_share_readiness checks that a share exists, holds tables and is granted before it is registered, and generate_csn_template derives CSN from a share that already exists. The SDK expects a Databricks notebook and its dbutils; the server's LocalDatabricksClient takes a workspace URL and token from a .env file instead, so it also runs on a developer machine. It is a Python package on PyPI and runs over stdio. The README documents the seven tools of v0.2.0; PyPI's summary for 0.5.0 states 17, adding diagnostics driven by SAP Notes, ORD metadata validation and a check of Databricks privileges.

Facts

Last pushLicenceMIT

Where it sits

Lives in
Provides
Agent access to your systemsBTPAgent access to your systemscapabilityGiving an AI agent access to the business data, configuration or operations of systems you run through an MCP server. [Serving your application over MCP](capability:mcp-servers) exposes your own service contract; system access reaches the systems behind it, and one implementation may do both. Development assistance belongs to [agent access to your code](capability:agent-code-access).Cataloguing and lineageBTPCataloguing and lineagecapabilityFinding what data exists across the estate and what it promises — catalogs and data products, the contract a consumer can rely on, where a field came from, and what a column actually contains once you profile it. The question asked before modelling starts and again when somebody asks where a number came from.
Requires
SAP Business Data CloudSAP Business Data CloudartifactThe account the shares are registered with and the data products are published to.DatabricksDatabricksoutside the atlasHolds the tables that are shared: the tools create the Delta shares and their grants in a Databricks workspace, reached locally with a personal access token.

Who is behind it

MarioDeFelipeMarioDeFelipePersonMaintains this
In the atlas: maintains 3, contributes to 3
@MarioDeFelipe
maintainer

Before choosing this

Conditions

PolicySAP API Policy 4.2026a§ 1.1, 1.2, 2.2.2from Agent access to your systemsAn MCP server uses SAP APIs to supply tools, resources or data to an agent.
  • § 1.1 Published APIs. Published APIs are made available for the documented purposes identified by SAP, including integration, extensions and data exchange.
  • § 1.2 Non-Published APIs. Customer and third-party applications must not access non-published APIs except where documentation permits it or SAP otherwise authorizes it.
  • § 2.2.2 AI call sequences and data extraction. Outside SAP-endorsed architectures, data services or expressly identified pathways, the policy prohibits specified agentic API use and systematic or large-scale extraction.

MCP does not replace the API's documented-use boundary. Check that every endpoint is published for the intended use and whether the policy's AI-call or extraction provisions apply to the design.

SAP API Policy 4.2026a →

What it declares

Every artifact

Type
MCP server
Origin
Independently maintained

As an MCP server

Runs as
local process
Transport
stdio
Tools
17

Connections4

Your machineSAP cloudThird partyMarioDeFelipe/sap-bdc-mcp-server — README, checked 2026-09-14: “The MCP server runs as a stdio-based service:”stdiodocumentedrequiresdocumentedrequiresYour MCP client, actorYour MCP clientsap-bdc-mcp-server, modulesap-bdc-mcp-serverSAP Business Data Cloud, service instanceSAP Business DataCloudDatabricks, Hosted serviceDatabricksHosted service
SAPnot SAP's, or the project's ownstated in the documentdocumented only

README

quoted from MarioDeFelipe/sap-bdc-mcp-server under MIT, read
MarioDeFelipe/sap-bdc-mcp-server/README.mdOn GitHub

SAP Business Data Cloud MCP Server

License: MIT Python 3.9+ MCP

An MCP (Model Context Protocol) server that provides integration with SAP Business Data Cloud (BDC) Connect SDK. This server enables AI assistants like Claude to interact with SAP BDC for data sharing, Delta Sharing protocol operations, and data product management.

Status: ✅ Released on PyPI - v0.2.0 (2026-01-10)

New in v0.2.0: ✨ Added provision_share (end-to-end orchestration) and validate_share_readiness (pre-flight validation) tools!

Features

This MCP server provides 7 powerful tools for SAP BDC operations:

  • Create/Update Shares: Manage data shares with ORD metadata
  • CSN Schema Management: Configure shares using Common Semantic Notation
  • Data Product Publishing: Publish and unpublish data products
  • Share Deletion: Remove and withdraw shared resources
  • CSN Template Generation: Auto-generate CSN templates from Databricks shares
  • End-to-End Provisioning ✨: One-step share creation, granting, and registration
  • Pre-flight Validation ✨: Validate shares before registration to prevent errors

Prerequisites

  • Python 3.9+ (Python 3.11+ recommended for local development)
  • Access to a Databricks environment
  • SAP Business Data Cloud account
  • Databricks recipient configured for Delta Sharing
  • For local development: Databricks personal access token

Quick Start

Installation

Choose your preferred language/platform:

Python (PyPI)
pip install sap-bdc-mcp-server
Node.js/TypeScript (npm)
npm install @mariodefelize/sap-bdc-mcp-server

Note: The npm package requires Python 3.9+ to be installed, as it wraps the Python MCP server.

See NPM_README.md for full Node.js/TypeScript documentation.

From Source
# Clone the repository
git clone https://github.com/MarioDeFelipe/sap-bdc-mcp-server.git
cd sap-bdc-mcp-server

# Install Python package in development mode
pip install -e .

# Install npm dependencies (optional, for Node.js development)
npm install
Configuration

Create a .env file in the project root:

# Databricks Configuration
DATABRICKS_RECIPIENT_NAME=your_recipient_name
DATABRICKS_HOST=https://your-workspace.cloud.databricks.com
DATABRICKS_TOKEN=your_databricks_token

# Optional
LOG_LEVEL=INFO

The server will automatically use LocalDatabricksClient which works without dbutils.

For Databricks Notebook Environment

If running inside Databricks notebooks, only set:

DATABRICKS_RECIPIENT_NAME=your_recipient_name
LOG_LEVEL=INFO

The server will automatically detect the notebook environment and use dbutils.

Usage

Python Usage
Running the Server

The MCP server runs as a stdio-based service:

python -m sap_bdc_mcp.server

Or using the installed script:

sap-bdc-mcp
Integration with Claude Desktop

Add this server to your Claude Desktop configuration file:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

On Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "sap-bdc": {
      "command": "python",
      "args": ["-m", "sap_bdc_mcp.server"],
      "env": {
        "DATABRICKS_RECIPIENT_NAME": "your_recipient_name"
      }
    }
  }
}
Node.js/TypeScript Usage

For Node.js/TypeScript applications, use the npm package:

import { createSapBdcMcpClient } from '@mariodefelize/sap-bdc-mcp-server';

const client = await createSapBdcMcpClient({
  env: {
    DATABRICKS_HOST: process.env.DATABRICKS_HOST,
    DATABRICKS_TOKEN: process.env.DATABRICKS_TOKEN,
    DATABRICKS_RECIPIENT_NAME: process.env.DATABRICKS_RECIPIENT_NAME,
  },
});

// Validate a share
const validation = await client.validateShareReadiness({
  share_name: 'my_share',
});

console.log(validation);

await client.close();

See NPM_README.md for complete Node.js/TypeScript documentation and examples.

Alternatively, if installed in a virtual environment:

{
  "mcpServers": {
    "sap-bdc": {
      "command": "C:\\path\\to\\venv\\Scripts\\python.exe",
      "args": ["-m", "sap_bdc_mcp.server"],
      "env": {
        "DATABRICKS_RECIPIENT_NAME": "your_recipient_name"
      }
    }
  }
}

Available Tools

1. create_or_update_share

Create or update a data share with ORD metadata.

Parameters:

  • share_name (required): Name of the share
  • ord_metadata (optional): ORD metadata object
  • tables (optional): Array of table names to include

Example:

{
  "share_name": "customer_data_share",
  "ord_metadata": {
    "title": "Customer Data",
    "description": "Shared customer information"
  },
  "tables": ["customers", "orders"]
}
2. create_or_update_share_csn

Create or update a share using CSN format.

Parameters:

  • share_name (required): Name of the share
  • csn_schema (required): CSN schema definition object

Example:

{
  "share_name": "product_share",
  "csn_schema": {
    "definitions": {
      "Products": {
        "kind": "entity",
        "elements": {
          "ID": {"type": "String"},
          "name": {"type": "String"}
        }
      }
    }
  }
}
3. publish_data_product

Publish a data product to make it available for consumption.

Parameters:

  • share_name (required): Name of the share
  • data_product_name (required): Name of the data product

Example:

{
  "share_name": "customer_data_share",
  "data_product_name": "CustomerAnalytics"
}
4. delete_share

Delete a share and withdraw shared resources.

Parameters:

  • share_name (required): Name of the share to delete

Example:

{
  "share_name": "old_share"
}
5. generate_csn_template

Generate a CSN template from an existing Databricks share.

Parameters:

  • share_name (required): Name of the Databricks share

Example:

{
  "share_name": "existing_databricks_share"
}
6. provision_share ✨ NEW: End-to-End Orchestration

One-step provisioning: Creates Databricks share, grants to recipient, and registers with SAP BDC in a single operation.

This tool orchestrates the complete workflow:

  1. Creates the Databricks Delta share
  2. Adds specified tables to the share
  3. Grants the share to your configured recipient
  4. Registers the share with SAP BDC

Parameters:

  • share_name (required): Name of the share to create
  • tables (required): Array of table names (format: catalog.schema.table or schema.table)
  • ord_metadata (required): ORD metadata object
    • title (required): Display title for the share
    • shortDescription: Brief description
    • description: Detailed description
    • version: Version number (e.g., "1.0.0")
    • releaseStatus: Status (e.g., "active", "beta")
    • tags: Array of tags
  • comment (optional): Comment for the Databricks share
  • auto_grant (optional): Auto-grant to recipient (default: true)
  • skip_if_exists (optional): Skip if share already exists (default: true)

Example:

{
  "share_name": "customer_analytics",
  "tables": ["main.analytics.customers", "main.analytics.orders"],
  "ord_metadata": {
    "title": "Customer Analytics Data",
    "shortDescription": "Customer and order data for analytics",
    "description": "Comprehensive customer analytics dataset including customer profiles and order history",
    "version": "1.0.0",
    "releaseStatus": "active",
    "tags": ["analytics", "customer", "orders"]
  },
  "comment": "Customer analytics share for data consumers",
  "auto_grant": true
}

What it does:

  • ✅ Creates Databricks share (or skips if exists)
  • ✅ Adds all specified tables to the share
  • ✅ Grants SELECT permission to your recipient
  • ✅ Registers with SAP BDC with ORD metadata
  • ✅ Provides step-by-step progress feedback
  • ✅ If any step fails, shows what completed and what to do manually

Why use this instead of manual steps:

  • Single command instead of 4 separate operations
  • Automatic error handling and recovery guidance
  • Idempotent - safe to retry if interrupted
  • Clear visibility into each step's success/failure
7. validate_share_readiness ✨ NEW: Pre-flight Validation

Validate before you register: Check if a Databricks share is ready for BDC Connect operations.

This tool performs comprehensive pre-flight checks:

  1. ✅ Verifies the share exists in Databricks
  2. ✅ Checks if the share has tables/objects
  3. ✅ Validates the share is granted to your recipient
  4. ✅ Provides actionable next steps if validation fails

Parameters:

  • share_name (required): Name of the share to validate
  • check_bdc_registration (optional): Also check BDC registration status (default: false)

Example:

{
  "share_name": "customer_data_share"
}

Success Response:

✅ Share 'customer_data_share' is READY for BDC Connect registration!

All checks passed:
  ✅ PASS Share 'customer_data_share' exists in Databricks
  ✅ PASS Share has 3 object(s)
  ✅ PASS Share is granted to recipient 'bdc-connect-12345'

Next step: Register with BDC using create_or_update_share('customer_data_share', ...)

Failure Response:

❌ Share 'test_share' is NOT ready for BDC Connect

Errors found:
  ❌ Share is empty - no tables added
  ❌ Share not granted to BDC Connect recipient 'bdc-connect-12345'

Required actions:
  1. Add tables: w.shares.update(name='test_share', ...)
  2. Grant share: GRANT SELECT ON SHARE test_share TO RECIPIENT `bdc-connect-12345`

Use Cases:

  • Before registration: Validate a share before calling create_or_update_share
  • Troubleshooting: Understand why registration failed
  • Documentation: Generate a checklist of what's needed
  • CI/CD pipelines: Automated validation before deployment
  • Onboarding: Help new users understand the prerequisites

Why this matters:

  • Prevents "trial and error" workflow - know upfront if share is ready
  • Clear, actionable guidance instead of cryptic error messages
  • Saves time by catching issues before attempting registration
  • Validates all prerequisites in one call

Architecture

The server uses:

  • MCP SDK: For protocol implementation
  • SAP BDC Connect SDK: For SAP Business Data Cloud operations
  • Delta Sharing: Open protocol for secure data sharing
  • ORD Protocol: For resource discovery and metadata

Development

Running Tests
pytest
Project Structure
sap-bdc-mcp-server/
├── src/
│   └── sap_bdc_mcp/
│       ├── __init__.py
│       ├── server.py       # Main MCP server implementation
│       └── config.py       # Configuration management
├── pyproject.toml          # Project dependencies
├── .env.example           # Environment variable template
└── README.md              # This file

Local Development Setup

The dbutils Challenge

The SAP BDC Connect SDK was originally designed to run inside Databricks notebooks, requiring access to dbutils (Databricks utilities). This made local development challenging.

Our Solution: LocalDatabricksClient

We've created LocalDatabricksClient - a custom wrapper that extends the SAP BDC SDK to work without dbutils. This enables:

✅ Local development - Run on your machine without Databricks notebooks ✅ IDE integration - Use your favorite development tools ✅ Easier debugging - Standard Python debugging workflows ✅ CI/CD friendly - Works in automated pipelines ✅ Claude Desktop integration - Direct MCP server usage

How It Works

The LocalDatabricksClient class:

  1. Bypasses dbutils requirement - Accepts workspace URL and API token directly
  2. Reads from .env file - No notebook context needed
  3. Auto-detects mode - Automatically uses brownfield (BDC Connect) or Databricks Connect mode
  4. Maintains compatibility - Fully compatible with the SAP BDC SDK API
  5. Clear error messages - Helpful guidance if configuration is missing
from sap_bdc_mcp.local_client import LocalDatabricksClient

# Initialize from environment variables
client = LocalDatabricksClient.from_env()

# Or with explicit credentials
client = LocalDatabricksClient(
    workspace_url="https://your-workspace.cloud.databricks.com",
    api_token="your_token",
    recipient_name="your_recipient"
)
Two Modes Supported

BDC Connect Mode (Brownfield) ✨

  • Uses OIDC federation for authentication
  • No Databricks secrets required
  • Simpler setup
  • Automatically detected if recipient is configured

Databricks Connect Mode

  • Requires additional secrets (api_url, tenant, token_audience)
  • Can be provided via environment variables
  • For greenfield deployments
Setup Guide

See our comprehensive guides:

For Blog Posts / Technical Articles

Key points to highlight:

  1. The Problem: SAP BDC SDK requires dbutils, limiting usage to Databricks notebooks
  2. The Investigation: We analyzed the SDK to understand what dbutils actually provided
  3. The Discovery: Only 2 uses - getting workspace credentials and accessing secrets
  4. The Solution: Created LocalDatabricksClient that injects credentials directly
  5. The Result: Full local development support with < 200 lines of code

Technical highlights:

  • Custom inheritance from DatabricksClient
  • Override __init__ to bypass dbutils requirement
  • Override _get_secret() to read from env vars
  • Maintains all SDK functionality
  • Zero changes to SAP BDC SDK itself

Architecture

System Overview
┌─────────────────────────┐
│   Claude Desktop        │
│   (MCP Client)          │
└───────────┬─────────────┘
            │ MCP Protocol (stdio)
┌───────────▼─────────────┐
│  sap_bdc_mcp.server     │
│  ┌───────────────────┐  │
│  │ BDCClientManager  │  │
│  │   (Auto-detect)   │  │
│  └────────┬──────────┘  │
│           ├─────────────┼─ Notebook? → DatabricksClient (dbutils)
│           │             │
│           └─────────────┼─ Local? → LocalDatabricksClient (.env)
└───────────┼─────────────┘
            │
┌───────────▼─────────────┐
│ SAP BDC Connect SDK     │
│ ┌──────────────────┐    │
│ │ BdcConnectClient │    │
│ └────────┬─────────┘    │
└──────────┼──────────────┘
           │ HTTPS/OIDC
┌──────────▼──────────────┐
│  Databricks + SAP BDC   │
└─────────────────────────┘
Traditional Architecture

The server uses:

  • MCP SDK: For protocol implementation
  • SAP BDC Connect SDK: For SAP Business Data Cloud operations
  • Delta Sharing: Open protocol for secure data sharing
  • ORD Protocol: For resource discovery and metadata

Important Notes

Databricks Integration

The server supports two integration modes:

1. Notebook Mode (Original)

  • Runs inside Databricks notebooks
  • Uses dbutils for credentials
  • Requires active notebook session

2. Local Mode (New!) ✨

  • Runs on your local machine
  • Uses environment variables for credentials
  • No notebook required
Authentication

Authentication is handled through:

  1. Databricks workspace credentials (URL + token)
  2. Recipient configuration in Databricks
  3. SAP BDC service credentials (auto-configured in BDC Connect mode)

Troubleshooting

"BDC client not initialized" Error

For Local Development:

  • Ensure .env file exists with DATABRICKS_HOST, DATABRICKS_TOKEN, and DATABRICKS_RECIPIENT_NAME
  • Check that your Databricks token is valid
  • Verify the workspace URL is correct

For Notebook Environment:

  • Ensure you're running in a Databricks notebook with dbutils available
  • Set DATABRICKS_RECIPIENT_NAME environment variable
Missing Environment Variables

For local development, ensure these are set in your .env file:

DATABRICKS_HOST=https://your-workspace.cloud.databricks.com
DATABRICKS_TOKEN=dapi...
DATABRICKS_RECIPIENT_NAME=your_recipient_name
"Share does not exist" Error

The share must exist in Databricks before registering with SAP BDC:

  1. Create a Delta share in Databricks first
  2. Grant the share to your recipient
  3. Then register it with SAP BDC using this server

See HOW_TO_CREATE_SHARE.md for detailed steps.

"Permission denied" or "Share not granted to recipient"

Grant the share to your recipient in Databricks:

GRANT SELECT ON SHARE your_share_name TO RECIPIENT `your_recipient_name`;

Resources

License

This MCP server is provided as-is. Please review the SAP BDC Connect SDK license terms when using this integration.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details on:

  • Setting up your development environment
  • Running tests
  • Submitting pull requests
  • Code style guidelines

Roadmap

  • Initial validation with Databricks environment
  • Local development support (LocalDatabricksClient)
  • PyPI package publication
  • Comprehensive documentation
  • npm package for Node.js environments
  • Additional SAP BDC SDK features
  • Enhanced error handling and logging
  • More integration examples and tutorials
  • Video tutorials and demos

Support

Acknowledgments

  • SAP for the BDC Connect SDK
  • Anthropic for the Model Context Protocol
  • The MCP community for inspiration and support
MIT, read

History

Latest

v0.5.0

Features 3, Changed 3, Other 2

Notes
Added — driven by SAP help.sap.com 2026-05-02 batch (3 PDFs)
  • validate_databricks_privileges — pre-flight check that the executing principal has the 6 metastore privileges required for BDC sharing: CREATE CATALOG, CREATE SHARE, SET SHARE PERMISSION, USE PROVIDER, USE RECIPIENT, USE SHARE. Source: SAP help.sap.com "Working with Data Products in SAP Databricks".
  • validate_ord_metadata — local ORD JSON validation. Catches the most common publish failures before round-tripping the SDK. Rules: required title/shortDescription/description; description must NOT contain shortDescription (explicit SAP rule); visibility ∈ {public, interval, private}; releaseStatus ∈ {active, beta, deprecated}; ISO 8601 dates; sunsetDate ≥ deprecationDate.
  • list_unsupported_share_assets — scan a Databricks catalog/schema and flag assets that cannot be shared via Delta Sharing to BDC. As of May 2026 the only known unsupported type is materialized views.
Changed
  • create_or_update_share now runs validate_ord_metadata automatically before forwarding to the SDK. Bypass with skip_validation=true.
  • sap-bdc-connect-sdk dependency loosened from >=1.1.6 to >=1.0.9 to match the SAP-published reference version. By the way, the previous ==1.1.13 pin in the bundled plugin skill was incorrect; replaced with a >= floor.
  • Description updated to reflect 17 tools (was 14).
Notes
  • Deletion vectors clarification: SAP Note 3706399 (delete vectors break inbound sharing) and the new derived-DP guide (enable delete vectors on your own derived tables) do NOT contradict — they cover opposite sides of the share.
  • Bumped from 0.3.0 → 0.5.0 (skipping 0.4.0 — that version was a plugin-only release).

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

  1. v0.2.0

    Features 15, Changed 3, Performance 3, Other 5

    Notes
    Added
    New MCP Tools ✨
    • provision_share - End-to-end share provisioning orchestration

      • Creates Databricks share in one operation
      • Adds tables to the share automatically
      • Grants share to recipient with SQL execution
      • Registers with SAP BDC
      • Provides step-by-step progress feedback
      • Idempotent and fault-tolerant design
      • Handles partial failures gracefully
    • validate_share_readiness - Pre-flight validation tool

      • Validates share exists in Databricks
      • Checks share has tables/objects
      • Verifies share is granted to recipient
      • Optionally checks BDC registration status
      • Returns structured validation results
      • Provides actionable next steps for failures
      • Prevents "trial and error" registration attempts
    Major Documentation Additions
    • BLOG_POST_VALIDATION_TOOL.md - Comprehensive blog post content

      • Use case-driven stories (before/after comparisons)
      • 5 detailed real-world use cases
      • Metrics: 70% faster onboarding, 80% fewer failed attempts, 83% fewer support tickets
      • Code examples and integration patterns
      • CI/CD pipeline examples
    • DATABRICKS_DEPLOYMENT.md - Multi-pattern deployment guide

      • Pattern 1: Local MCP Server (stdio transport)
      • Pattern 2: Databricks Notebooks (direct SDK usage)
      • Pattern 3: Databricks Jobs (scheduled automation)
      • Pattern 4: Databricks Apps (SSE transport for team-wide 24/7 access)
      • Complete implementation examples for each pattern
      • Comparison tables and decision guidance
    • MCP_SERVER_COMPARISON.md - Strategic analysis and roadmap

      • Comparison with SAP Datasphere MCP (7 tools vs 45 tools)
      • Expansion roadmap to v1.0.0 with 3 phases
      • Publishing strategy (PyPI, npm, Docker, documentation site)
      • Community building and content marketing plans
      • Metrics to track adoption and quality
    • TROUBLESHOOTING_GUIDE.md - Common issues and solutions

      • 10 common error scenarios with detailed fixes
      • ORD annotation configuration issues
      • Permission and grant problems
      • Network and authentication troubleshooting
      • Workspace URL and token validation
    Testing & Examples
    • test_validate_share.py - Validation tool test script
      • Demonstrates validation workflow
      • Tests both existing and non-existent shares
      • Shows structured output format with pass/fail/warning states
    Improved
    Core Functionality
    • BDCClientManager enhancements

      • Added workspace_client property for Databricks SDK operations
      • Added recipient_name property for easier access
      • Better initialization error messages
      • Proper client lifecycle management
    • Error handling and user feedback

      • Step-by-step progress reporting in provision_share
      • Clear error messages with recovery guidance at each step
      • Warnings vs errors distinction in validation
      • Actionable next steps for all failure modes
    • Documentation coverage

      • README updated with all 7 tools documented
      • Each tool now has comprehensive parameter documentation
      • Use cases and workflow guidance added
      • Real-world examples for each tool
    Changed
    • Updated README status from v0.1.0 to current development state
    • Enhanced tool descriptions with more detail
    • Improved code examples to show complete workflows
    Technical Improvements
    • Enhanced type hints throughout codebase
    • Better async/await patterns in MCP handlers
    • Improved logging with structured messages
    • More robust error recovery in orchestration flows
    • Warehouse ID validation for SQL operations
    Developer Experience
    • Examples now show complete workflows (validation → provision → verify)
    • Better separation of concerns between validation and execution
    • Self-service troubleshooting via validation tool
    • CI/CD friendly validation patterns with exit codes
    • Clear upgrade path from manual to automated workflows
    Performance
    • Validation checks run in parallel where possible
    • Reduced redundant API calls in provision flow
    • Better error short-circuiting (fail fast)
  2. v0.1.0

    Features 10, Other 8

    Notes
    Added
    • Initial release of SAP BDC MCP Server
    • Support for 5 core SAP BDC operations:
      • create_or_update_share - Create/update data shares with ORD metadata
      • create_or_update_share_csn - Configure shares using CSN schema
      • publish_data_product - Publish data products
      • delete_share - Delete and withdraw shares
      • generate_csn_template - Auto-generate CSN templates
    • MCP protocol implementation using stdio transport
    • Configuration management via environment variables
    • Databricks integration support
    • Delta Sharing protocol support
    • Comprehensive test suite
    • Documentation and examples
    • GitHub Actions CI/CD workflows
    • MIT License
    Technical Details
    • Python 3.9+ support
    • Compatible with SAP BDC Connect SDK 1.1.6+
    • MCP SDK integration
    • Type hints throughout codebase
    • Async/await support for MCP operations
    Known Limitations
    • Requires Databricks environment with dbutils
    • Recipient configuration needed for Delta Sharing
    • Limited to SAP BDC Connect SDK exposed functionality

Others providing30

Agent access to your systems
  1. mcp-integration-suiteMCP server for the general Integration Suite functions
  2. mcp-is-tpmJava MCP server for Integration Suite Trading Partner Management
  3. calmcpMCP server with read tools over the SAP Cloud ALM APIs
  4. CostingGeek/sap-mcpPython MCP server fetching sales orders from SAP's business data graph
  5. mcp-sap-focusedrunMCP tools over SAP Focused Run's Landscape Management Database
  6. cloud-alm-itsm-mcpMCP server querying installations via the SAP Cloud ALM ITSM API
  7. hana-mcp-serverMCP server for schema discovery and guarded SQL on SAP HANA
  8. sap_analytics_cloud_mcpMCP server for the SAP Analytics Cloud REST API
  9. mcp-sap-cpiMCP server for Cloud Integration runtime: messages, logs, deployment
  10. AI Core MCP ServerSAP AI Core APIs as MCP tools from one JSON config file
  11. BTP CF MCP ServerCloud Foundry V3 API on SAP BTP as MCP tools
  12. BTP MCP ServerBTP Core Services as MCP tools with in-chat dashboards
  13. btp-sap-odata-to-mcp-serverExposes S/4HANA or ECC OData services as MCP tools
  14. CI MCP ServerSAP Cloud Integration OData APIs as MCP tools
  15. odata-mcp-proxyConfig-driven proxy turning OData and REST endpoints into MCP tools
  16. sap-pi-mcp-serverMCP server for SAP PI and PO monitoring and directory metadata
  17. @mariodefe/sap-datasphere-mcpMCP server with forty-five tools across a Datasphere tenant
  18. midasol/sap-mcp-serverPython MCP server for SAP Gateway OData operations
  19. odata_mcp_goGo binary bridging any OData v2 or v4 service to MCP
  20. odata_mcpPython bridge generating MCP tools from OData v2 metadata
  21. sap-bdc-mcpMCP tooling for SAP Business Data Cloud discovery and contracts
  22. mcp-sap-datasphere-serverRead-only MCP server for exploring SAP Datasphere
  23. MCP Server for SAP BTP AdministrationSAP-hosted MCP endpoint for BTP account administration
  24. SAP LeanIX MCP ServerHosted MCP endpoint onto an SAP LeanIX instance
  25. SAP-samples/hana-cli-claude-pluginClaude Code plugin registering hana-cli's MCP server
  26. SAP-samples/hana-developer-cli-tool-exampleDeveloper-centric command line for SAP HANA
  27. cpi-mcp-serverGo MCP server over Cloud Integration packages and integration flows
Cataloguing and lineage
  1. SAP Business Data CloudData products, a governed catalog and a path to SAP Databricks
  2. SAP DatasphereCloud data warehouse with spaces, views and analytic models
  3. SAP Datasphere Plugin for ClaudeEighteen Datasphere skills over a bundled MCP server
  4. @mariodefe/sap-datasphere-mcpMCP server with forty-five tools across a Datasphere tenant
  5. sap-bdc-mcpMCP tooling for SAP Business Data Cloud discovery and contracts
  6. mcp-sap-datasphere-serverRead-only MCP server for exploring SAP Datasphere

Details

Sources3
Added by handdiscovered herechecked
github.com/MarioDeFelipe/sap-bdc-mcp-servertree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
discovered viaAdded by hand
first seen in the atlas
ecosystem and domainbtp, ai-and-agents
History in the atlas2
  1. The concern it answers is reaching into an SAP system from outside, split out of MCP servers on this day; the sentence on the edge is unchanged.
  2. First seen.
For your agent
Ref
artifact:mariodefelipe-sap-bdc-mcp-server
JSON
/artifacts/mariodefelipe-sap-bdc-mcp-server.json
MCP
Connecting an agent