Person

Marian Zeis

Provides 15
Agent access to your codeCAPABAPUI5BTPAgent access to your codecapabilityLetting a coding agent read the project or the system you actually have, reach its model, its objects and its checks, and act on it. In file-based environments that works out of the box; complex systems need dedicated access capabilities. Whatever the environment, the agent also needs project- and framework-specific context, so it understands the thing in front of it rather than guessing from what it remembers of its training data. The transport is incidental: an MCP server, a language server or a CLI answer the same question, and what differs between them is how much of the real thing the agent can see. Distinct from [MCP servers](capability:mcp-servers), which is a protocol adapter on your own running service, and from [agent guidance](capability:agent-guidance), which is knowledge handed over as files rather than read from the thing itself.Agent evalsCAPBTPABAPAgent evalscapabilityKnowing whether an AI feature still behaves after a model, prompt or schema change. Regression testing for non-deterministic output, against fixtures that reflect real business data.Agent guidanceCAPUI5BTPABAPAgent guidancecapabilityPackaged knowledge you hand a coding agent so it gets a framework right unprompted — skills, rule files, instruction packs. Distinct from agent tooling, which is about building agentic features into your application, and from [agent access to your code](capability:agent-code-access), where the agent reads the real project instead of being handed a file about it.Architecture diagramsBTPArchitecture diagramscapabilityDrawing the architecture and components of a solution so another person can understand their responsibilities and connections. Shared notation makes diagrams readable across teams.AuthenticationCAPBTPABAPUI5AuthenticationcapabilityEstablishing who is calling: validating credentials or tokens, resolving the user, and making that identity available to the application. [Authorization](capability:authorization) decides what that identity may do; [identity provisioning](capability:identity-provisioning) manages its lifecycle across systems.Browsing table dataABAPBrowsing table datacapabilityLooking at what a system holds while developing or supporting it: the rows behind a key, the reference data a field points at, the tables that carry data for one object. Editing configuration records through maintenance screens is a different job, even where the same transaction does both.Build and dev-server toolingUI5Build and dev-server toolingcapabilityServing an app locally and building it for deployment — proxying a backend, transpiling, bundling, and shaping the result for whatever will host it.Custom controls and librariesUI5Custom controls and librariescapabilityExtending the set of controls an app is built from: a control of its own, a wrapper around a third-party widget, or an icon font registered with the framework, packaged so another app can reuse it. Distinct from [Web Components interop](capability:ui5-web-components), which brings in standard custom elements, and from [generators](capability:generators), which scaffold a control project rather than being one.DocumentationCAPUI5BTPABAPDocumentationcapabilityFinding the answer in what has already been written, and writing it where it has not — first-party documentation made searchable by something other than a person scrolling it, including by an agent, and a document of custom code produced from the code itself.Editor supportCAPABAPBTPUI5Editor supportcapabilityWorking in source code with the editor helping rather than treating it as text — completion, go-to-definition, inline errors, refactoring and preview.Importing and exporting table dataABAPUI5CAPImporting and exporting table datacapabilityGetting a file somebody supplies, a spreadsheet, a CSV or a JSON dump, into tables with its columns mapped and its values checked, and getting table content back out as a file. Data shipped with an application for development and demonstration is [seed data](capability:seed-data).RFC connectivityCAPBTPABAPRFC connectivitycapabilityCalling ABAP function modules from outside the system over RFC, with destinations and connection pooling handled rather than hand-wired on the calling side.Serve your application over MCPCAPBTPABAPServe your application over MCPcapabilityExposing selected application data and business operations to an AI agent through the Model Context Protocol. An application may also integrate remote services through [service integration](capability:service-integration), connecting its exposed contract with [agent access to your systems](capability:agent-systems-access). Development assistance belongs to [agent access to your code](capability:agent-code-access).Tool governanceCAPABAPBTPTool 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.UI5 testingUI5UI5 testingcapabilityProving a UI still works — unit tests over controllers and formatters, integration tests that drive real controls, and end-to-end runs against a served app.
Demonstrates 13
Agent access to your codeCAPABAPUI5BTPAgent access to your codecapabilityLetting a coding agent read the project or the system you actually have, reach its model, its objects and its checks, and act on it. In file-based environments that works out of the box; complex systems need dedicated access capabilities. Whatever the environment, the agent also needs project- and framework-specific context, so it understands the thing in front of it rather than guessing from what it remembers of its training data. The transport is incidental: an MCP server, a language server or a CLI answer the same question, and what differs between them is how much of the real thing the agent can see. Distinct from [MCP servers](capability:mcp-servers), which is a protocol adapter on your own running service, and from [agent guidance](capability:agent-guidance), which is knowledge handed over as files rather than read from the thing itself.Agent toolingCAPBTPAgent toolingcapabilityBuilding an agent into your own application — the tools it may call, the state it keeps between turns, and the framework it runs in. Distinct from MCP servers, which expose an application to somebody else's agent, and from agent guidance, which is knowledge handed to a coding agent.Build and dev-server toolingUI5Build and dev-server toolingcapabilityServing an app locally and building it for deployment — proxying a backend, transpiling, bundling, and shaping the result for whatever will host it.Data bindingUI5Data bindingcapabilityKeeping a control and a model in step in both directions, including the formatting, type conversion and validation that sit between the two.DocumentationCAPUI5BTPABAPDocumentationcapabilityFinding the answer in what has already been written, and writing it where it has not — first-party documentation made searchable by something other than a person scrolling it, including by an agent, and a document of custom code produced from the code itself.Fiori annotationsCAPUI5ABAPFiori annotationscapabilityDescribing a service so a Fiori client can render it without hand-written UI code — titles, value helps, hierarchies and visibility expressed as model annotations rather than screen logic.Generative UIUI5CAPGenerative UIcapabilityPutting an interface inside an agent conversation: a tool result or an agent's reply shown as controls a person can work in, where text would have been. Two things go by the name. A prebuilt web UI that an MCP tool points to and the host renders in a sandboxed iframe, which the MCP Apps extension specifies, is selected by the model and not generated by it; a user interface rendered from a stream of JSON objects the agent sends, which the A2UI specification describes, is. Generating an application's source at design time is [generators](capability:generators).LLM integrationCAPUI5BTPABAPLLM integrationcapabilityCalling a language model from application code with the tenant, destination and credential handling already solved instead using an SDK call with a hand-rolled key.Local developmentCAPABAPLocal developmentcapabilityRunning the whole stack on a laptop against real bindings — the service, the UI and the routing in front of it — without deploying to see a change.ODataCAPABAPODatacapabilityExposing data and operations through OData, including the service model, metadata and protocol versions clients require. Version differences affect which clients can consume a service and which query features they can use.Reference appsCAPABAPReference appscapabilityA whole application to read rather than a snippet to copy — somewhere to see how the pieces sit together once there are more than three of them.UI5 testingUI5UI5 testingcapabilityProving a UI still works — unit tests over controllers and formatters, integration tests that drive real controls, and end-to-end runs against a served app.WebSocketCAPWebSocketcapabilityPushing to a browser that already has the page open, rather than making it ask again — the half of a UI that polling imitates badly.
Contributes to 9
Agent access to your systemsBTPABAPCAPAgent 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 modellingBTPABAPAnalytic 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.GeneratorsCAPABAPUI5GeneratorscapabilityGetting from nothing to a project that runs, and from a project that runs to one that has the piece you just decided you need. Two different moments: the first is a one-time decision about layout, the second recurs for the life of the project.Integrated frontend dev serverCAPUI5Integrated frontend dev servercapabilityServing a frontend and its backend services together during development, so they can be reached through one local origin. Serving prebuilt files and integrating a frontend toolchain that assembles resources on demand are different requirements.LintingCAPUI5LintingcapabilityCatching in the editor what would otherwise be caught at deploy time, or not at all — problems in source code and models and in the project's configuration, found by rules rather than by review.Loading a warehouseBTPABAPLoading 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.LocalizationCAPABAPBTPUI5LocalizationcapabilityServing labels, messages and translated content per user locale, including translatable model elements and per-tenant text overrides.TestingCAPBTPSAP Digital ManufacturingTestingcapabilityProving the service still does what it did — against the model and the handlers, without a deployed system and without a database somebody has to keep clean.TypeScript supportUI5TypeScript supportcapabilityWriting apps and libraries in TypeScript — the type definitions, the module syntax the loader expects, and the build step that gets from one to the other.

