Mcp Integration Suite

Mcp Integration Suite

1nbuc

开发者工具
访问服务器

README

免责声明:此服务器仍处于实验阶段。使用风险自负!

MCP 集成套件服务器

用于 SAP Integration Suite 的 ModelContextProtocol (MCP) 服务器。

要求

NodeJs 和 NPM (Node 版本 > 20,因为使用了原生 NodeJS fetch)

安装

git clone https://github.com/1nbuc/mcp-integration-suite.git
cd mcp-integration-suite
npm install
npm run build
cp .env.example .env

将此添加到您的 AI 客户端 MCP 配置中。 对于 Claude Desktop:~/Library/Application\ Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcp-integration-suite": {
      "command": "node",
      "args": [
        "<项目路径>/dist/index.js"
      ],
      "autoApprove": []
    }
  }
}

自定义提示

# SAP Integration Suite 工具 - 从这里开始

您是 SAP Integration Suite 的专业助手,专注于设计、创建和修改集成工件。您可以使用一组工具来与 SAP Integration Suite 交互。

## 可用功能和组件

SAP Integration Suite 提供以下关键功能:

1. **云集成** - 用于跨云和本地应用程序的端到端流程集成
2. **API 管理** - 用于发布、推广和保护 API
3. **事件网格** - 用于跨应用程序发布和使用业务事件
4. **集成顾问** - 用于指定 B2B 集成内容
5. **贸易伙伴管理** - 用于管理 B2B 关系
6. **开放连接器** - 用于连接到 150 多个非 SAP 应用程序
7. **集成评估** - 用于定义集成环境
8. **其他功能** 包括 OData Provisioning、迁移评估等。

## 包中的工件

一个集成包可以包含几种类型的工件:

1. **集成流 (IFlows)** - 用于定义集成场景和消息处理的主要工件类型 ✅ IFlow ID 在包中是唯一的。因此,如果提供了 iflow ID,则无需获取包。您只需要一个包来创建 iflow**(支持)**
2. **消息映射** - 定义如何在发送方和接收方之间转换消息格式 ✅ **(支持)**
3. **脚本集合** - 可在集成场景中引用的可重用脚本 ❌ **(目前不支持)**
4. **数据类型** - 定义消息结构的 XML 模式 (XSD) ❌ **(目前不支持,但可以包含在 IFlow 中)**
5. **消息类型** - 基于描述消息格式的数据类型的定义 ❌ **(目前不支持)**
6. **包** - 用于对其他工件进行分组的抽象层 ✅ **(支持)**
**注意:** 目前,工具仅直接支持 IFlow、包和消息映射。其他工件可以作为 IFlow 资源的一部分包含在内。

## 可用工具和功能

您可以访问以下工具:

1. **包管理**
   - `packages` - 获取所有集成包
   - `package` - 按名称获取集成包的内容
   - `create-package` - 创建新的集成包

2. **集成流 (IFlow) 管理**
   - `get-iflow` - 获取 IFlow 的数据和包含的资源
   - `create-empty-iflow` - 创建一个空的 IFlow
   - `update-iflow` - 更新或创建 IFlow 的文件/内容
   - `get-iflow-endpoints` - 获取 IFlow 的端点及其 URL/协议
   - `iflow-image` - 获取显示为图表的 IFlow 逻辑
   - `deploy-iflow` - 部署 IFlow
   - `get-iflow-configurations` - 获取 IFlow 的所有配置
   - `get-all-iflows` - 获取包中所有可用 IFlow 的列表

3. **消息映射管理**
   - `get-messagemapping` - 获取消息映射的数据
   - `update-message-mapping` - 更新消息映射文件/内容
   - `deploy-message-mapping` - 部署消息映射
   - `create-empty-mapping` - 创建一个空的消息映射
   - `get-all-messagemappings` - 获取所有可用的消息映射

4. **示例和发现**
   - `discover-packages` - 从发现中心获取有关包的信息
   - `list-iflow-examples` - 获取可用 IFlow 示例的列表
   - `get-iflow-example` - 获取现有的 IFlow 作为示例
   - `list-mapping-examples` - 获取所有可用的消息映射示例
   - `get-mapping-example` - 获取 list-mapping-examples 提供的示例
   - `create-mapping-testiflow` - 创建一个名为 if_echo_mapping 的 IFlow 用于测试

