mcp-abap-adt:ABAP 开发工具 (ADT) 的门户
该项目提供了一个服务器,允许您使用模型上下文协议 (MCP) 与 SAP ABAP 系统交互。您可以将其视为一个桥梁,让Cline (VS Code 的一个扩展)等工具与您的 ABAP 系统通信并检索源代码、表结构等信息。这就像为您的 ABAP 开发环境配备了一个遥控器!
本指南面向初学者,我们将逐步讲解所有内容。我们将涵盖:
**先决条件:**开始之前您需要什么。
**安装和设置:**让一切启动并运行。
**运行服务器:**以不同的模式启动服务器。
**与 Cline 集成:**将此服务器连接到 Cline VS Code 扩展。
**故障排除:**常见问题和解决方案。
**可用工具:**您可以使用的命令列表。
1. 先决条件
在开始之前,您需要准备一些东西:
**SAP ABAP 系统:**此服务器连接到现有的 ABAP 系统。您需要:
系统的 URL(例如
https://my-sap-system.com:8000)该系统的有效用户名和密码。
SAP 客户端编号(例如
100)。确保您的 SAP 系统允许通过 ADT(ABAP 开发工具)进行连接。这通常需要确保在事务
SICF中激活必要的服务。您的基础管理员可以协助完成此操作。具体来说,您需要激活以下服务:/sap/bc/adt
对于
GetTableContents工具,您需要实现自定义服务/z_mcp_abap_adt/z_tablecontent。您可以按照此处的指南操作。
**Git(或 GitHub Desktop):**我们将使用 Git 下载项目代码。您有两个选择:
**Git:**命令行工具。下载 Git 。选择适合您操作系统(Windows、macOS、Linux)的版本。按照安装说明操作。
GitHub Desktop: Git 的图形用户界面。初学者也能轻松上手!下载 GitHub Desktop 。按照安装说明操作。
Node.js 和 npm: Node.js 是一个 JavaScript 运行时,可让您在 Web 浏览器之外运行 JavaScript 代码。npm(Node 包管理器)包含在 Node.js 中,用于安装包(代码库)。
下载 Node.js 。**选择 LTS(长期支持)版本。**这是最稳定的版本。请按照您操作系统的安装说明进行操作。确保在安装中包含 npm(通常默认包含)。
**验证安装:**安装 Node.js 后,打开一个新终端(Windows 上为命令提示符,macOS/Linux 上为终端)并输入:
node -v npm -v您应该会看到 Node.js 和 npm 的版本号。如果您看到错误,则可能是 Node.js 未正确安装,或者它可能不在系统的 PATH 中。(请参阅下面的故障排除)。
Related MCP server: MCP Server
2.安装和设置
现在,让我们获取项目代码并进行设置:
通过 Smithery 安装
要通过Smithery自动为 Cline 安装 MCP ABAP 开发工具服务器:
手动安装
克隆存储库:
使用 Git(命令行):
打开终端(命令提示符或终端)。
导航到要存储项目的目录。例如,将其放在桌面上:
cd Desktop克隆存储库:
git clone https://github.com/mario-andreschak/mcp-abap-adt进入项目目录:
cd mcp-abap-adt # Or whatever the folder name is
使用 GitHub Desktop:
打开 GitHub Desktop。
单击“文件”->“克隆存储库...”。
在“URL”选项卡中,粘贴存储库 URL。
选择本地路径(您想要在计算机上保存项目的位置)。
点击“克隆”。
**安装依赖项:**这将下载项目所需的所有必要库。在终端的根目录中,运行:
npm install这可能需要几分钟。
**构建项目:**将代码编译为可执行格式。
npm run build**创建一个
.env文件:**此文件存储敏感信息,例如您的 SAP 凭据。确保此文件的安全至关重要。在根目录中,创建一个名为
.env(无扩展名)的新文件。在文本编辑器(如记事本、VS Code 等)中打开
.env文件。添加以下行,用您的实际 SAP 系统信息替换占位符:重要提示:如果您的密码包含“#”字符,请确保将您的密码括在引号中!
SAP_URL=https://your-sap-system.com:8000 # Your SAP system URL SAP_USERNAME=your_username # Your SAP username SAP_PASSWORD=your_password # Your SAP password SAP_CLIENT=100 # Your SAP client**重要提示:**切勿与任何人共享您的
.env文件,也不要将其提交到 Git 存储库!
3.运行服务器
公平地说,您通常不会单独“运行”此服务器。它应该集成到 Cline 或 Claude Desktop 等 MCP 客户端中。但您可以通过两种主要方式手动运行该服务器:
**独立模式:**此模式直接运行服务器,并将消息输出到终端。服务器将启动并等待客户端连接,因此除了查看其是否启动外,服务器可能没有任何作用。
**开发/调试模式:**此模式使用 MCP 检查器运行服务器。您可以在浏览器中打开它输出的 URL 并开始操作。
3.1 独立模式
要以独立模式运行服务器,请在终端中使用以下命令(从根目录):
您应该会在终端中看到消息,表明服务器正在运行。它将监听来自 MCP 客户端的连接。服务器将持续运行,直到您将其停止(通常使用 Ctrl+C)。
3.2 开发/调试模式(带检查器)
此模式对于调试很有用。
以调试模式启动服务器:
npm run dev这将启动服务器并输出如下消息:
🔍 MCP Inspector is up and running at http://localhost:5173 🚀。这是您将用于在浏览器中打开 MCP 检查器的 URL。
4. 与 Cline 集成
Cline 是一个 VS Code 扩展,它使用 MCP 服务器提供语言支持。以下是如何将此 ABAP 服务器连接到 Cline:
**安装 Cline:**如果还没有安装,请在 VS Code 中安装“Cline”扩展。
打开 Cline 设置:
打开 VS Code 设置(文件 -> 首选项 -> 设置,或 Ctrl+,)。
搜索“Cline MCP 设置”。
点击“在 settings.json 中编辑”。这将打开
cline_mcp_settings.json文件。完整路径通常类似于:C:\Users\username\AppData\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json(将username替换为您的 Windows 用户名)。
**添加服务器配置:**您需要在
cline_mcp_settings.json文件的servers数组中添加一个条目。以下是示例:{ "mcpServers": { "mcp-abap-adt": { "command": "node", "args": [ "C:/PATH_TO/mcp-abap-adt/dist/index.js" ], "disabled": true, "autoApprove": [] } // ... other server configurations ... } }测试连接:
Cline 应该会自动连接到服务器。您将看到服务器出现在“MCP 服务器”面板中(在 Cline 扩展程序中,您会在顶部看到不同的按钮。)
要求 Cline 获取程序的源代码,它应该提到 MCP 服务器,并尝试使用相应的工具
5. 故障排除
node -v确保 Node.js 已正确安装。请尝试重新安装。
确保 Node.js 安装目录位于系统的 PATH 环境变量中。在 Windows 系统中,您可以通过“系统属性”编辑环境变量(在“开始”菜单中搜索“环境变量”)。
npm install确保您已连接互联网。
尝试删除
node_modules文件夹并再次运行npm install。如果您使用了代理,则可能需要配置 npm 才能使用代理。在线搜索“npm 代理设置”。
Cline 未连接到服务器:
仔细检查
cline_mcp_settings.json中的设置。它必须是root-server目录的正确绝对路径,并且在 Windows 上使用双反斜杠。确保服务器正在运行(使用
npm run start检查)。重新启动 VS Code。
或者:
在资源管理器中导航至 mcp-abap-adt 的根文件夹,按住 Shift 键并右键单击,然后选择“在此处打开 Powershell”。(或者,打开 Powershell 并使用
cd C:/PATH_TO/mcp-abap-adt/导航至该文件夹)运行“npm install”
运行“npm run build”
运行“npx @modelcontextprotocol/inspector node dist/index.js”
打开浏览器,输入输出的 URL,点击左侧的“连接”。
点击顶部的“工具”,然后点击“列出工具”
单击“获取程序”,然后在右侧输入“SAPMV45A”或任何其他报告名称作为程序名称
测试并查看输出结果
SAP 连接错误:
在
.env文件中验证您的 SAP 凭据。确保 SAP 系统正在运行并可通过您的网络访问。
确保您的 SAP 用户具有访问 ADT 服务所需的授权。
检查事务
SICF中是否激活了所需的 ADT 服务。如果您使用自签名证书或您的 SAP 系统 http 配置存在问题,请确保按照上述说明设置 TLS_REJECT_UNAUTHORIZED!
6.可用工具
该服务器提供以下工具,可通过 Cline(或任何其他 MCP 客户端)使用:
工具名称 | 描述 | 输入参数 | 使用示例(在 Cline 中) |
| 检索 ABAP 程序源代码。 |
(字符串):ABAP 程序的名称。 |
|
| 检索 ABAP 类源代码。 |
(字符串):ABAP 类的名称。 |
|
| 检索 ABAP 函数组源代码。 |
(字符串):函数组的名称 |
|
| 检索 ABAP 功能模块源代码。 |
(字符串),
(字符串) |
|
| 检索 ABAP 结构。 |
(字符串):DDIC 结构的名称。 |
|
| 检索 ABAP 表结构。 |
(字符串):ABAP DB 表的名称。 |
|
| 检索 ABAP 表的内容。 |
(字符串),
(数字,可选,默认 100) |
|
| 检索 ABAP 包详细信息。 |
(字符串):ABAP 包的名称。 |
|
| 检索 ABAP 类型信息。 |
(字符串):ABAP 类型的名称。 |
|
| 检索 ABAP 包含源代码 |
(字符串):ABAP 包含的名称 |
|
| 使用快速搜索来搜索 ABAP 对象。 |
(字符串),
(数字,可选,默认 100) |
|
| 检索 ABAP 接口源代码。 |
(字符串):ABAP 接口的名称。 |
|
| 检索 ABAP 交易详情。 |
(字符串):ABAP 事务的名称。 |
|