Entries86

Group by86 of 86 entries
EntrySignals
Maintains23
@arc-mcp/adt-lsv0.7.0
Functional boundary

TypeScript SDK over SAP's headless adt-ls language server

@arc-mcp/xsuaa-authv1.2.0
Functional boundary

XSUAA authentication stack for an MCP server on SAP BTP

@marianfoo/sap-mcp-authv0.1.3
Functional boundary

Browser login and session module for SAP MCP servers

@marianfoo/ui5-cc-dayjs
Quiet

UI5 custom control formatting dates with Day.js

arc-1v1.9.0
none

MCP server over the ADT REST API for ABAP objects

arc-1-lspv0.0.1
Functional boundary

Edition of ARC-1 that runs ADT calls through adt-ls

arc1-adt-abap-mcp-ext
Functional boundary

Eclipse add-on enabling the ADT MCP server with read-only tools

cds-spreadsheetimporter-pluginv1.1.0
none

Spreadsheet upload into a CDS entity, parsed on the server

mcp-sap-docs
Functional boundary

MCP server searching seventeen SAP documentation repositories

open-rfcv0.2.5
Functional boundary

SDK-free TypeScript client for SAP synchronous RFC on Node.js

SAP API Policy Evidence Skill
Functional boundary

Skill assessing API usage against the SAP API Policy

