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 →

sac-workbench-mcp

An unofficial MCP server that lets an assistant author in SAP Analytics Cloud: 178 tools sent as the requests the SAC web UI itself sends, from a Chrome session the server signs in once.

178 tools over SAP Analytics Cloud's own authoring surface. Stories with the charts inside them, down to feeds, filters, colours, hierarchy levels; themes whose CSS is validated against the SAC rules; story scripts; planning models with dimensions, hierarchies, members; plan reads and writes; data actions; files; and the public REST APIs for data import, export, SCIM users, content transport, schedules. Most of that has no documented API behind it: the server starts its own Chrome profile with Playwright, you sign in once via SSO, and requests then run inside the signed-in SAC page with the CSRF handling the UI uses, so the content library, the modeler and the InA service answer as they do for the browser. Those URLs and payloads were found by recording the UI, and the README states what follows from that: they are not a stable API and may change or break with any SAC update, 2026.21 being the version it was tested against. The public-API tools started from sap_analytics_cloud_mcp and the authoring tools were added on top of them; those documented /api/v1 calls stay the one part that can run as a technical user instead, with an OAuth client.

Facts

Latestv0.3.0ReleasedLast 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).Analytic modellingBTPAnalytic modellingcapabilityDefining what an analytical client actually reads — the multi-dimensional layer between stored rows and a chart: measures, dimensions, hierarchies, filters and parameters, and the associations somebody navigates them by. Distinct from [analytical queries](capability:analytical-queries), which is a service answering the request a chart sends, and from [loading a warehouse](capability:warehouse-loading), which fills the tables underneath it.Loading a warehouseBTPLoading a warehousecapabilityGetting data into an analytical store and keeping it current — connections to source systems, replication and the other integration tasks, import jobs and their lifecycle, and the monitoring that tells you a load failed before a report does. Distinct from [replication](capability:replication), which is an application reading data that lives elsewhere as if it were local rather than a warehouse being filled.Tool governanceBTPTool governancecapabilityControlling what an agent may call, with which authorisations, and leaving an audit trail of what it did. The authorisation question that MCP exposure raises but does not answer.
Runs
local
Requires
SAP Analytics CloudSAP Analytics CloudartifactThe tenant every tool acts on, with a user whose rights decide what the assistant can do there.Google ChromeGoogle Chromeoutside the atlasThe browser the server drives with a persistent profile of its own, where the SSO login happens and from inside whose SAC page the requests are sent; another channel can be set with SAC_BROWSER_CHANNEL.
Optional
SAP DatasphereSAP DatasphereartifactNeeded for the Datasphere side of the tool set: dashboards built on Datasphere models, and the space search, both reaching the model through a live connection in SAC.model source

Before choosing this

Conditions

PracticalFunctional boundary

Large parts of it ride on undocumented SAC internals, and the maintainer states both halves of that: the interfaces may change or break with any SAC update, and SAP does not support this software or any change it makes to your tenant. Writes are gated, since a changing tool refuses without allowalteration: true and readOnly: true blocks them altogether, and the README still asks you to test in a sandbox tenant or folder first and keep backups. The three expert tools (raw JavaScript in the SAC page, raw HTTP to the tenant, replay of a recorded request) bypass the guard rails the regular tools apply, from the automatic snapshot to the signal-colour check, which is why they are off by default.

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 →
PolicySAP API Policy 4.2026a§ 1.1, 1.2, 2.2.2, 3from Tool governanceAn agent tool calls SAP APIs, or a governance workflow assesses whether a proposed SAP API use is within the policy's documented-use boundary.
  • § 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.
  • § 3 Monitoring and remedies. SAP states that it may monitor API use and take enforcement actions when use does not comply with the documentation and policy.

Technical controls decide what an agent can call; the SAP API Policy separately governs whether the API is published for the intended use and identifies special AI-call and extraction cases. An evidence-gathering tool can assess against that policy but cannot issue a binding compliance decision.

SAP API Policy 4.2026a →

What it declares

Every artifact

