abap2UI5 MCP Server

abap2UI5 MCP Server

Provides AI coding agents a full abap2UI5 development loop—writing ABAP classes, validating views, deploying, and running apps headless with screenshots—all locally without an SAP system.

Category
访问服务器

README

ai-mcp

The MCP server for abap2UI5 — gives any AI coding agent (Claude Code, Cursor, VS Code Copilot, or any MCP client) the full abap2UI5 development loop, without an SAP system:

capabilities -> validate_view -> deploy_app -> build_backend -> run_app
 (what can        (static gates:     (write ABAP,    (transpile       (boot headless,
  I express?)      props + render)    lint)           to Node)         errors + SCREENSHOT)

The agent writes an ABAP class, validates the view in seconds, deploys it, boots it in a real browser and looks at the screenshot — then iterates. Everything runs locally on infrastructure that already guards the abap2UI5 ecosystem in CI: the abaplint transpiler + open-abap runtime, the framework's express shim, the ai-demokit build and boot gates, and the abap2UI5-linter validation core.

Setup

The server orchestrates sibling checkouts (override locations with env vars):

git clone https://github.com/abap2UI5/abap2UI5   # A2UI5_HOME
git clone https://github.com/abap2UI5/ai-demokit # AI_DEMOKIT_HOME
git clone https://github.com/abap2UI5/linter     # AI_VIEW_CHECK_HOME (required for validate_view)
git clone https://github.com/abap2UI5/ai-mcp
cd abap2UI5 && npm ci && cd ../ai-demokit && npm ci && cd ../linter && npm ci && cd ../ai-mcp && npm ci
npx playwright install chromium

Register in your MCP client, e.g. Claude Code:

claude mcp add abap2ui5 -- node /path/to/ai-mcp/server.mjs

Tools

Tool What it does
capabilities Query the verified capability map (ai-demokit CAPABILITIES.md, parsed live — no drift). Ask before assuming a UI5 feature is impossible: { query: "tree binding" }, { status: "not-expressible" }
generation_rules The rulebook for writing an app with the generic view builder
scope_of In/out-of-scope verdict for UI5 controls (since <= 1.71, not deprecated)
validate_view Seconds, not minutes: static property gate + headless render via abap2UI5-linter, from ABAP source or raw XML — run this after writing, before deploying. Findings come with a severity, a message and the line/column in the source you passed in
deploy_app Write <class>.clas.abap + abapGit sidecar into the gitignored sandbox src/zz_dev/ (in the ai-demokit checkout), then abaplint it
build_backend Rebuild the transpiled Node backend. mode: auto is incremental after the first full build (~1-2 min per iteration); mode: full runs the complete e2e-build
run_app Boot any app class headless (?app_start=<class>), return boot status, real page errors (benign UI5 noise filtered) and a full-page screenshot as an image
backend status / start / stop / restart of the local express backend
remove_app Delete a dev app from the sandbox (or list the deployed ones)

run_app works for new dev apps and equally for the existing ai-demokit ports and z2ui5_cl_ai_app_overview — useful as a reference: "run the closest existing port, look at it, then build mine".

The intended agent loop

  1. capabilities { query: ... } — check the feature is expressible (and how) before writing a line of ABAP.
  2. generation_rules — once per session.
  3. Write the class, validate_view — fix findings in seconds.
  4. deploy_app — abaplint against the full framework context.
  5. build_backend — incremental after the first full build.
  6. run_app — read the errors, look at the screenshot. Edit, validate, deploy, build, run again.

Notes

  • Dev sandbox: deployed apps land in the ai-demokit checkout's gitignored src/zz_dev/ — nothing an agent deploys can leak into a commit. Promote a finished app by moving it into a real package deliberately.
  • Port: the backend listens on 3000 (A2UI5_MCP_PORT overrides).
  • UI5 sources: modules are served from the ai-demokit checkout's @openui5 packages, so booting needs no network. The built theme CSS is not in those packages — with network access it loads from the CDN (styled screenshots); without, apps render unstyled but structurally complete. A2UI5_MCP_OFFLINE=1 forces the hermetic behaviour.
  • Chromium: uses the Playwright-managed browser; if absent, falls back to a system chromium (A2UI5_MCP_CHROMIUM overrides the executable path).
  • Real system deployment stays what it is today: abapGit. This server is the inner dev loop; a run_app_system backend (launch URL + auth proxy, as solved in the VS Code extension) is the planned second stage.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选