Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
MCP server for SAP ABAP ADT over Streamable HTTP: credentials from x-sap-* headers per request
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
SAP_SYSTEM_TYPE, MCP_HTTP_HOST, MCP_HTTP_PORT, SAP_MASTER_SYSTEM, SAP_RESPONSIBLE你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"abap-adt-http": {
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add abap-adt-http --env SAP_SYSTEM_TYPE=your-value --env MCP_HTTP_HOST=your-value --env MCP_HTTP_PORT=your-value --env SAP_MASTER_SYSTEM=your-value --env SAP_RESPONSIBLE=your-value -- npx -y @mcp-abap-adt/http运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"abap-adt-http": {
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"abap-adt-http": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mcp-abap-adt/http"
],
"env": {
"SAP_SYSTEM_TYPE": "your-value",
"MCP_HTTP_HOST": "your-value",
"MCP_HTTP_PORT": "your-value",
"SAP_MASTER_SYSTEM": "your-value",
"SAP_RESPONSIBLE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
MCP_HTTP_HOST envMCP_HTTP_PORT envSAP_MASTER_SYSTEM envSAP_RESPONSIBLE env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 fr0ster 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:SAP_SYSTEM_TYPE
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(20.0.0)于16天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Thalovant MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
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.
Connect MCP clients to Thalovant control-plane and hub runtime APIs over stdio or Streamable HTTP.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
mcp-abap-adt is an MCP server for ABAP ADT in SAP ECC/S/4HANA (on-premise) and SAP BTP ABAP Cloud systems. It gives agents controlled access to real ABAP repositories through ADT, so analysis and changes are grounded in system data instead of assumptions. It is built for AI-assisted pair programming (AIPNV: AI Pairing, Not Vibing), not autopilot vibe coding.
Primary workflows:
Why teams use it:
parked/legacy-support branch until it can be tried against a live legacy systemx-sap-jwt-token header of mcp-abap-adt-http / mcp-abap-adt-sse@mcp-abap-adt/core) or the compact one (@mcp-abap-adt/compact), each connecting to the system over HTTP, RFC or SNC — see Installation variantsAuthorization & Destinations (Important): A *destination* is the filename of a service key stored locally. You place service keys in the service-keys directory, and use --mcp= to select which one to use. This is the primary auth model for on‑prem and BTP systems. See Authentication & Destinations.
You can configure MCP clients either manually (JSON/TOML) or via the configurator CLI (@mcp-abap-adt/configurator, repo: mcp-abap-adt-conf).
Pick a variant first — full or compact server, and HTTP, RFC or SNC to the system. HTTP needs nothing but Node.js 22 or 24; RFC and SNC need the SAP NW RFC library when the server runs — SAP GUI's 64-bit sapnwrfc.dll on Windows, else the SAP NW RFC SDK; the RFC module comes prebuilt for Linux x64 (glibc), Windows x64 and macOS ARM64, and npm install compiles nothing. Installation variants has the table and the commands; RFC Setup the steps. To run without Node.js on a machine, build your own portable executable — Node.js and your SAP NW RFC SDK inside.
Install the server and configure your client using the configurator:
npm install -g @mcp-abap-adt/core
npm install -g @mcp-abap-adt/configurator
mcp-conf --client cline --name abap --mcp TRIAL
mcp-conf --client copilot --name abap --transport http --url http://localhost:3000/mcp/stream/http
Full configurator usage (separate repo): CLIENT_INSTALLERS.md.
Destination: a local service key filename. You store service keys in the standard service-keys directory, and pass the filename (without extension) via --mcp= to select which system to use.
See docs/user-guide/TERMINOLOGY.md for the full list.
Destination-based auth is the default. Drop service keys into the standard platform folder and use the filename as your destination:
mcp-abap-adt --mcp=TRIAL --system-type=cloud
Standard service key paths:
~/.config/mcp-abap-adt/service-keys/ .json%USERPROFILE%\\Documents\\mcp-abap-adt\\service-keys\\ .jsonmcp-abap-adt (stdio) supports exactly three authentications, each a destination stated in a service key, a .env, or both; a JWT you hold is sent in headers to the HTTP or SSE server:
| Authentication | .env keys |
|---|---|
| Basic (HTTP or RFC) | SAP_AUTH_TYPE=basic, SAP_USERNAME, SAP_PASSWORD |
| SNC (RFC only, passwordless) | SAP_AUTH_TYPE=snc, SAP_SNC_PARTNERNAME, optional SAP_SNC_QOP, SAP_SNC_LIB, SAP_SNC_MYNAME — no user, no password |
| JWT, browser login | SAP_AUTH_TYPE=jwt, SAP_GRANT_TYPE=authorization_code, a service key (ABAP or XSUAA) or SAP_UAA_* |
| JWT you hold | the x-sap-jwt-token header of mcp-abap-adt-http / mcp-abap-adt-sse (stdio serves none) |
A jwt .env must state SAP_GRANT_TYPE. The mcp-auth command that writes such a .env comes from @mcp-abap-adt/auth-broker-cli. The browser login listens on port 61001 unless --browser-auth-port says otherwise.
A created object always carries its responsible person and, where known, its master system. The servers name them once per destination — its credentials and its ABAP system — when its connection is created, by the rules of @mcp-abap-adt/responsible-rules: the system's systeminformation answer (its user, its system id) wins, on-premise and on ABAP Cloud alike; a tool argument that names the value (a transport's owner, say) still states it for that call. When the system gives no information, ABAP Cloud is an error (cloud_without_systeminformation for a 404, else system_lookup_failed); on-premise the responsible is SAP_RESPONSIBLE / x-sap-responsible if stated, else the login (SAP_USERNAME, x-sap-login), and the master system SAP_MASTER_SYSTEM / x-sap-master-system when stated; with no user at all the call is refused system_user_unknown, and a stdio start ends with exit 1. A 401 is answered as it came. The library applies no rules unless an embedder passes them. See Authentication & Destinations. Coming from 22.x? See the 23.0 migration note — CreateProgram no longer offers include (create an include with CreateInclude); an embedder registering the ./handlers groups on its own McpServer states systemType (SAP_SYSTEM_TYPE is not read there), and HandlerExporter serves no background run and no debugger. Coming from 21.x? See the 22.0 migration note — the tools, their enums and the object types each argument accepts are the declared system type's (onprem or cloud), inspection needs --system-type too, function / func are the function module, main types stand for their one code, RunATC on cloud offers no program, and ValidateServiceBinding requires package_name. Coming from 19.x? See the 20.0 migration note — RFC on connection 19 and sap-rfc-lite 0.3.2: nothing compiled on install, a prebuilt binding for Linux x64, Windows x64 and macOS ARM64 only; over Streamable HTTP state_handle is an argument of every tool, and a long session keeps one SAP session across calls. Coming from 18.x? See the 19.0 migration note — the server split into a package per transport and tool set, the system type required, the low set gone, the auth chain on 6.0. Coming from 17.x? See the 18.0 migration note — the debugger's embedder surface moved to adt-clients 29, and a debugger start needs at least one breakpoint. From 16.x, the 17.0 note first.
For full details (paths, .env, direct headers), see Authentication & Destinations.
The project ships a library and the servers — and a compact variant of each server — because the two usage patterns want different licences. Embedding the tools in a network service should not drag in the obligations of a server that service never runs.
| Package | Licence | What it is |
|---|---|---|
@mcp-abap-adt/lib | Apache-2.0 | The ADT tool handlers and the embeddable MCP server. No transport: the host supplies one. |
@mcp-abap-adt/core | AGPL-3.0-only | The standalone stdio server, mcp-abap-adt: one destination through the auth broker. Depends on the library. |
@mcp-abap-adt/http | AGPL-3.0-only | The Streamable HTTP server, mcp-abap-adt-http: credentials from each request's x-sap-* headers. |
@mcp-abap-adt/sse | AGPL-3.0-only | The HTTP+SSE server, mcp-abap-adt-sse: credentials from the x-sap-* headers of each SSE connection's GET. |
@mcp-abap-adt/compact | AGPL-3.0-only | The compact server over stdio, mcp-abap-adt-compact: one tool per operation, the object type in the arguments. core's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/compact-http | AGPL-3.0-only | The compact server over Streamable HTTP, mcp-abap-adt-compact-http: http's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/compact-sse | AGPL-3.0-only | The compact server over HTTP+SSE, mcp-abap-adt-compact-sse: sse's launcher and configuration (from server-runtime) with the compact tool set. |
@mcp-abap-adt/server-runtime | AGPL-3.0-only | The launch code of every server: the stdio, Streamable HTTP and SSE launchers and servers, and the destination layer. No command of its own: every server package depends on it, so it is installed with each server; you never install it yourself. |
@mcp-abap-adt/background-runs-memory | Apache-2.0 | The in-memory store of background runs (IBackgroundRuns of the library): the servers' store, for an embedder that keeps runs in its process. Every server package depends on it. |
@mcp-abap-adt/responsible-rules | Apache-2.0 | The rules that name a call's responsible, user and system from systeminformation (SystemContextRules of the library), and the system type the binaries require. Every server package passes them; the library applies none, so an embedder opts in. |
| @mcp-abap-adt/core-ro, http-ro, sse-ro | AGPL-3.0-only | The read-only se
只显示了开头部分;其余内容请在仓库中阅读