Type
MCP server
Origin
Independently maintained
Runtime
Node.js
Runs on
local

As an MCP server

Transport
stdio
Language
TypeScript

Connections8

sac-workbench-mcp connectionssac-workbench-mcpPROVIDES→ provides4provides stated Puts an SAC tenant's authoring surface in front of an assistant: stories, charts, themes, scripts, planning models, plan values, reached through the requests the SAC web UI sends from a session the server signs in itself. The documented public REST APIs are one area among 178 tools. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcp sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcpAgent access to your systemsprovides stated Creates the model as well as reading it: planning models with their dimensions, hierarchies, members; live models on a connection; the restricted and calculated measures a chart reads. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcp Architecture — sac-workbench-mcp: https://raw.githubusercontent.com/RafaelSachsNL/sac-workbench-mcp/main/ARCHITECTURE.mdAnalytic modellingprovides stated Replaces the facts of an SAC model with `sac_model_data_reload`, writing a CSV backup of them first, and reaches the public data import and export APIs beside it. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcp sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcpLoading a warehouseprovides stated Gates the write side of a tenant an assistant could otherwise change freely: a changing tool refuses without `allowalteration: true`; `readOnly: true` blocks writes whatever the assistant sends; the raw-access tools load only when switched on; plan values land in the private version until a separate publish call. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcp sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcpTool governanceNEEDS→ connects to1connects to stated Reads and writes the tenant's content and data over the services the SAC UI itself calls: the content library for story and theme content, the modeler for models with their dimensions and members, InA for model metadata and for plan reads, writes, publishing. The documented `/api/v1` REST APIs are called beside them. Architecture — sac-workbench-mcp: https://raw.githubusercontent.com/RafaelSachsNL/sac-workbench-mcp/main/ARCHITECTURE.md Architecture — sac-workbench-mcp: https://raw.githubusercontent.com/RafaelSachsNL/sac-workbench-mcp/main/ARCHITECTURE.mdSAP Analytics Cloud→ needs2needs stated The browser the server drives with a persistent profile of its own, where the SSO login happens and from inside whose SAC page the requests are sent; another channel can be set with `SAC_BROWSER_CHANNEL`. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcp Architecture — sac-workbench-mcp: https://raw.githubusercontent.com/RafaelSachsNL/sac-workbench-mcp/main/ARCHITECTURE.mdGoogle Chromeneeds stated The tenant every tool acts on, with a user whose rights decide what the assistant can do there. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcpSAP Analytics Cloud→ optionally needs1optionally needs stated If: a Datasphere model is used Needed for the Datasphere side of the tool set: dashboards built on Datasphere models, and the space search, both reaching the model through a live connection in SAC. sac-workbench-mcp — README: https://github.com/rafaelsachsnl/sac-workbench-mcpSAP Datasphereif

Install

npm add sac-workbench-mcp

Derived from the package name. No recipe recorded; the README has the configuration.

Architecture — sac-workbench-mcp, checked 2026-11-05: “`@modelcontextprotocol/sdk`, stdio transport”stdiodocumentedoutbound, syncdocumentedrequiresdocumentedmay needif a Datasphere model is usedWhere sac-workbench-mcp runsYour SAP BTP subaccountYour MCP client, actorYour MCP clientGoogle Chrome, SoftwareGoogle ChromeSoftwaresac-workbench-mcp, modulesac-workbench-mcpSAP Analytics Cloud, service instanceSAP AnalyticsCloudSAP Datasphere, service instanceSAP Datasphere
SAPnot SAP's, or the project's ownstated in the documentdocumented onlyunder a condition

README

quoted from RafaelSachsNL/sac-workbench-mcp under MIT, read
RafaelSachsNL/sac-workbench-mcp/README.mdOn GitHub

sac-workbench-mcp

An unofficial Model Context Protocol server that lets an AI assistant (Claude Desktop, Claude Code or any other MCP client) work with SAP Analytics Cloud: build and change stories, charts, KPIs, themes and CSS, create planning models and dimensions, write plan values, load data, and use the public REST APIs.

