API VEGA

@sap-ux/fiori-mcp-server

Этот пакет включает сервер Model Context Protocol (MCP) для интеграции с AI‑ассистентами по кодированию.

Сервер помогает моделям ИИ создавать или модифицировать SAP Fiori-приложения на основе подсказок, например:

Пожалуйста, добавь приложение SAP Fiori elements list report в мой CAP-проект

Создай новый CAP-проект и SAP Fiori app на основе my_picture.png

Сгенерируй новое приложение SAP Fiori elements list report для Odata-сервиса https://hostname:port/sap/opu/odata4/sap/my_v4_service?sap-client=000.

ℹ️Этот запрос требует сохранённого соединения с SAP-системой с использованием расширения Connection Manager for SAP Systems.

Добавить FCL в приложение SAP Fiori elements

Включить начальную загрузку для fiori-приложения

Для наилучшего опыта рекомендуется использовать этот сервер вместе с @cap-js/mcp-server и @ui5/mcp-server.

Настройка

Сервер использует транспорт stdio и запускается через npx — глобальная установка не требуется. Выберите раздел для своего клиента MCP ниже.

Claude Code

Опция A — CLI (рекомендуется):

claude mcp add fiori-mcp -- npx --yes @sap-ux/fiori-mcp-server@latest fiori-mcp

Опция B — поместить .mcp.json файл в корень проекта:

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"]
    }
  }
}

Cline

Откройте настройки расширения Cline и добавьте сервер в раздел MCP Servers:

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"]
    }
  }
}

Cursor

Редактируйте (или создайте) файл конфигурации MCP для вашей области:

  • Глобально: ~/.cursor/mcp.json

  • Проект: .cursor/mcp.json в корне проекта

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"]
    }
  }
}

Windsurf

Редактируйте ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"]
    }
  }
}

Другие клиенты

Для любого другого MCP-клиента используйте следующую конфигурацию на основе npx:

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"]
    }
  }
}

Глобальная установка npm (любого клиента)

Если вы предпочитаете НЕ использовать npx, сначала установите пакет глобально:

npm install -g @sap-ux/fiori-mcp-server

Затем используйте fiori-mcp в качестве команды (аргументы не требуются):

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "fiori-mcp"
    }
  }
}

Правила

Ниже приведены правила, которые помогают направлять модель ИИ на корректное использование сервера. Добавляйте их в ваш системный промпт или файл правил:

  • Claude Code: AGENTS.md или CLAUDE.md в корне проекта

  • Cline: Custom Instructions в настройках расширения Cline

  • Cursor: .cursorrules в корне проекта

  • Windsurf: Глобальные правила или проектный .windsurfrules

## Rules for creation or modification of SAP Fiori elements apps

- When asked to create an SAP Fiori elements app check whether the user input can be interpreted as an application organized into one or more pages containing table data or forms, these can be translated into a SAP Fiori elements application, else ask the user for suitable input.
- The application typically starts with a List Report page showing the data of the base entity of the application in a table. Details of a specific table row are shown in the ObjectPage. This first Object Page is therefore based on the base entity of the application.
- An Object Page can contain one or more table sections based on to-many associations of its entity type. The details of a table section row can be shown in an another Object Page based on the associations target entity.
- The data model must be suitable for usage in a SAP Fiori elements frontend application. So there must be one main entity и one or more navigation properties to related entities.
- Each property of an entity must have a proper datatype.
- For all entities in the data model provide primary keys of type UUID.
- When creating sample data in CSV files, all primary keys and foreign keys MUST be in UUID format (e.g., `550e8400-e29b-41d4-a716-446655440001`).
- When generating or modifying the SAP Fiori elements application on top of the CAP service use the Fiori MCP server if available.
- When attempting to modify the SAP Fiori elements application like adding columns you must not use the screen personalization but instead modify the code of the project, before this first check whether an MCP server provides a suitable function.
- When previewing the SAP Fiori elements application use the most specific `npm run watch-*` script for the app in the `package.json`.

Доступные инструменты

search_docs

Поиск по SAP Fiori elements, Annotations, UI5, OPA5 Guides, документации SAP Fiori tools по заданному запросу.

Примечание: результаты основаны на самой последней индексированной версии документации UI5

First-use download: search_docs uses a local text-embedding model (all-MiniLM-L6-v2, ~86 MB) for semantic search. The model is downloaded from HuggingFace Hub on first use and cached locally (location follows the HF_HOME / TRANSFORMERS_CACHE environment variables, defaulting to ~/.cache/huggingface/hub). Subsequent starts load the model from the cache with no network access required.

list_fiori_apps

Сканирует указанную директорию, чтобы найти существующие SAP Fiori-приложения, которые можно модифицировать.

list_sap_systems

