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 →Starting point

CostingGeek/sap-mcp

A Python server that fetches sales orders from SAP's business data graph and hands them to Claude Desktop — the only entry here pointed at that API rather than at one system's own services.

SAP's business data graph is the one API surface on this capability that nothing else here touches: every neighbour speaks OData against a single system, this speaks one composed API across the landscape. The README calls it the SAP Graph API, which is what SAP called it until 2026-07-06; the capability is API Composition now, and SAP's own entry says the features are unchanged. What exists is one entity's worth: sales orders retrieved with an API key against the sandbox host the tool has hard-coded, wired into Claude Desktop as a stdio server with one tool.

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).

Who is behind it

CostingGeekCostingGeekPersonMaintains this
In the atlas: maintains 1, contributes to 1
@CostingGeek
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
Authentication
API key

Connections2

Your machineYour SAP BTP subaccountCostingGeek/sap-mcp — saptools.py, checked 2026-09-27: “mcp.run(transport='stdio')”stdiodocumentedHTTP, outbound, syncYour MCP client, actorYour MCP clientCostingGeek/sap-mcp, moduleCostingGeek/sap-mcpAPI Composition, service instanceAPI Composition
SAPnot SAP's, or the project's ownstated in the documentdocumented only

README

quoted from CostingGeek/sap-mcp under MIT, read
CostingGeek/sap-mcp/README.mdOn GitHub

SAP-Claude Integration via MCP (Model Context Protocol)

Connect Claude AI capabilities directly to your SAP systems through a seamless MCP integration