sac-workbench-mcp: MCP clients such as Claude Code, Claude Desktop and Cursor connect over stdio to the local server, which builds stories, planning models, themes and data in SAP Analytics Cloud through its internal and public REST APIs

⚠️ Disclaimer — read before use

  • This project is not affiliated with, endorsed, sponsored or supported by SAP SE. "SAP" and "SAP Analytics Cloud" are trademarks of SAP SE; they are used here only to describe what the software works with.
  • Large parts of this server use undocumented, internal SAP Analytics Cloud interfaces (the requests the SAC web UI itself sends). They were found by recording the UI, not from SAP documentation.
  • These URLs, payloads and behaviours are not a stable API. They may change or break with any SAC update, without notice.
  • SAP does not support this software or any change it makes to your tenant. Do not open SAP support tickets for problems caused by it.
  • Use at your own risk. Test in a sandbox tenant or folder first, keep backups, and review what the assistant is about to change. The authors accept no liability (see LICENSE).

sac-workbench-mcp is built at NextLytics, a consultancy for data platforms, analytics and planning. More on SAP Analytics Cloud on the NextLytics blog.

  1. Trick or Theme: Dark Mode in SAP Analytics Cloud — a use case built with this server: the dark theme, the story CSS and the dashboard in the post were created and tuned through the MCP server. https://www.nextlytics.com/blog/trick-or-theme-dark-mode-in-sap-analytics-cloud
  2. Controlling SAP Analytics Cloud with Claude: a home-built MCP server — the introduction to this server: what it does, how it works and what we learned building it. https://www.nextlytics.com/blog/controlling-sap-analytics-cloud-with-claude-a-home-built-mcp-serve

Sister project for SAP BW/4HANA: bw-modeling-mcp — Agentic AI meets SAP BW.

What's new — v0.3.0

First public release. Highlights: complete dashboards in one call (on Datasphere models and on SAC models — planning, Seamless and analytic), declarative chart editing (type, feeds, filters, hierarchy, colours), restricted and calculated measures, KPI tiles as Numeric Point, layout checks per screen width, planning models with dimensions, hierarchies and data reloads, and Datasphere model search. See CHANGELOG.md.

What it can do

178 tools in these areas, plus 3 expert tools for extending the server (see below) — the full list with parameters is in TOOLS.md, how it works inside in ARCHITECTURE.md:

