SAP Fiori MCP Server

Generate and modify SAP Fiori elements apps for CAP and OData projects from a coding assistant

Official · SAP TypeScript Local · stdio Developer tools

79 popularity score ★ 162 ↓ 118k/wk

Connect your client

Local (npm)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

Claude CodeTerminal
claude mcp add sap-fiori -- npx --yes '@sap-ux/fiori-mcp-server@<VERSION>' fiori-mcp
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "sap-fiori": {
      "command": "npx",
      "args": [
        "--yes",
        "@sap-ux/fiori-mcp-server@<VERSION>",
        "fiori-mcp"
      ]
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "sap-fiori": {
      "command": "npx",
      "args": [
        "--yes",
        "@sap-ux/fiori-mcp-server@<VERSION>",
        "fiori-mcp"
      ]
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "sap-fiori": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "--yes",
        "@sap-ux/fiori-mcp-server@<VERSION>",
        "fiori-mcp"
      ]
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.sap-fiori]
command = "npx"
args = ["--yes", "@sap-ux/fiori-mcp-server@<VERSION>", "fiori-mcp"]
Gemini CLITerminal
gemini mcp add --scope user sap-fiori npx -- --yes '@sap-ux/fiori-mcp-server@<VERSION>' fiori-mcp

Settings 5

LOG_LEVEL Optional: Log level: off, error (default), warn, info, debug or verbose; logs go to ~/.fioritools/fiori-mcp-server.log.
SAP_FIORI_MCP_ADP_TOOLS Optional: Set to true to expose the six adaptation-project tools.
NODE_EXTRA_CA_CERTS Optional: Path to a CA certificate for SAP systems with self-signed TLS certificates.
SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY Optional: Set to true to turn off usage telemetry, which is on by default.
HF_HOME Optional: Where the search embedding model is cached (default ~/.cache/huggingface/hub).

What it does

SAP's own MCP server for building SAP Fiori user interfaces. It runs locally over stdio as the `fiori-mcp` program in the @sap-ux/fiori-mcp-server package, which is part of SAP's open-ux-tools monorepo. A coding assistant can use it to create a Fiori elements app inside an existing SAP Cloud Application Programming Model (CAP) project, or to create one against an OData service (for example an ABAP RAP service) on an SAP system.

To change an existing app, the assistant follows three steps. It lists the changes the server supports for that app path, fetches the parameters one change needs, then runs it. Supported changes include adding or deleting pages, adding controller extensions and editing manifest.json settings such as the layout. Other tools find Fiori apps under a folder, list the SAP systems saved on the machine, download an OData service's EDMX metadata into metadata.xml, and do semantic search over the Fiori elements, annotations, UI5, OPA5 and SAP Fiori tools docs.

The default build exposes 9 tools. The tool registry in the source (src/tools/index.ts, version 1.15.11) adds 6 more for SAPUI5 adaptation projects when SAP_FIORI_MCP_ADP_TOOLS is set to true. The README does not mention these: they generate an adaptation project, start the adaptation editor, write controller extensions, drive Runtime Authoring in the editor page, read the project's OData metadata and look up UI5 control API docs. The changelog dates them to 1.15.0.

The README suggests pinning a version in the npx arguments rather than using @latest, and it ships a set of rules to paste into the assistant's own rules file.

What it needs

RuntimeNode.js 22+

Node.js 22 or later (the package's engines field says >=22.x). npx is used to fetch and start it. You need a CAP project or an SAP system with an OData service to work on. Prompts that target an SAP system need a connection saved first, for example with the Connection Manager for SAP Systems extension or the SAP Fiori tools system store. The first doc search downloads an embedding model of about 86 MB from HuggingFace Hub.

Limits

It changes Fiori elements apps only through the change types that list_functionality reports for each app. search_docs searches the most recent indexed UI5 documentation, not the UI5 version your app uses. It cannot find an OData service by name or technical id: download_odata_service_metadata needs a service path, and the tool text points to a separate Service Center MCP server for lookups by name. The adaptation-project tools stay hidden unless SAP_FIORI_MCP_ADP_TOOLS=true is set. For self-signed SAP certificates the docs advise NODE_EXTRA_CA_CERTS, and warn that NODE_TLS_REJECT_UNAUTHORIZED=0 turns off all TLS checks and suit non-production use only.

Who it suits

Developers who build SAP Fiori elements front ends on CAP or ABAP RAP services and want an assistant to scaffold and adjust apps with SAP's own generators rather than hand-written code. It runs on your machine and writes into your project folders, so it fits local IDE workflows in Claude Code, Cline, Cursor or Windsurf. It is little use outside the SAP UI5/Fiori stack. If you only need UI5 docs search, a lighter docs server is enough; this one brings the full generator set and a local embedding model.

Tools 15

search_docs
Semantic search across Fiori elements, annotations, UI5, OPA5 and Fiori tools docs
list_fiori_apps
Finds existing Fiori apps under a given folder
list_sap_systems
Lists the SAP system connections saved on the machine
download_odata_service_metadata
Fetches an OData service's EDMX from an SAP system and saves it as metadata.xml
generate_fiori_app_odata
Creates a Fiori app for a non-CAP OData service such as ABAP RAP
generate_fiori_app_cap
Creates a Fiori app inside an existing CAP project
list_functionality
Step 1: lists the changes available for an existing app
get_functionality_details
Step 2: returns the parameters one change needs
execute_functionality
Step 3: applies the chosen change to the app's files
generate_adaptation_project
Creates an SAPUI5 adaptation project from an SAP system app (only with SAP_FIORI_MCP_ADP_TOOLS=true)
open_adaptation_editor
Starts the adaptation editor server in an adaptation project (only with SAP_FIORI_MCP_ADP_TOOLS=true)
adp_controller_extension
Writes controller extensions and fragments into an adaptation project (only with SAP_FIORI_MCP_ADP_TOOLS=true)
run_rta_workflow_step
Drives Runtime Authoring in the editor page one step at a time (only with SAP_FIORI_MCP_ADP_TOOLS=true)
read_odata_metadata_adp
Reads OData metadata for an adaptation project (only with SAP_FIORI_MCP_ADP_TOOLS=true)
lookup_ui5_documentation
Looks up a UI5 control's properties, aggregations or events (only with SAP_FIORI_MCP_ADP_TOOLS=true)

Similar servers