sap-api-hub-mcpv0.1.5
Functional boundary

Read-only MCP server over the SAP Business Accelerator Hub

sap-architecture
Functional boundary

Claude Code plugin and skill drawing validated BTP diagrams

sap-note-search-mcpv0.3.10
Functional boundary

MCP server searching and fetching SAP Notes and KBAs

sap-roadmap-mcpv0.1.4
Functional boundary

MCP server over SAP Road Map Explorer

ui5-cc-pdfviewerv0.1.1
Quiet+1

UI5 custom control rendering a PDF from a base64 data URI

ui5-cc-spreadsheetimporterv2.4.0
none

UI5 component adding a spreadsheet upload dialog to Fiori apps

ui5-lib-diff
No license+1

Hosted app listing changes between SAPUI5 or OpenUI5 versions

ui5-middleware-odata-recorderv0.0.13
Functional boundary

UI5 middleware recording OData traffic as mock server datasets

ui5-plugin-loaderv0.2.0
none

UI5 Tooling v4 extension that registers other extensions

ui5-task-btp-manifestv0.2.2
none

UI5 Tooling task writing the service name into the importer manifest

Werkbank
none

Local desktop workspace for AI conversations with SAP connectors

ztoad
none

Open SQL editor for ABAP with ALV output

Maintains: samples, sketches and references12
abap-docs
Functional boundary

ABAP Keyword Documentation as Markdown with indexes

btp-cf-mcp
none

MCP server for SAP BTP and Cloud Foundry acting as the logged-in user

cap-materialbom-graph
No license

CAP sample drawing a material BOM as a UI5 network graph

custom-llm-client
No license

Local chat client for SAP questions with a CAP LangGraph backend

fiori-table-maintenance
No license

CAP and UI5 app for in-place table maintenance with SmartTable

LLM-Benchmark-ABAP-Code-Generation
none

Benchmark of LLM ABAP code generation against a real SAP system

local-llm-client-for-sap-consultants-librechat
none

LibreChat fork with four SAP MCP servers preconfigured

ui5-call-action
No license

UI5 apps calling CAP OData actions and functions from custom code

ui5-errorhandler-sample
No license

Two UI5 apps consuming one npm package in two ways

ui5-fe-mockserver-tutorial
No license

Ten exercises on the Fiori elements mock server middleware

UI5con_2026_MCPApps
No license

Five MCP servers whose tools return a prebuilt UI

ui5con24-dev-env
No license

pnpm workspace running CAP, a local launchpad and two UI5 apps

Contributes to51
@gavdi/cap-mcpv1.8.0
none

Generates an MCP server from annotated CDS entities and actions

@sap-ux/fe-mockserver-plugin-cdsv1.2.6
none

Fiori Elements mock server plugin taking a CDS file as metadata

@ui5/cliv4.0.71
none

UI5 Tooling command line for project setup, dev server and build

@ui5/linterv1.23.7
none

Static analysis tool for UI5 projects

ARC-1 Skills
Functional boundary

Twenty-two agent skills shipped with arc-1

arc-1-extension-sample
No license+1

Sample arc-1 extension in TypeScript with ten custom tools

arc-mcp-hub
Archived+1

Hub on SAP BTP putting several arc-1 instances behind one login

arc1-abap-bridge
Functional boundary

VS Code bridge between arc-1 and ADT for VS Code

bookshop-demo
No license

Simple CDS bookshop model used across CAP explanations

btp-sap-odata-to-mcp-serverv1.0.1
Functional boundary

Exposes S/4HANA or ECC OData services as MCP tools

bw-modeling-mcpv1.8.1
Functional boundary

MCP server for BW/4HANA modelling objects

calmcp
none

MCP server with read tools over the SAP Cloud ALM APIs

capire/docs
none

Sources of capire, the CAP documentation

cds-launchpad-pluginv2.3.0
none

Sandbox launchpad for all SAPUI5 apps in a CAP workspace

cds-plugin-ui5v0.17.4
Functional boundary

UI5 CLI middlewares running inside the CDS server

create-wdi5v3.0.0
none

npm initializer adding wdi5 testing to an existing UI5 app

generator-ui5-addv1.0.2
Quiet

Yeoman generator for UI5 tooling-extension projects

generator-ui5-project
Functional boundary

Yeoman generator for UI5 projects holding several applications