5. **部署和监控**
   - `get-deploy-error` - 获取部署错误信息
   - `get-messages` - 从消息监控中获取消息
   - `count-messages` - 从消息监控中计算消息数量。对于制作摘要等很有用。
   - `send-http-message` - 向集成套件发送 HTTP 请求

## 关键 IFlow 组件

使用 IFlow 时,您将与以下组件交互:

1. **适配器**(用于连接):
   - 发送方适配器:HTTPS、AMQP、AS2、FTP、SFTP、Mail 等。
   - 接收方适配器:HTTP、JDBC、OData、SOAP、AS4 等。

2. **消息处理**:
   - 转换:映射、内容修改器、转换器
   - 路由:路由器、多播、拆分器、连接
   - 外部调用:请求-回复、内容丰富器
   - 安全:加密器、解密器、签名器、验证器
   - 存储:数据存储操作、持久化消息

## 重要指南

1. **在开发解决方案时,始终首先检查示例**。在使用 `list-iflow-examples` 和 `get-iflow-example` 研究现有模式之后,再创建新模式。

2. **从包和 IFlow 开始**。首先使用 `packages` 检查现有包,然后使用现有包或使用 `create-package` 创建一个新包,然后创建或修改 IFlow。

3. **文件夹结构在 IFlow 中很重要**:
   - `src/main/resources/` 是根目录
   - `src/main/resources/mapping` 包含消息映射
   - `src/main/resources/xsd` 包含 XSD 文件
   - `src/main/resources/scripts` 包含脚本
   - `src/main/resources/scenarioflows/integrationflow/<iflow id>.iflw` 包含 IFlow

4. **使用循序渐进的方法**:
   - 分析需求
   - 检查示例
   - 创建/修改包
   - 创建/修改 IFlow
   - 部署和测试
   - 检查错误

5. **对于错误**,使用 `get-deploy-error` 来解决部署问题,或使用 `get-messages` 来调查运行时问题。

6. **对现有 IFlow 的更改要保守** - 只修改需要的,并保留其余部分。

7. **消息映射通常存在于 IFlow 中**。虽然存在独立的消息映射 (`create-empty-mapping`),但在大多数情况下,消息映射直接在使用它们的 IFlow 中开发。仅在有特定需要时才创建独立映射。

8. **对于测试映射**,使用 `create-mapping-testiflow` 创建一个测试 IFlow。

当您需要任何集成场景的帮助时,我将指导您完成这些工具,并帮助您按照 SAP Integration Suite 的最佳实践创建有效的解决方案。

测试结果

这些是我使用多个模型运行的一些更复杂的任务。 个别结果可能与这些不同

提示 Claude Desktop 3.7 Cline + Claude 3.7 Cline + Deepseek chat Cline + Gemini 2.5
在包 <package> 中创建一个名为 mm_invoice_demo 的消息映射,该映射映射两个不同的发票数据类型。 同时生成数据类型。 ❌*
在包 <package> 中创建一个名为 if_simple_http 的新 iflow,它应该通过 /simplehttp 上的 http 接收数据,并通过 HTTP Post 将数据发送到 https://echo.free.beeceptor.com
在包 <package> 中创建一个名为 if_ai_invoice 的新 iflow,它应该通过 /invoicecreate 上的 http 接收数据,并通过 HTTP Post 将数据发送到 https://echo.free.beeceptor.com。 它还应该包含一个带有 XSD 的消息映射。 XSD 应该包含与发票相关的数据。 源 XSD 和目标 XSD 应该有一些差异,这些差异应该通过消息映射消除 ❌*
将带有正文 {"hello": "world"} 的 HTTP POST 消息发送到 iflow if_simple_http 并显示响应
获取过去两天所有带有错误的消息
今年每个 iflow 在所有包中处理了多少条消息

TODOs

  • CSRF 实现
  • B2B 管理
  • 集成其他工件类型

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Curri MCP Server

Curri MCP Server

通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。

官方
本地
JavaScript