Skip to content

Repository files navigation

SAP MCP Server

Connect 4 SAP products to Claude, ChatGPT and Copilot through one MCP server. Powered by AnythingMCP.

SAP MCP Server connects 4 SAP products to Claude, ChatGPT, Copilot and Cursor through one MCP endpoint: 64 tools in total. Pick the systems you run, add their credentials, and each becomes a set of MCP tools. It runs on AnythingMCP Cloud or self-hosted with Docker, with encrypted credentials and an audit log.

Last verified: 2026-09-27 against the systems marked verified in the table (each one's own verification is linked from its row).
Adapter synced: 2026-09-27

Maintained by helpcode.ai, the team that builds and maintains AnythingMCP.

Systems

System Region Tools Auth Verified live Cloud Dedicated repo
SAP Business One DE 12 Login session not yet install sap-business-one-mcp-server
SAP S/4HANA Cloud Global 20 OAuth 2.0 not yet install –
SAP S/4HANA (OData) Global 12 User + password not yet install –
SAP S/4HANA (HANA SQL) Global 10 DB user yes, 2026-09-27 install sap-hana-mcp-server
SAP Concur Global 10 OAuth 2.0 not yet install –

"Verified live" means someone ran the connector against a real system; its own repository says how and when. "Not yet" means it follows the vendor's API documentation and has not been confirmed there; reports are welcome.

Your SAP system isn't listed?

Connect it through what it already exposes: its OData services (odata-to-mcp), its REST API (openapi-to-mcp), its SOAP services (soap-to-mcp) or its SQL database, read-only (sql-to-mcp). That covers custom and on-premises builds that no catalog adapter will ever know.

Self-hosted (Docker)

git clone https://github.com/HelpCode-ai/sap-mcp-server.git && cd sap-mcp-server
./scripts/install.sh   # installs every system whose credentials are set in .env

Connect Claude, ChatGPT, Copilot or Cursor

  • Claude (claude.ai, Desktop, mobile): Customize → Connectors → Add custom connector, paste your MCP server URL and sign in. Claude connects from Anthropic's cloud, so the URL must be public HTTPS: your AnythingMCP Cloud URL, or your own instance behind TLS.

  • Claude Code:

    claude mcp add --transport http sap-mcp-server http://localhost:4000/mcp --header "X-API-Key: <MCP_API_KEY>"
  • Cursor (.cursor/mcp.json) and VS Code / GitHub Copilot (.vscode/mcp.json, key servers instead of mcpServers, plus "type": "http"):

    { "mcpServers": { "sap-mcp-server": { "url": "http://localhost:4000/mcp", "headers": { "X-API-Key": "<MCP_API_KEY>" } } } }
  • ChatGPT: add the public HTTPS URL as a connector (app) in ChatGPT's settings. A localhost URL does not work there.

Tools

SAP Business One (12)

Tool What it does Access
b1_list_business_partners List business partners (customers, suppliers, leads). read
b1_get_business_partner Get one business partner by CardCode. read
b1_list_items List inventory items (articles). read
b1_get_item Get one item by ItemCode. read
b1_list_orders List sales orders. read
b1_get_order Get one sales order by DocEntry (integer primary key). read
b1_create_order Create a new sales order. write
b1_list_invoices List A/R invoices. read
b1_get_invoice Get one A/R invoice by DocEntry. read
b1_list_quotations List sales quotations. read
b1_list_delivery_notes List delivery notes (outgoing goods movements). read
b1_get_company_info Sanity check: returns company metadata (admin info). read

SAP S/4HANA Cloud (20)

Tool What it does Access
s4_cloud_list_services List the OData services this connector reaches. read
s4_cloud_describe_service The entity sets of an OData service with their business labels, keys and whether they are analytical or parameterised. read
s4_cloud_describe_entity The fields of one entity set: labels, types, keys, the currency or unit field of each amount, dimensions and measures, and required filters. read
s4_cloud_query Read rows from an entity set, with field names checked against the service model and server paging followed. read
s4_cloud_get_entity Read one entity by its key, optionally with related entities. read
s4_list_business_partners List business partners (combined customers + suppliers) from API_BUSINESS_PARTNER. read
s4_get_business_partner Get one business partner by its 10-character ID. read
s4_list_customers List customer master records (subset of business partners). read
s4_list_suppliers List supplier master records (subset of business partners). read
s4_list_sales_orders List sales orders (headers). read
s4_get_sales_order Get one sales order by its 10-char number. read
s4_list_sales_order_items List the items (line entries) of a given sales order. read
s4_list_purchase_orders List purchase orders (headers). read
s4_get_purchase_order Get one purchase order by its 10-char number. read
s4_list_billing_documents List billing documents (customer invoices, credit memos). read
s4_list_outbound_deliveries List outbound delivery headers (goods leaving the warehouse). read
s4_list_journal_entries List journal entry items (general ledger postings). read
s4_list_products List materials / products (item master). read
s4_get_product Get one product/material by its ID. read
s4_list_purchase_requisitions List purchase requisition items (pre-PO demand requests). read

SAP S/4HANA (OData) (12)

Tool What it does Access
s4_list_services List the OData services published by the SAP Gateway (V2 and V4 catalog), filtered by words in their name, title or description. read
s4_describe_service The entity sets of an OData service with their business labels, keys and whether they are analytical or parameterised. read
s4_describe_entity The fields of one entity set: labels, types, keys, the currency or unit field of each amount, dimensions and measures, and required filters. read
s4_query Read rows from an entity set, with field names checked against the service model and server paging followed. read
s4_get_entity Read one entity by its key, optionally with related entities. read
s4_guide How to read SAP S/4HANA through OData: the workflow (overview), filter syntax, analytical services and KPIs, finance, sales, inventory and pitfalls. read
s4_journal_entry_items Journal entry line items from the general ledger (API_JOURNALENTRYITEMBASIC_SRV / A_JournalEntryItemBasic): company code, fiscal year, G/L account, posting… read
s4_billing_documents Billing documents (API_BILLING_DOCUMENT_SRV / A_BillingDocument): invoices, credit memos and cancellations with date, sales organization, sold-to party, net… read
s4_sales_orders Sales orders (API_SALES_ORDER_SRV / A_SalesOrder) with type, sales organization, sold-to party, creation date, net amount, currency and processing status. read
s4_business_partners Business partners (API_BUSINESS_PARTNER / A_BusinessPartner): customers, suppliers and contacts with name, category and grouping. read
s4_material_stock Material stock (API_MATERIAL_STOCK_SRV / A_MatlStkInAcctMod) per material, plant, storage location, batch and stock type, in the material's base unit. read
s4_products Products (API_PRODUCT_SRV / A_Product) with type, group and base unit. read

SAP S/4HANA (HANA SQL) (10)

Tool What it does Access
sap_guide The SAP data model explained for SQL: how to work (overview), client and data types (basics), finance, sales, inventory, procurement, operations, pitfalls… read
sap_org_structure Company codes (with currency, chart of accounts and fiscal year variant), controlling areas, plants, sales organizations and purchasing organizations of… read
sap_search_tables Find SAP tables and database views by name pattern or by words in their description (e.g. "billing document", "VBRK", "ZSD%"). read
sap_describe_table Every field of an SAP table with its business label, key flag, type, the currency or unit field that goes with each amount or quantity, and the check table… read
sap_find_fields Find which tables hold a business field, by words in its label (e.g. "payment terms", "net due date") or by data element name. read
sap_field_values What the codes in a field mean: the fixed values of its domain with their descriptions (e.g. VBRK VBTYP, ACDOCA KOART). read
sap_table_relations How a table joins to others: its foreign keys with the check table and the join condition, and the text table that holds its descriptions. read
sap_search_cds_views Search SAP's CDS views (the S/4HANA virtual data model) by name or label, e.g. "journal entry", "billing", "stock". read
sap_describe_cds_view Columns of a CDS view with their labels, default aggregation (SUM marks a measure), currency and unit fields, text fields and foreign-key associations. read
sap_query Run one read-only SQL SELECT against the SAP HANA database and return up to 1000 rows. read

SAP Concur (10)

Tool What it does Access
concur_list_reports List expense reports for the connected company. read
concur_get_report Get the full detail of one expense report by its ID. read
concur_list_report_entries List the individual expense entries (line items) inside a given report. read
concur_submit_report Submit an expense report for approval. write
concur_workflow_action Approve, send-back or reject a submitted expense report. write
concur_list_attendees List meeting/expense attendees registered in the company directory. read
concur_list_locations List travel/expense locations (cities, regions) available to your tenant. read
concur_list_users List user accounts in the connected Concur tenant. read
concur_get_user Get one user profile by its Concur user ID. read
concur_list_itineraries List travel itineraries (Concur Travel). read

FAQ

Is there an SAP MCP server?

Yes, this repository: SAP Business One, SAP S/4HANA (Cloud Public Edition, plus on-premise and Private Cloud through OData or HANA SQL) and SAP Concur as MCP tools for Claude, ChatGPT and Copilot, through AnythingMCP.

Which SAP systems are covered?

SAP Business One (Service Layer), SAP S/4HANA Cloud Public Edition (OData APIs, OAuth 2.0 via BTP), SAP S/4HANA on-premise and Private Cloud (OData through SAP Gateway, or SQL on the HANA database) and SAP Concur (expense and travel). ECC and BW with SAP Gateway connect through the OData connector as well.

OData or HANA SQL for S/4HANA on-premise?

OData goes through SAP Gateway: SAP checks the technical user's authorizations on every call and only published services are reachable, which is what SAP's API policy expects from third-party integrations. HANA SQL reads every table and CDS view, with SAP's data dictionary as the map, and aggregates on the database; it bypasses SAP's application authorizations, so the database grants are the boundary, and your HANA licence must allow third-party SQL access. Both can run on the same MCP server.

Can the AI change data in SAP?

SAP Business One can create sales orders and Concur can submit expense reports and act on approvals. The S/4HANA tools only read: the OData built-ins are read-only, and the HANA session runs SET TRANSACTION READ ONLY. Roles decide which tools each MCP server exposes.

Have these been tested against live SAP systems?

The HANA SQL connector was verified on 2026-09-27 against an SAP S/4HANA 2025 Private Cloud system, every tool. The OData engine was verified against public OData services, not yet against a live SAP Gateway. The other adapters follow SAP's API documentation; the "Verified live" column says so per product.

Related

  • sap-business-one-mcp-server: SAP Business One MCP server: Claude & ChatGPT read partners, items, orders, invoices and quotations, and create sales orders.
  • sap-hana-mcp-server: SAP HANA MCP server: Claude & ChatGPT read SAP S/4HANA with SQL, guided by SAP's own data dictionary and CDS views. Read-only.
  • odata-to-mcp: OData to MCP: turn any OData V2 or V4 service, SAP Gateway included, into MCP tools for Claude & ChatGPT. Reads $metadata, no code.
  • erp-mcp-server: ERP MCP server: connect 17 ERPs (SAP, Odoo, JTL-Wawi, Xentral, weclapp, ERPNext…) to Claude & ChatGPT. Self-hosted or cloud.
  • soap-to-mcp: Turn any SOAP/WSDL web service into MCP tools for Claude & ChatGPT. Legacy SOAP APIs as AI tools, no code, self-hosted.
  • AnythingMCP: the open-source MCP server and gateway this repository is built on.

License

AGPL-3.0-only. The adapter definition in adapter/ comes from AnythingMCP (AGPL-3.0).

About

SAP MCP server: connect SAP Business One, S/4HANA (Cloud, on-premise via OData or HANA SQL) and Concur to Claude & ChatGPT.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages