Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MCP server for SAP ABAP systems
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
SAP_URL, SAP_USER, SAP_PASSWORD, SAP_CLIENT, SAP_LANGUAGE, SAP_INSECURE, SAP_ALLOW_WRITESValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"arc-1": {
"command": "npx",
"args": [
"-y",
"arc-1"
],
"env": {
"SAP_URL": "your-value",
"SAP_USER": "your-value",
"SAP_PASSWORD": "your-value",
"SAP_CLIENT": "your-value",
"SAP_LANGUAGE": "your-value",
"SAP_INSECURE": "your-value",
"SAP_ALLOW_WRITES": "your-value"
}
}
}
}Run this in your terminal
claude mcp add arc-1 --env SAP_URL=your-value --env SAP_USER=your-value --env SAP_PASSWORD=your-value --env SAP_CLIENT=your-value --env SAP_LANGUAGE=your-value --env SAP_INSECURE=your-value --env SAP_ALLOW_WRITES=your-value -- npx -y arc-1Fill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"arc-1": {
"command": "npx",
"args": [
"-y",
"arc-1"
],
"env": {
"SAP_URL": "your-value",
"SAP_USER": "your-value",
"SAP_PASSWORD": "your-value",
"SAP_CLIENT": "your-value",
"SAP_LANGUAGE": "your-value",
"SAP_INSECURE": "your-value",
"SAP_ALLOW_WRITES": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"arc-1": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"arc-1"
],
"env": {
"SAP_URL": "your-value",
"SAP_USER": "your-value",
"SAP_PASSWORD": "your-value",
"SAP_CLIENT": "your-value",
"SAP_LANGUAGE": "your-value",
"SAP_INSECURE": "your-value",
"SAP_ALLOW_WRITES": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
SAP_CLIENT envSAP_LANGUAGE envSAP_INSECURE envSAP_ALLOW_WRITES envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account marianfoo, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: SAP_URL, SAP_USER, SAP_PASSWORD
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.9.18) reached the registry 5 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js, Docker on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Whisper
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
One routable IPv6 per AI agent, verifiable from the DNS root. Keyless tools need no signup.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
ARC-1 (pronounced _arc one_ [ɑːrk wʌn]) — Enterprise-ready MCP server for SAP ABAP systems. Secure by default, deployable to BTP or on-premise, and hardened with large unit/integration/E2E test coverage.
ARC-1 connects AI assistants (Claude, GitHub Copilot, Copilot Studio, and any MCP client) to SAP systems via the ADT REST API. It ships as an npm package and Docker image.
[Full Documentation](https://docs.arc-1-mcp.com/) | [Quickstart](https://docs.arc-1-mcp.com/quickstart/) | [Security Review](https://docs.arc-1-mcp.com/security/) | [Tool Reference](https://docs.arc-1-mcp.com/tools/) | [ARC-1 Updates](https://docs.arc-1-mcp.com/newsletter/) | [Blog Series](https://blog.zeis.de/tags/ai-abap-development-series/)
📬 Stay current with ARC-1 — get major releases, upgrade and security notes, practical guides, and occasional questions where your feedback can shape what comes next. [Join ARC-1 Updates →](https://docs.arc-1-mcp.com/newsletter/)
📖 New: AI ABAP Development blog series — long-form posts on AI for ABAP, ARC-1 design, and real-world BTP / Copilot Studio / Joule walkthroughs. [Read the series →](https://blog.zeis.de/tags/ai-abap-development-series/)
Built for organizations that need AI-assisted SAP development with guardrails. Inspired by the pioneering work of abap-adt-api, mcp-abap-adt, and vibing-steampunk — ARC-1 adds what's needed to run in production:
SAP_ALLOW_* flagsSAP_DENY_ACTIONS (for example SAPWrite.delete), without exposing low-level operation codes to admins--allowed-packages "Z*,$TMP"). Read operations are not restricted by package — use SAP's native authorization for read-level access controlSAP_ALLOW_DATA_PREVIEW=true; freestyle SQL separately requires SAP_ALLOW_FREE_SQL=true. Review enabled uses against the SAP API Policy, your SAP agreement, and internal data-governance rules.SAP_BLOCKED_DATA_SOURCES=USR02,PA0002. ARC-1 then parses each SQL request and resolves active CDS plus replacement-object lineage before execution, denying direct or transitive exact-name matches and failing closed when lineage is unsupported or cannot be proven. The empty default adds no metadata calls. This denylist is defense in depth, not a production allowlist or replacement for SAP authorization/CDS DCL; see Authorization & Roles.--allow-writes and --allow-transport-writes. Update/delete operations auto-use the lock correction number when no explicit transport is provided--allow-git-writes / SAP_ALLOW_GIT_WRITES=trueviewer, viewer-data, viewer-sql, developer, developer-data, developer-sql, or admin per key--allowed-packagesARC1_ALLOWED_ORIGINS (comma-separated, exact match). Off by default; native MCP clients don't need itARC1_MCP_HTTP_RATE_LIMIT overrides it), per-user MCP quota (Layer 2, off by default — multi-user deployments opt in via ARC1_RATE_LIMIT=60), and a server-wide SAP-bound semaphore (Layer 3, default 10, on). Honors Retry-After on 429/503 from SAP / BTP gateways. See the Rate Limiting GuideOAuth2UserTokenExchange for BTP ABAP EnvironmentDeploy ARC-1 as a Cloud Foundry app on SAP BTP with full platform integration:
arc1.enabled=true and exposes pinned SID/client plus read-only aggregate endpoints; scoped pinned PP writes require separate destination/IAM opt-ins (setup, administration)SAPRead for exact implementation behavior. For business purpose, reviews or test design, start with SAPContext(action="deps", type=..., name=...) for available Knowledge Transfer Documents (SKTD/KTD) and dependency contracts, then compare requirements with source. Without documented requirements, intent is unverified.If-None-Match/ETag conditional GET, so unchanged objects return from cache after SAP confirms 304 Not Modified.SAPContext(action="deps").SAPContext(action="usages") and CDS impact analysis query SAP's current repository index with the caller's identity; no startup repository scan is required.SAPRead accepts version="active" | "inactive" | "auto" and warns when the active source has an unactivated draft.SAPWrite or SAPActivate mutates an object, both active and inactive source cache entries are dropped; next read revalidates or fetches fresh source.See [docs/caching.md](docs/caching.md) for full documentation.
104 unit test files, mocked HTTP)test:integration:slow, test:e2e:slow, GitHub SAP Slow Tests workflow)test:integration:crud, test:integration:btp:smoke)22 and 24; live SAP integration + E2E run on internal PRs and manual dispatch, with SAP jobs gated off for docs/chore PRs and external forksThe 12 tools are designed from real LLM interaction feedback:
| Tool | What it does |
|---|---|
| SAPRead | Read exact ABAP source, method bodies, grep matches, table data, CDS views, access controls (DCLS), metadata extensions (DDLX), service bindings (SRVB), knowledge-transfer docs (SKTD or friendly alias KTD), message classes (MSAG), revision history (VERSIONS/VERSION_SOURCE), inactive object state, BOR objects, deployed UI5/Fiori apps (BSP, BSP_DEPLOY), and ABAP Platform 2025 server-driven objects (DESD, EVTB, EVTO, DTSC, CSNM, COTA). For "what does this object do?" use SAPContext first, then SAPRead for precise source. Enhancement implementations (ENHO) are readable on-prem and on BTP; authorization fields (AUTH) and feature toggles (FEATURE_TOGGLE) are on-prem only. Structured format for classes returns metadata + decomposed includes as JSON. Optional grep regex returns only matching source lines (+context, method-annotated for classes) for token-efficient search. (Deprecated aliases MESSAGES/FTG2 accepted for one minor.) |
| SAPSearch | Object search + full-text source code search across the system |
| SAPWrite | Create/update/delete ABAP source and DDIC metadata with automatic lock/unlock (PROG, CLAS, INTF, FU
Only the beginning is shown; read the rest in the repo