generator-ui5-ts-app
none

Easy-UI5 generator scaffolding a TypeScript UI5 application

generator-ui5-ts-app-fcl
none

Generator for a TypeScript UI5 FlexibleColumnLayout app on OData

generator-ui5-ts-library
none

Easy-UI5 generator scaffolding a TypeScript UI5 library

LISA
Functional boundary

MCP server for reading and writing ABAP object translations

SAP-samples/cloud-cap-hana-swapi
none

CAP data model of many-to-many relationships on a Star Wars dataset

spreadsheetimporter/packed-deployment-abap
none

UI5 app template deploying the Spreadsheet Importer once to ABAP

spreadsheetimporter/sample-adaptation-banks
No license

Adaptation project adding spreadsheet upload to Manage Banks

spreadsheetimporter/sample-adaptation-banks-update
No license

Manage Banks adaptation updating existing records from a spreadsheet

spreadsheetimporter/sample-full-btp
none

CAP Risks and Mitigations project with a Spreadsheet Upload button

spreadsheetimporter/sample-odata-api-upload
none

UI5 app opening the Spreadsheet Importer on on-premise OData services

spreadsheetimporter/sample-standalone
No license

UI5 app opening the Spreadsheet Importer on its own

ui5-app
none

UI5 app carrying 18 UI5 CLI extensions in one configuration

ui5-cc-mdv0.0.7
Quiet

UI5 custom control rendering Markdown to HTML

ui5-middleware-iasyncv3.0.0-alpha.10
none

UI5 middleware syncing interactions across browsers over websocket

ui5-middleware-indexv3.1.4
none

UI5 middleware serving a chosen welcome page at the root path

ui5-middleware-livereloadv3.4.0
none

Live reload middleware for the UI5 dev server

ui5-middleware-oneloginv3.9.1
none

UI5 middleware logging in with Playwright and reusing the session

ui5-middleware-serveframeworkv3.8.2
none

UI5 middleware serving a locally built UI5 framework

ui5-middleware-servestaticv3.5.1
none

UI5 middleware serving static resources from a path or npm package

ui5-middleware-simpleproxyv3.9.0
none

Dev-server middleware proxying requests to a backend system

ui5-middleware-ui5v3.5.2
none

UI5 middleware including one UI5 application in another

ui5-middleware-webjarsv3.1.4
none

UI5 middleware serving static resources from JAR files (WebJars)

ui5-task-flatten-libraryv3.1.4
none

UI5 builder task flattening library output for SAP NetWeaver

ui5-task-i18ncheckv3.3.1
none

UI5 builder task checking XML views for missing i18n texts

ui5-task-minify-xmlv3.2.0
none

UI5 builder task minifying XML views and fragments

ui5-task-pwa-enablerv3.4.1
none

UI5 builder task turning a UI5 app into a progressive web app

ui5-task-transpilev0.5.1
none

UI5 Tooling task transpiling TypeScript and ES modules

ui5-task-zipperv3.7.0
none

Build task packaging the UI5 build result as a zip archive

ui5-test-runnerv6.0.1
none

Command line running UI5 QUnit and OPA tests in parallel

ui5-tooling-modulesv3.41.2
none

UI5 tooling extensions loading npm packages as UI5 modules

ui5-tsapp
none

TypeScript UI5 app consuming custom UI5 CLI extensions together

vibing-steampunk
Functional boundary

ADT-to-MCP bridge in Go reaching past what ADT exposes

wdio-ui5-servicev3.0.12
Functional boundary

End-to-end testing for UI5 on WebdriverIO with UI5 control selectors

Writing and topics26

