article
README
🚀 MCP SAP GUI
MCP 是一个多语言控制平台(Multi - language Control Platform),可用于在 SAP 系统中执行自动化任务和脚本。本项目能帮助用户通过编写 Python 脚本,轻松连接到 SAP GUI 并与之交互,提升工作效率。
🚀 快速开始
MCP 是一个多语言控制平台(Multi - language Control Platform),用于在 SAP 系统中执行自动化任务和脚本。此文档将引导您如何使用 MCP 连接到 SAP GUI,并通过编写 Python 脚本来与之交互。
📦 安装指南
安装 MCP
- 下载 MCP 的最新版本。
- 解压文件包并运行安装程序。
- 按照提示完成安装过程。
配置 MCP 连接到 SAP GUI
- 打开 MCP 的设置界面。
- 添加一个新的“SAP GUI”连接。
- 填写以下信息:
- 名称:为您的连接起一个有意义的名字(例如:
MYSAPGUI - 01)。 - 主机名/IP 地址:输入 SAP 服务器的地址(例如:
192.168.1.100)。 - 端口:SAP GUI 的默认端口是
32768,但您也可以使用其他自定义端口。
- 名称:为您的连接起一个有意义的名字(例如:
- 配置完成。
💻 使用示例
基础用法
示例:执行 MM03(物料主数据维护)
- 打开 MCP 并选择您的“SAP GUI”连接。
- 在控制台中输入以下命令:
mcp sap connect MYSAPGUI-01 - 成功连接后,您可以执行事务代码
MM03:mcp sap transaction MM03
示例:使用脚本批量处理
from mcp import SapGuiController
# 连接到 SAP GUI
controller = SapGuiController('MYSAPGUI-01')
# 打开事务 ME21N(采购 requisition)
controller.open_transaction('ME21N')
# 输入物料编号
controller.input_field('Material', '12345')
# 提交事务
controller.submit()
📚 详细文档
项目结构和文件
目录结构
mcp-sap-gui/
├── src/
│ └── sap_gui_server/
│ ├── __init__.py
│ ├── sap_controller.py # SAP GUI 的交互逻辑
│ └── server.py # MCP 服务器实现
├── tests/
│ ├── __init__.py
│ ├── test_sap_controller.py
│ └── test_server.py
├── build.bat # 编译和测试脚本
├── integrate.bat # 集成脚本(用于 Cline/Roo)
├── integrate.py # Python 脚本用于安全的 MCP 设置更新
├── requirements.txt # 生产依赖项
└── requirements-dev.txt # 开发依赖项
关键文件
- sap_controller.py:包含与 SAP GUI 交互的具体逻辑,如打开事务、输入字段和提交。
- server.py:实现 MCP 服务器的通信协议和请求处理。
- tests/:测试套件,包括单元测试和集成测试。
开发指南
运行测试
-
使用 MCP 检查器运行全面测试:
./run.bat full -
或使用测试套件:
- 确保 SAP GUI 已安装并配置完成。
- 运行测试:
run.bat test server
调试和日志
- 在开发过程中,启用调试模式以获取详细的日志信息:
from sap_gui_server.sap_controller import SapController controller = SapController('MYSAPGUI-01', debug=True)
📄 许可证
[MIT License]
Scan to join WeChat group