Список всех SAP-систем, сохранённых в окружении пользователя (например, система SAP Fiori tools). Используйте этот список, когда пользователь указывает SAP-систему по имени перед вызовом download_odata_service_metadata или генерацией Fiori-приложения.

download_odata_service_metadata

Скачивает EDMX-метаданные конкретного OData-сервиса из SAP-системы и сохраняет их как metadata.xml. Используйте это перед вызовом generate_fiori_app_odata, когда пользователь предоставляет ссылку на SAP-систему или сервис.

generate_fiori_app_odata

Генерирует новое SAP Fiori UI-приложение для проектов OData (non-CAP), например сервисы OData на базе ABAP RESTful Application Programming Model (RAP).

generate_fiori_app_cap

Генерирует новое SAP Fiori UI-приложение внутри существующего проекта SAP Cloud Application Programming Model (CAP).

list_functionality (Step 1 of 3)

Получает список поддерживаемых функций modification для существующего SAP Fiori-приложения. Требуется валидный абсолютный путь к приложению.

Поддерживаемые модификации:

  • Добавление и удаление страниц в приложении

  • Добавление и изменение расширений контроллера

  • Изменение свойств manifest.json в зависимости от приложения, например, добавление макета на основе гибкости программной модели или включение начальной загрузки

get_functionality_details (Step 2 of 3)

Получает необходимые параметры и подробную информацию для конкретной функции модификации существующего SAP Fiori-приложения.

execute_functionality (Step 3 of 3)

Выполняет конкретную функциональность для модификации существующего SAP Fiori-приложения с заданными параметрами.

Логирование

По умолчанию логирование включено на уровне error. Чтобы изменить уровень логирования или полностью отключить логирование, можно использовать свойство env в вашей конфигурации.

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes","@sap-ux/fiori-mcp-server@latest", "fiori-mcp"],
      "env": {
        "LOG_LEVEL": "debug"
      }
    }
  }
}

Следующие уровни логирования поддерживаются: off, error, warn, info, debug, и verbose.

Логи сохраняются в файловой системе по пути ~/.fioritools/fiori-mcp-server.log

Работа с самоподписанными SSL-сертификатами

Если нужно, чтобы MCP server подключался к OData-серверу с использованием самоподписанного SSL-сертификата, можно использовать один из следующих методов.

Это полезно при ошибках типа: unable to get local issuer certificate

Вариант 1: Добавить пользовательский CA-сертификат (рекомендуется)

Установите переменную окружения NODE_EXTRA_CA_CERTS в путь к вашему CA-сертификату. Node.js поддерживает несколько расширений файлов (.pem, .crt, .cer, .cert).

Пример конфигурации:

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"],
      "env": {
        "NODE_EXTRA_CA_CERTS": "/path/to/your/certificate.crt"
      }
    }
  }
}

Windows пример:

"env": {
  "NODE_EXTRA_CA_CERTS": "C:\\temp\\certs\\CustomCA.crt"
}

macOS/Linux пример:

"env": {
  "NODE_EXTRA_CA_CERTS": "/Users/username/certs/Custom_CA.crt"
}

Вариант 2: Обход проверки SSL (Не рекомендуется)

⚠️ Предупреждение по безопасности: установка NODE_TLS_REJECT_UNAUTHORIZED=0 отключает всю валидацию SSL‑сертификатов и представляет собой серьёзный риск для безопасности. Используйте это только в не-продакшн окружениях.

{
  "mcpServers": {
    "fiori-mcp": {
      "type": "stdio",
      "timeout": 600,
      "command": "npx",
      "args": ["--yes", "@sap-ux/fiori-mcp-server@latest", "fiori-mcp"],
      "env": {
        "NODE_TLS_REJECT_UNAUTHORIZED": "0"
      }
    }
  }
}

Дополнительные ресурсы

Телеметрия

Вы можете включать и отключать сбор аналитики. По умолчанию используются данные, не идентифицируемые лично, чтобы понять, как вы используете продукт, и улучшить Fiori MCP Server. Если вы хотите отказаться от телеметрии, существует два способа её отключения.

Способ 1: Конфигурационный файл

Создайте или измените файл ~/.fioritools/telemetrysettings.json:

{
  "telemetrysettings": {
    "telemetrySetting": {
      "enableTelemetry": false
    }
  }
}

Установите enableTelemetry в значение false, чтобы отключить сбор телеметрии.

Способ 2: Переменная окружения

Установите переменную окружения SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY в true:

export SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY=true

Установка этой переменной окружения отключит телеметрий‑клиент.

Кодекс поведения

Все участники данного совместного проекта приветствуются, пока соблюдается наш Кодекс поведения.

Лицензия

Пожалуйста, ознакомьтесь с нашим LICENSE для информации об авторских правах и лицензиях. Подробная информация, включая сторонние компоненты и их лицензии/авторские права, доступна через инструмент REUSE.