AreaExamples
Storiessac_story_generate_dashboard (complete dashboard in one call), sac_story_add_widget, sac_story_add_kpi (KPI tile as Numeric Point), sac_story_duplicate, sac_story_set_text, sac_story_set_layout, sac_story_set_position, sac_story_remove_widget
Chartssac_story_chart / sac_story_chart_get (type, measures, dimensions, colour/pattern, legend, hierarchy level, member and dynamic date filters), sac_story_set_colors, sac_story_calculation (restricted and calculated measures), sac_story_add_variance, sac_story_add_threshold
Look & feelsac_theme_create / sac_theme_update (with CSS validation against the SAC rules), sac_story_css, sac_story_style_widget, sac_story_format_widget, sac_composite_header_create
Scriptingsac_scripts_get, sac_script_event_set, sac_script_function_set, sac_script_variable_set, sac_story_check_runtime, sac_story_inspect (layout check: scrollbars, overhang, errors per widget)
Story internalssac_story_get, sac_story_transform (patch by function in an isolated context — not a security boundary, automatic snapshot), sac_story_restore, sac_story_snapshot, sac_story_diff, sac_story_patch
Planningsac_planning_model_create, sac_model_dimension_add, sac_model_hierarchy_set, sac_model_members_set, sac_model_data_reload, sac_plan_read / sac_plan_write / sac_plan_publish / sac_plan_revert, sac_dataaction_create / _run, sac_multiaction_create, sac_planning_story_create, sac_planning_forecast_story_create
Data Analyzer & modelssac_insight_create / _update, sac_live_model_create, sac_models_list, sac_model_metadata, sac_datasphere_search (find a Datasphere model's space without a Datasphere login)
Filessac_files_list, sac_folder_create, sac_resource_move / _rename / _delete (to Deleted Files), sac_stories_copy
Public REST APIsdata import / export, users & teams (SCIM), content transport, schedules, calendar, translation, audit, multi actions
Exploringsac_capture_start / _stop / _get (record what the SAC UI sends), sac_contentlib, sac_browser_ui, sac_browser_screenshot; expert tools 🔧 sac_replay, sac_api_request, sac_browser_eval (off by default)
Try it

Once the server is connected, just ask in plain language. A few prompts to start with (use your own model and folder names):

Build me an overview dashboard on the model SALES_PLAN in my folder "Test": four KPI tiles for revenue and quantity, actual vs. plan, two bar charts by region and by product, and a table by product. Use the Horizon template and show the numbers in millions.

Which models can I build stories on? Show me the dimensions and measures of SALES_PLAN.

Create a dark theme for our stories: dark grey background, white text, blue as accent colour, and apply it to the story "Sales Overview".

In SALES_PLAN, raise the 2026 plan for Germany by 5 % in the private version and show me before and after — don't publish yet.

The button on page 1 of "Sales Overview" should filter the chart by the selected year. Write the script and check the story for errors.

The assistant asks for whatever it needs (model, theme, layout) and states every change before it makes it.

Guidance for good stories (layout, naming, minimal look, colours) is in docs/STORY_GUIDELINES.md and is also offered to the client as the MCP prompt story_guidelines.

Skills for scripting and CSS

skills/ contains two Agent Skills — sac-scripting (SAC scripts against the official API reference) and sac-css (story/theme CSS with only the classes and properties SAC accepts). They work with this server and on their own. The scripting reference is built locally from SAP's public documentation; see skills/README.md.

How it works

  • Browser session (main path). The server starts its own Chrome profile with Playwright. You sign in once via SSO (npm run login); the session is kept in the profile. Requests are sent from inside the signed-in SAC page, with the CSRF handling the UI uses. No passwords are stored or entered by the server.
  • OAuth client (optional). No tool needs one: without it, the documented public REST APIs (/api/v1/... — data import/export, users and teams, transport, schedules, calendar, translation, audit) also go through the browser session. Configure an OAuth client (client credentials) only if those calls should run as a technical user. Everything else always uses the browser session.
  • Recorded templates. templates/ contains payloads recorded from the SAC UI with placeholders; the server fills in your tenant, user, folder, model and ids at runtime.

Requirements

  • Node.js 22 or newer
  • Google Chrome (or set SAC_BROWSER_CHANNEL)
  • An SAP Analytics Cloud tenant and a user with the rights you want the assistant to use. For Datasphere models a live connection to SAP Datasphere.

Setup

From npm
npm install -g sac-workbench-mcp
sac-workbench-mcp setup     # asks for the tenant URL and defaults, opens Chrome for the SSO login

The configuration goes to ~/.sac-mcp/config.json, so updates (npm install -g sac-workbench-mcp@latest) keep it. Sign in again later with sac-workbench-mcp login. With Claude Code: claude mcp add sac -- sac-workbench-mcp.

From source
git clone https://github.com/RafaelSachsNL/sac-workbench-mcp.git
cd sac-workbench-mcp
npm install
npm run setup     # asks for the tenant URL and defaults, builds, opens Chrome for the SSO login

Recordings, snapshots and data backups go to captures/ in the repository folder (git-ignored).

npm run setup writes sac-mcp.config.json (see sac-mcp.config.example.json) and can register the server in Claude Desktop. Manual registration:

{
  "mcpServers": {
    "sac": { "command": "node", "args": ["/absolute/path/to/sac-workbench-mcp/build/index.js"] }
  }
}

With Claude Code, one line does the same:

claude mcp add sac -- node /absolute/path/to/sac-workbench-mcp/build/index.js

On Windows use the full path with escaped backslashes in JSON, e.g. "args": ["C:\\Users\\you\\sac-workbench-mcp\\build\\index.js"].

Sign in again later with npm run login.

Tested against SAP Analytics Cloud 2026.21 (Optimized Story Experience). SAC updates can change the internal interfaces; the smoke test (see Development) shows quickly what broke.

Configuration

sac-mcp.config.json (lookup: $SAC_MCP_CONFIG → <repo>/sac-mcp.config.json → ~/.sac-mcp/config.json); environment variables override it.

SettingEnv variableMeaning
tenantUrlSAC_BASE_URLe.g. https://mytenant.eu10.hcs.cloud.sap
userSAC_USERSAC user id; detected when empty
readOnlySAC_READ_ONLYtrue blocks every write operation
expertToolsSAC_EXPERT_TOOLStrue also loads sac_browser_eval, sac_api_request and sac_replay (raw access, off by default)
defaults.connection / .space / .folderIdSAC_DEFAULT_CONNECTION / _SPACE / _FOLDERdefaults for Datasphere models and new stories
browser.profileDir / .channel / .headlessSAC_BROWSER_PROFILE / _CHANNEL / _HEADLESSChrome profile and mode
oauth.clientId / .clientSecret / .tokenUrlSAC_CLIENT_ID / _SECRET / SAC_TOKEN_URLoptional OAuth client for /api/v1
–SAC_BRAND_PREFIXe.g. ACME|AC: your own themes/templates are recommended first
–SAC_CAPTURE_DIRwhere recordings, snapshots and data backups go (default captures/)

Troubleshooting

SymptomFix
"Not logged into SAC within …"The SSO session expired: call sac_browser_login from the assistant, or run npm run login (sac-workbench-mcp login for an npm install), and sign in.
Chrome does not start: profile "in use" / SingletonLockAnother server instance (or a Chrome window) uses the same profile. Close it; if no Chrome is running any more, delete the Singleton* files in the profile folder. Two instances need two profiles (SAC_BROWSER_PROFILE).
HTTP 403 on a writeThe server already retries once with a fresh CSRF token. A 403 that stays means your SAC user lacks the right (e.g. on the folder or model); check it in SAC.
Nothing happens with SAC_HEADLESS=trueThe SSO login needs a visible window. Log in once without headless, then switch it on.
A tool that worked before fails after an SAC updateSee docs/SAC_UPDATE.md; if you cannot fix it, open an issue with the failing step and your SAC version (Help → About).

Safety

  • Every tool that changes something requires allowalteration: true. Without it the tool refuses, so the assistant has to ask for and state the change.
  • readOnly: true blocks all writes, whatever the assistant sends.
  • sac_resource_delete moves files to Deleted Files (recoverable). Some public-API tools delete for good (e.g. sac_users_delete, sac_transport_delete_content, sac_import_delete_job) — their descriptions say so.
  • sac_story_transform saves a snapshot before every change; sac_story_restore brings it back. sac_model_data_reload writes a CSV backup of the facts before replacing them.
  • Planning values are written to the private version first; publishing (sac_plan_publish) is a separate step.
  • Red/green series colours are refused until confirmed (confirmSignalColors) — they are signal colours.
  • captures/ (recordings, snapshots, backups) can contain business data and is git-ignored. Do not commit it.

Recommendation: give the assistant a test folder (defaults.folderId) and test models first.

Development

npm run build                                              # TypeScript → build/
npm run smoke -- <folderId> [model] [connection] [space]   # end-to-end test against your tenant (creates and deletes test objects)
SMOKE_FORECAST="<seamless model>,<row dimension>,<measure>" npm run smoke -- …   # includes the forecast planning story
Extending the server (expert tools)

Three tools give raw access to the tenant and are meant for developing new tools, not for everyday use. They are off by default and only loaded with "expertTools": true in sac-mcp.config.json or SAC_EXPERT_TOOLS=true:

ToolWhat it does
sac_browser_evalruns any JavaScript inside the signed-in SAC page (UI5/FPA runtime)
sac_api_requestsends any HTTP request to the tenant, documented or internal
sac_replayreplays a recorded UI request, optionally with changed parameters

They bypass the guard rails of the regular tools (snapshots, validation, signal-colour check), so switch them on only in a sandbox tenant while you develop.

To teach the server something new, record it: sac_capture_start, do the action in the SAC UI (sac_browser_ui or by hand), sac_capture_stop, inspect with sac_capture_get, try the changed call with sac_replay, then turn the payload into a tool. For stories, sac_story_snapshot → change in the UI → sac_story_diff shows what SAC stores. See CONTRIBUTING.md. Releases: docs/RELEASE.md.

Acknowledgements

The public REST API tools (data import/export, users, transport, schedules …) started from JumenEngels/sap_analytics_cloud_mcp (MIT). The story, chart, theme, planning and model tools were added on top.

License

MIT. Provided "as is", without warranty of any kind — see the disclaimer above.

MIT, read

History

Latest

v0.3.0

Security 2, Features 14

Notes
Added
  • Stories in one call — sac_story_generate_dashboard builds a complete dashboard (header, filter bar, KPI row, charts, optional table) on a Datasphere model, canvas or responsive, with theme and story template; scale and decimals per KPI and chart, percentage measures unscaled, readable filter labels.
  • Dashboards on SAC models — the generator also builds dashboards (responsive, or canvas with a story template such as the Horizon template) on SAC planning models (native and Seamless) and analytic models (Version Actual on every widget, per-tile KPI filters such as Plan or the current year, story filter and filter bar, table scaled like the KPIs); sac_model_metadata and sac_models_list know these models.
  • Charts, declaratively — sac_story_chart / sac_story_chart_get: type, measures, dimensions, colour and pattern dimension, legend, hierarchy and level, member filters and dynamic date ranges; the chart query is kept consistent.
  • Calculations and colours — sac_story_calculation (restricted measures on several dimensions with Constant Selection, calculated measures with formulas), sac_story_set_colors (per member, measure and version).
  • KPI tiles as Numeric Point charts (sac_story_add_kpi) and duplicating widgets or whole cards with their own texts (sac_story_duplicate).
  • Layout and checks — sac_story_set_layout, sac_story_set_position, sac_story_set_text; sac_story_check_runtime (script and console errors) and sac_story_inspect (scrollbars, overhang and errors per widget at several widths, widget screenshot).
  • Story internals — sac_story_transform (patch by function in an isolated context, automatic snapshot), sac_story_restore, snapshots and structural diffs.
  • Themes and CSS — sac_theme_create / sac_theme_update with CSS validation against the SAC editor rules, rule-wise CSS updates and syncing of the stories' theme copies; story CSS and widget classes.
  • Planning — planning models (SAC and Seamless), sac_model_dimension_add, sac_model_hierarchy_set, sac_model_members_set, sac_model_data_reload (reload facts with a derived column, backup and totals check), plan values without a story (sac_plan_write / read / publish / revert), data actions and multi actions, planning stories including a forecast layout story.
  • Datasphere — sac_datasphere_search finds a model's space through the live connection; metadata and the dashboard generator locate the space themselves.
  • Data Analyzer — insights on Datasphere models.
  • Public REST APIs — data import/export, users and teams (SCIM), content transport, schedules, calendar, translation, audit.
  • Exploring — record and replay what the SAC UI sends (sac_capture_*, sac_replay), raw requests. The expert tools sac_browser_eval, sac_api_request and sac_replay are only loaded with expertTools / SAC_EXPERT_TOOLS=true.
  • Skills — sac-scripting and sac-css Agent Skills (see skills/).
Security
  • readOnly is enforced centrally for every tool; write tools need allowalteration: true.
  • No SAC passwords are stored; the SSO session lives in the server's own browser profile.
0downloads per week, npm
Weekly downloads for sac-workbench-mcp26 complete calendar weeks from 2026-05-04 to 2026-11-01; the latest total is 0.4 May – 10 May: 011 May – 17 May: 018 May – 24 May: 025 May – 31 May: 01 Jun – 7 Jun: 08 Jun – 14 Jun: 015 Jun – 21 Jun: 022 Jun – 28 Jun: 029 Jun – 5 Jul: 06 Jul – 12 Jul: 013 Jul – 19 Jul: 020 Jul – 26 Jul: 027 Jul – 2 Aug: 03 Aug – 9 Aug: 010 Aug – 16 Aug: 017 Aug – 23 Aug: 024 Aug – 30 Aug: 031 Aug – 6 Sept: 07 Sept – 13 Sept: 014 Sept – 20 Sept: 021 Sept – 27 Sept: 028 Sept – 4 Oct: 05 Oct – 11 Oct: 012 Oct – 18 Oct: 019 Oct – 25 Oct: 026 Oct – 1 Nov: 0

Others providing36

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. sap-bdc-mcp-serverMCP server managing Delta shares in SAP Business Data Cloud
  18. @mariodefe/sap-datasphere-mcpMCP server with forty-five tools across a Datasphere tenant
  19. midasol/sap-mcp-serverPython MCP server for SAP Gateway OData operations
  20. odata_mcp_goGo binary bridging any OData v2 or v4 service to MCP
  21. odata_mcpPython bridge generating MCP tools from OData v2 metadata
  22. sap-bdc-mcpMCP tooling for SAP Business Data Cloud discovery and contracts
  23. mcp-sap-datasphere-serverRead-only MCP server for exploring SAP Datasphere
  24. MCP Server for SAP BTP AdministrationSAP-hosted MCP endpoint for BTP account administration
  25. SAP LeanIX MCP ServerHosted MCP endpoint onto an SAP LeanIX instance
  26. SAP-samples/hana-cli-claude-pluginClaude Code plugin registering hana-cli's MCP server
  27. SAP-samples/hana-developer-cli-tool-exampleDeveloper-centric command line for SAP HANA
  28. cpi-mcp-serverGo MCP server over Cloud Integration packages and integration flows
Analytic modelling
  1. SAP Analytics CloudSaaS for business intelligence, planning and predictive analytics
  2. SAP DatasphereCloud data warehouse with spaces, views and analytic models
  3. bw-modeling-mcpMCP server for BW/4HANA modelling objects
  4. sap_analytics_cloud_mcpMCP server for the SAP Analytics Cloud REST API
  5. SAP Datasphere Plugin for ClaudeEighteen Datasphere skills over a bundled MCP server
  6. @mariodefe/sap-datasphere-mcpMCP server with forty-five tools across a Datasphere tenant
Loading a warehouse
  1. SAP Analytics CloudSaaS for business intelligence, planning and predictive analytics
  2. SAP DatasphereCloud data warehouse with spaces, views and analytic models
  3. bw-modeling-mcpMCP server for BW/4HANA modelling objects
  4. sap_analytics_cloud_mcpMCP server for the SAP Analytics Cloud REST API
  5. @mariodefe/sap-datasphere-mcpMCP server with forty-five tools across a Datasphere tenant
  6. dbt-sap-hana-clouddbt adapter targeting SAP HANA Cloud as its warehouse
Tool governance
  1. arc-mcp-hubHub on SAP BTP putting several arc-1 instances behind one login
  2. API ManagementAPI proxies with security and traffic policies and Developer Hub
  3. bw-modeling-mcpMCP server for BW/4HANA modelling objects
  4. SAP API Policy Evidence SkillSkill assessing API usage against the SAP API Policy

Details

Sources4
GitHub APIdiscovered herechecked
npm registry, sac-workbench-mcpversion, releases, installschecked
github.com/git+https://github.com/RafaelSachsNL/sac-workbench-mcp.gittree, 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
runtimesnode
deploymentlocal
latestv0.3.0
first release
releases and cadence2
discovered viaGitHub API
first seen in the atlas
ecosystem and domainbtp, ai-and-agents
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:sac-workbench-mcp
JSON
/artifacts/sac-workbench-mcp.json
MCP
Connecting an agent