25 of 25 pieces
Piece, what it offersStill applies
AI-assisted SAP development with MCP
YouTube — SAP Developers playlists, Marian Zeis
nothing recorded
Introducing open-rfc: Calling SAP RFC from Node.js Without the SDK
blog.zeis.de — Marian Zeis, Marian ZeisThe reasoningRunnable code
nothing recorded
ARC-1 1.0: One Deployment, Multiple SAP Systems
blog.zeis.de — Marian Zeis, Marian Zeis, part 10 of 10The reasoning
nothing recorded
UI5 Has Entered the Chat: Building Interactive MCP Apps for SAP
blog.zeis.de — Marian Zeis, Marian ZeisThe reasoningA recipeRunnable code
nothing recorded
Creating an ARC-1 BTP Diagram with Codex and a draw.io Skill
blog.zeis.de — Marian Zeis, Marian ZeisRunnable codeA recipe
nothing recorded
A Clearer View of Your SAP Integrations Under the New API Policy
blog.zeis.de — Marian Zeis, Marian ZeisThe reasoningRunnable code
nothing recorded
Before You Upgrade S/4HANA: Static UI5 Checks with MCP
blog.zeis.de — Marian Zeis, Marian Zeis, part 9 of 10Runnable codeThe reasoning
nothing recorded
ABAP Development Automation with ARC-1 and GitHub Workflows
blog.zeis.de — Marian Zeis, Marian Zeis, part 8 of 10Runnable codeA recipeThe reasoning
nothing recorded
From SEGW and Legacy UI5 to RAP with ARC-1
blog.zeis.de — Marian Zeis, Marian Zeis, part 7 of 10Runnable codeThe reasoning
New majors
ARC-1 with Joule Studio: Bringing Real ABAP System Context into Joule
blog.zeis.de — Marian Zeis, Marian Zeis, part 6 of 10The reasoningRunnable code
New majors
ARC-1 with Copilot Studio: SAP System Context Beyond Developers
blog.zeis.de — Marian Zeis, Marian Zeis, part 5 of 10The reasoningA recipeRunnable code
New majors
ARC-1 on SAP BTP: Secure ABAP Agentic Development Beyond the Laptop
blog.zeis.de — Marian Zeis, Marian Zeis, part 4 of 10The reasoningA recipe
New majors
Introducing ARC-1: A Secure ADT MCP Server for Enterprise SAP Development
blog.zeis.de — Marian Zeis, Marian Zeis, part 3 of 10The reasoning
nothing recorded
ABAP and Agentic AI: The Hidden Problem in Real Projects
blog.zeis.de — Marian Zeis, Marian Zeis, part 2 of 10The reasoning
nothing recorded
How I Use AI for Development and Why Context Matters
blog.zeis.de — Marian Zeis, Marian Zeis, part 1 of 10The reasoning
nothing recorded
Building an Enterprise-Ready SAP AI Agent with Open Source
blog.zeis.de — Marian Zeis, Marian ZeisThe reasoningRunnable code
nothing recorded
Finally: An MCP Server for ABAP
blog.zeis.de — Marian Zeis, Marian ZeisThe reasoningA reference
nothing recorded
Don't Wait for SAP: Unlocking MCP Servers in BAS Right Now
SAP Community, Marian ZeisThe reasoningRunnable code
nothing recorded
New tutorial for UI5 Middleware FE Mockserver
SAP Community, Marian Zeis
nothing recorded
Evaluating SAP’s new MCP servers: UI5, CAP, and Fiori tools in practice
SAP Community, Marian ZeisThe reasoningA recipeRunnable code
nothing recorded
The Complete Guide to Calling Actions in UI5 with Custom Code
SAP Community, Marian ZeisThe reasoningRunnable code
nothing recorded
Visualizing Your SAP Bill of Materials Using CAP, Fiori elements, and the UI5 Network Graph
SAP Community, Marian ZeisThe reasoningRunnable code
Core changed
Simple Table Maintenance in SAP Fiori Using UI5 Smart Controls
SAP Community, Marian ZeisThe reasoningRunnable code
nothing recorded
Using the UI5 Mockserver for Client-Specific Data and Testing
SAP Community, Marian Zeis
nothing recorded
Simplifying SAP BTP Authentication in Pipelines with SAP Passport and Playwright
SAP Community, Marian ZeisThe reasoningRunnable code
nothing recorded

IN TOPICS

The atlas is now in betaTopic, edition 1names arc-1, vibing-steampunk

onedevatlas is open for browsing. Find tools for SAP development, compare their documented capabilities, ask your AI assistant, and join a flight during TechEd week.

Details