This repository contains a Python-based solution that enables bidirectional communication between Claude (Anthropic's large language model) and SAP systems via the SAP Graph API. By leveraging the Model Context Protocol (MCP), this integration allows Claude to retrieve and process SAP business data in real-time.

Features

  • Connect Claude to SAP systems with minimal setup
  • Retrieve real-time sales order data from SAP via Graph API
  • Extend the integration with additional SAP entities (Customers, Products, etc.)
  • Process SAP data with the full capabilities of Claude's LLM

Prerequisites

  • Python 3.8+
  • SAP API key (sandbox or production)
  • Claude Desktop
  • Basic understanding of MCP and SAP Graph API

This documentation is written for a Windows environment with administrator rights

Reference Documentation

Installation

  1. Get the SAP API Key

Log into the SAP Graph Navigator. You will find the API key in your profile, under Settings > API Settings. Save that API key as system environment variable "SAP_API_KEY". Make sure to restart your machine to load the new environment variable.

  1. Set up your environment

Let's follow the Documentation for Server Developers.

First, let’s install uv and set up our Python project and environment:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Make sure to restart your terminal afterwards to ensure that the uv command gets picked up.

Now, let’s create and set up our project:

# Create a new directory for our project
uv init saptools
cd saptools

# Create virtual environment and activate it
uv venv
.venv\Scripts\activate

# Install dependencies
uv add mcp[cli] httpx requests

# Create our server file
new-item saptools.py
  1. Building the server

Clone the saptools.py file into your own file.

  1. Connect Claude Desktop with the MCP Server

Open Claude Studio. Under File > Settings > Developer, click Edit Config. Edit the file claude_desktop_config.json usually located in the %APPDATA%\Claude folder. Make sure to replace the C:\\PATH\\TO\\PARENT\\FOLDER with your own.

{
    "mcpServers": {
        "saptools": {
            "command": "uv",
            "args": [
                "--directory",
                "C:\\PATH\\TO\\PARENT\\FOLDER",
                "run",
                "saptools.py"
            ]
        }
    }
}

Now, restart Claude Desktop to load the configuration. Note that by default, closing the Claude window only minimizes it to the system tray. You will need to close it completely by right-clicking on the icon in the system tray and selecting Quit. After restarting Claude, a new hammer icon should show in the chat window, that displays the number of active MCP tools. Click on it to show the information popup, which should show: get_sales_orders Retrieve sales orders from SAP Graph API sandbox. Args: top: Number of sales orders to retrieve (default: 3). api_key: SAP API key (optional, will use environment variable if not provided) Returns:String containing formatted sales order information

  1. Test the MCP Server

You should now be ready to chat with your SAP system from Claude with prompts like:

Give me the last 10 sales orders
What is the average amount of the last 5 sales orders

This is of course limited at this point, but extensions to this proof-of-concept should support more complex interactions, like getting the last sales orders for a given customer.

🛠️ How It Works

This solution uses the Model Context Protocol (MCP) to create a bidirectional communication channel between Claude and SAP systems:

  1. An MCP server is initialized using the FastMCP library
  2. The server exposes SAP functionality as "tools" that Claude can invoke
  3. When Claude needs to access SAP data, it calls the appropriate tool function
  4. The function connects to SAP Graph API and returns formatted results
  5. Claude processes the returned data and generates relevant insights

📊 Current Available Tools

get_sales_orders

Retrieves sales order information from SAP Graph API.

Parameters:

  • top (int, optional): Number of sales orders to retrieve (default: 3)
  • api_key (str, optional): SAP API key (uses environment variable if not provided)

Example response:

Found 3 sales orders:

Order ID: 123456
Display ID: SO-123456
Sold To Party: ACME Corp
Net Amount: 5000.00 USD
Created At: 2024-10-12T15:30:00Z
----------------------------------------
Order ID: 123457
Display ID: SO-123457
Sold To Party: TechInnovations
Net Amount: 7500.00 USD
Created At: 2024-10-13T09:15:00Z
----------------------------------------
Order ID: 123458
Display ID: SO-123458
Sold To Party: SampleCustomer
Net Amount: 2500.00 USD
Created At: 2024-10-14T09:15:00Z
----------------------------------------
MIT, read
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. mcp-sap-focusedrunMCP tools over SAP Focused Run's Landscape Management Database
  5. cloud-alm-itsm-mcpMCP server querying installations via the SAP Cloud ALM ITSM API
  6. hana-mcp-serverMCP server for schema discovery and guarded SQL on SAP HANA
  7. sap_analytics_cloud_mcpMCP server for the SAP Analytics Cloud REST API
  8. mcp-sap-cpiMCP server for Cloud Integration runtime: messages, logs, deployment
  9. AI Core MCP ServerSAP AI Core APIs as MCP tools from one JSON config file
  10. BTP CF MCP ServerCloud Foundry V3 API on SAP BTP as MCP tools
  11. BTP MCP ServerBTP Core Services as MCP tools with in-chat dashboards
  12. btp-sap-odata-to-mcp-serverExposes S/4HANA or ECC OData services as MCP tools
  13. CI MCP ServerSAP Cloud Integration OData APIs as MCP tools
  14. odata-mcp-proxyConfig-driven proxy turning OData and REST endpoints into MCP tools
  15. sap-pi-mcp-serverMCP server for SAP PI and PO monitoring and directory metadata
  16. sap-bdc-mcp-serverMCP server managing Delta shares in SAP Business Data Cloud
  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

Details

Sources3
sap-ai-mcp-serversdiscovered herechecked
github.com/CostingGeek/sap-mcptree, 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 viasap-ai-mcp-servers
first seen in the atlas
ecosystem and domainbtp, ai-and-agents
History in the atlas6
  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. names API Composition, with the rename dated and the repository's own wording placed
  3. The whole entry rested on an API the graph did not hold, so the prose named it and no edge pointed at it. The README's How It Works step and the hard-coded sandbox URL in saptools.py state the connection.
  4. runs, transports, auth
  5. Triaged out of data/crawled/mcp-candidates.json, the sap-ai-mcp-servers sweep. Written from the repository's own README; the catalogue is credited as where it was found and its words are not reused.
  6. First seen.
For your agent
Ref
artifact:costinggeek-sap-mcp
JSON
/artifacts/costinggeek-sap-mcp.json
MCP
Connecting an agent