History36
  • @marianfoo/sap-mcp-authdescription, type_properties, connects → the module as its README states it, where it runs and how it is installed, and the login edge to the identity service the README namesRe-read against the README as it stands today. "No token endpoint" and "there is no client-credentials flow to use instead" were absence claims about SAP's portals that no source makes, so they are gone and the paragraph now says what the module does and whom it serves. The maintainer's own unofficial caveat, and the origins password login refuses, are in when_not_to_use. The package block states that it is imported into the caller's own program and installed from npm. The README names [Cloud Identity Services](artifact:btp-cloud-identity-services) as the tenant the login goes to, which is an edge rather than a phrase in a paragraph.
  • ui5-fe-mockserver-tutorialtype_properties → formform is tutorial, on the README's first line: "Tutorial for using `@sap-ux/ui5-middleware-fe-mockserver` in SAP Fiori development." The repository was published for Devtoberfest 2025 and the SAP Community post the README links calls it a tutorial from Devtoberfest, so workshop was considered and left out: form is one value, and what this presents itself as is a tutorial with exercise folders, not CodeJam material.
  • ui5-fe-mockserver-tutorialrequires → artifact:marianfoo-ui5-call-actionThe README's Prerequisites tell the reader to clone and run that CAP project before starting, and the fact was already in what_it_solves with no edge under it. artifact:marianfoo-ui5-call-action was a pending draft when this entry was written and is published now, so the plain link in the prose became a graph link in the same pass, as did ui5-middleware-odata-recorder.
  • Werkbankprovides → capability:agent-guidanceWhat Werkbank adds for ABAP, CAP and UI5 is its catalog of development skills; the workspace itself is not specific to any of those stacks. Agent workspaces is narrowed back to BTP.
  • @arc-mcp/xsuaa-authprovides[capability:authentication].facets → propagates_userThe BTP door now compares its authentication options on whether the signed-in identity reaches the next system. The README's sentence about the `./btp` entrypoint states it for this package, and it was read again on this date.
  • sap-architectureprovides.agent-guidance.facets.installs_into → Claude Code, Claude Desktop, Codex, GitHub Copilot, Cursor, Gemini CLIcapability:agent-guidance declared the installs_into property on the BTP door. The README states the skill is portable and then names the instruction file for each tool in a table, so the statement is the portability sentence and each value carries the row that names it. The table also names Jules, Amp and Factory, which are outside the property's values and are left for the curation queue rather than entered as written.
  • sap-architecturedescription.what_it_solves → The same, with the instruction file the README names per tool and its statement that on those tools the skill is wired in per project rather than loaded automatically.The entry said other agents can run it and not what that costs. The README's own caveat, read on 2026-10-15, is that the auto-load is Claude's alone, which is the difference between this option and a Claude-only one.
  • Werkbankecosystem → umbrellaThe project homepage describes "A small, curated shelf of MCP servers and SAP development skills." Its own catalog spans ABAP (ARC-1 and ABAP Cloud), CAP (CAP Upgrade), and UI5 skills; the workspace is not specific to one stack. This intake follows the maintainer’s explicit request after the September source sweep passed it over for lacking a workspace capability; that concern now exists as Agent workspaces. The served views describe which users the project-owned install catalog addresses. Werkbank provides the workspace; each selected connector or skill supplies the stack-specific behavior. No SAP implementation capability is attributed to Werkbank itself.
  • arc-1description.when_not_to_use → removedThe licensing side is its explicit SAP API Policy relation, sourced to its README; the rest restated what any server in front of ADT is. Removed at the atlas maintainer's request on 2026-10-14.
  • arc-1description.what_it_solves, links.changelog, type_properties.tool_count.source.quote, type_properties.guardrails, changed_in, sources[].checked → the `Custom_*` extension API and the agent-plugin install in what_it_solves, the rest of the guardrails the README states, the tool-count sentence as the README writes it, the release-notes link, and 1.4.0's extension report execution as the first changed_inRe-read against the README, the npm registry record, the extensions page and the release notes on 2026-10-04, with arc-1 at 1.5.0 published 2026-10-02. Every claim the entry already carried still holds word for word, so the checked dates move and the text does not, except where the documentation says something the entry did not. Two such things: `Custom_*` tools an operator registers without forking, which the corpus already recorded on [claude-sap-kit](artifact:silvius1996-claude-sap-kit) and not on the server those tools run in, and one agent plugin that installs the server together with [ARC-1 Skills](artifact:arc-mcp-arc-1-skills). The seven guardrails added were stated when the entry was written and left out of it; they are quoted, not counted. The `run_code` facet stays absent: the extensions page gates class and report execution behind two flags and a plugin the operator writes, which is not the server stating that it runs code.
  • arc-1connects, requires, description.what_it_solves, lineage → connections to the ABAP platform over its ADT REST API and, when deployed on BTP, to an ABAP environment there and to the Destination service that forwards the user's identity; abaplint as a requirement; the abapGit and Docker links alone; the three inspirations the README namesThe connection is what the README states the server fronts (docs/concepts/design-roles-and-interfaces.md, P1), and it attaches the system's entry. The two BTP connections are stated under the README's Cloud Foundry deployment heading, so they carry that condition; the Destination service's sentence states identity forwarding and no data flow, and the ABAP environment's sentence names no protocol. The README's credits table names abaplint as what the linter uses. Two older defects go with it: a nested link that rendered its outer bracket as text, and abap-adt-api named in the same quoted sentence as the other two inspirations and carried by no edge.
  • @marianfoo/sap-mcp-authentry → createdEntered with the three servers of the same monorepo that name it. It publishes on its own and answers a question of its own — how a tool outside SAP gets an authenticated session against an SAP portal — so it is an entry rather than an implementation detail of the three.
  • abap-docsentry → createdEntered as the repository behind two sentences the corpus already rests on. capability:documentation's abap framing says "The ABAP keyword documentation, the cheat sheets and the RAP tutorials are public repositories", and for the keyword documentation the public repository is this one, not SAP's: mcp-sap-docs carries it as the `abap-docs` submodule (https://github.com/marianfoo/abap-docs.git in .gitmodules), which is where its `abap-docs-standard` and `abap-docs-cloud` offline sources come from. doc-source rather than a provider, because that same capability's abap note states publishing a corpus is not answering the concern. identity.license is the `license` field of package.json; the GitHub API reports no licence for the repository, which is the second sentence of when_not_to_use.
  • cap-materialbom-graphentry → createdDrafted from the repository's own files, because its README is the unedited `cds init` template and the only sentence the maintainer wrote about it is the repository description, "This is a sample to show the Material as Network Graph in a Fiori elements app": db/schema.cds for the model and the GraphNetwork pseudo-entity, srv/service.js for the READ handler that walks the bill of materials, app/material/webapp/manifest.json for the list report and object page generated from `@sap/generator-fiori:lrop` and the custom section, the graph fragment for `sap.suite.ui.commons.networkgraph`, and package.json for `@sap/cds` ^8 and `@cap-js/sqlite`. artifact_type sample and use_as starting-point are a placement: one commit, a local SQLite run and no deployment described. domain ui-and-frontend-bridge follows the half of it the sample is about, as on cap-sflight. No licence is recorded: the repository has no LICENSE file and package.json carries the `cds init` defaults "license": "UNLICENSED" and "private": true.
  • ui5-errorhandler-sampleentry → createdIts own README states the subject: "This sample shows how to use npm packages", with "How to consume a UI5 AMD style module" and "How to consume a classic js class" as the two examples. That places it on capability:ui5-build-tooling, where artifact:ui5-community-ui5-tooling-modules already sits, rather than anywhere near error handling: the error handler is the payload being consumed and not what the sample teaches. demonstrates rather than provides, because a sample is evidence. compat.runtimes is package.json's @ui5/cli devDependency. The last description sentence is the README's `"@marianfoo/ui5-errorhandler": "^0.0.4"` set against package.json's `"@marianfoo/ui5-cc-errorhandler": "^0.0.1"` on main, both read on 2026-09-25. The library itself, marianfoo/ui5-errorhandler, was read in the same batch and not drafted; see the manifest note. GitHub reported this repository as a fork on 2026-09-25 and its README credits easy-ui5 rather than an upstream repository, so no lineage is written here: the fork flag is crawled and lineage needs the maintainer's own sentence.
  • ui5-fe-mockserver-tutorialentry → createdSample with use_as reference, following artifact:sap-samples-manage-apis-codejam: a repository of exercises is evidence that something works and never an option to depend on. It demonstrates capability:ui5-testing because that capability's core coverage already names "an OData V2 mock server for a backend stand-in" as what SAP ships, and capability:ui5-build-tooling because the mockserver is registered as UI5 Tooling custom middleware in ui5-mock.yaml. compat.runtimes is the README's Required Tools, "**Node.js** (20 LTS or higher)". @sap-ux/ui5-middleware-fe-mockserver, the middleware being taught, has no entry of its own, so it stands in the prose as a code span and the README's own pointer to SAP/open-ux-odata is linked out. No licence is stated anywhere in the repository, so identity is absent.
  • ui5-plugin-loaderentry → createdbuild-tool and capability:ui5-build-tooling for the same reason its four named neighbours carry them: it is registered in the customMiddleware and customTasks blocks of ui5.yaml and does its work inside `ui5 serve` and `ui5 build`. compat.runtimes is the README's Requirements section, "**Node.js v18.0.0 or higher**"; identity.license is the README's License section and the npm record, both MIT. No flavors: the README states no UI5 flavor, and absent is not a claim. One discrepancy for an editor rather than the entry: the npm record for ui5-plugin-loader 0.2.0, published 2025-07-23, gives its repository as git+https://github.com/marianzeis/ui5-plugin-loader.git, while the source read here is github.com/marianfoo/ui5-plugin-loader; the npm description, "Auto-mounts UI5 tooling extensions based on manifest JSON files", and the 0.2.x version line both match this README.
  • btp-cf-mcpentry → createdRead out of the marianfoo account listing. Entered as a starting-point, since the maintainer's own status line calls it "a working proof-of-concept", so its boundaries sit in description.to_build_on_it rather than in a warning. capability:mcp-servers already reads core-only on the BTP door because every provider there is SAP-published; this is an independent one, which is a reading the capability will have to move.
  • SAP API Policy Evidence Skillrequires → five conditional edges to the MCP servers the README lists as its prerequisitesThe entry described the skill as gathering evidence "through MCP servers" without naming one, because four of the five were not in the corpus. Three entered in the same batch as their own packages, and mcp-sap-docs and arc-1 were already here, so the README's own prerequisites table becomes edges. Conditional rather than required: the README states the skill degrades gracefully when one is missing and names which two raise confidence to high.
  • sap-api-hub-mcpentry → created[The SAP API Policy Evidence Skill](artifact:marianfoo-sap-api-policy-skill) was entered on 2026-09-10 naming this server as what proves an API's Published-API status, and the server itself was not in the corpus. Entered as its own package, from its own README, because the monorepo publishes each server to npm independently.
  • sap-note-search-mcpentry → createdThe decline recorded for candidate:marianfoo/mcp-sap-notes on 2026-09-10 named this as the successor and as an open gap: "SAP Notes search is a real gap in the corpus and the thing that fills it has to be found some other way." Entered from the monorepo package rather than the archived repository, and from the package's own README.
  • sap-roadmap-mcpentry → createdNamed in [the SAP API Policy Evidence Skill](artifact:marianfoo-sap-api-policy-skill)'s prerequisites as the source for replacement APIs, and absent from the corpus. Entered as its own package, from its own README, because the monorepo publishes each server to npm independently.
  • ui5-cc-pdfviewerentry → createdRead out of the marianfoo account listing. No lineage edge: the README states the fork of lemaiwo/UI5LabLibraryPDFViewer, and that repository is not in the corpus, so the fact is carried in the description rather than pointed at an id that does not resolve.
  • ui5-lib-diffentry → createdRead out of the marianfoo account listing. capability:documentation reads core-only on the UI5 door on the grounds that every provider there is SAP-published; this is an independent one, so that reading needs reassessing rather than carrying over.
  • ui5-middleware-odata-recorderentry → createdRead out of the marianfoo account listing. Two provides edges because the two halves are different claims: it is a UI5 server middleware, and what it produces is the mock-server dataset that capability:ui5-testing's core coverage already names as the framework's backend stand-in.
  • arc-1description.one_line, description.what_it_solves → corrected against the READMECorrected against the README, which documents a shared-credential mode (technical user) beside per-user identity.
  • arc1-adt-abap-mcp-extrequires[0].for, requires[0].sources[0].quote, requires[0].sources[0].checked → corrected against the READMEThe cited sentence is no longer in the README: from 0.5.1 the plugin only contributes tools to SAP's supported server; waking the dormant one was 0.3.x.
  • mcp-sap-docsdescription.one_line, description.what_it_solves, provides[0].what_it_does → corrected against the READMECorrected against the README: its offline-sources table lists seventeen repositories, abap-docs-standard through wdi5.
  • arc-1-lspentry → createdTriaged out of data/crawled/mcp-candidates.json, the sap-ai-mcp-servers sweep. Written from the repository's own README; the catalogue is credited as where it was found and its words are not reused.
  • arc1-adt-abap-mcp-extentry → createdTriaged out of data/crawled/mcp-candidates.json, the sap-ai-mcp-servers sweep. Written from the repository's own README; the catalogue is credited as where it was found and its words are not reused.
  • open-rfcserves_ecosystems → capA Node.js RFC client serves whoever calls a function module, and that is a CAP or Node developer; an ABAP developer exposes the module and never installs this. It was listed behind the ABAP door with no concern there to answer.
  • SAP API Policy Evidence Skillentry → createdTriaged out of data/crawled/mcp-candidates.json, the sap-ai-mcp-servers sweep. Written from the repository's own README; the catalogue is credited as where it was found and its words are not reused. Hard rule 7: skills are indexed, never authored here.
  • arc-1entry → createddocs/NEIGHBOURS.md §2 assigns ARC-1 the posture ingest — as an entry — and §3.1 names its author, but nothing in data/artifacts held it. Entered as the artifact the posture calls for, and it is the first provider of capability:abap-agent-tooling in the corpus.
  • arc-1provides → capability:agent-code-accessabap-agent-tooling generalised into agent-code-access: the same concern exists in CAP, and the ABAP framing keeps the local name.
  • mcp-sap-docsentry → createdNamed in docs/NEIGHBOURS.md §3.1 as a project of the bestofcapjs author but never entered. It is a documentation retrieval server, not an index of options — the complement posture the same section assigns ARC-1, and hard rule 5 makes it exist here only as an attached entry.
  • First entry seenDiscovered via GitHub API · arc-mcp, GitHub organisations and accounts · marianfoo, GitHub API · marianfoo, sap-ai-mcp-servers, The discovery pass · npm, GitHub API, The maintainer, claiming it, Added by hand, Added by hand · spreadsheetimporter organisation repositories, GitHub organisations and accounts · github-orgs:marianfoo.
Profile1
For your agent