连接器指南阅读约 5 分钟12 个 MCP 工具7 种语言

SAP S/4HANA OData MCP 接入 Microsoft Copilot

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

HC作者:HelpCode 团队更新于 5 分钟阅读 在 GitHub 开源

无需信用卡 · 7 天试用 · 提供自托管方案

SAP S/4HANA (OData)

SAP S/4HANA (OData)

Read SAP S/4HANA on-premise and Private Cloud through its OData services: find services in SAP's catalog, read their fields with SAP's labels, query released APIs and analytical views for finance, sales and inventory figures. Basic auth or OAuth, SAP client aware.

个工具

12

区域

INTL

类别

ERP

身份验证

Basic Auth

所需环境变量

SAP_ODATA_BASE_URLSAP_CLIENTSAP_LANGUAGESAP_ODATA_USERSAP_ODATA_PASSWORD
在 Cloud 上一键安装

7 天免费试用 · 无需信用卡

  • 7 天免费试用
    无需信用卡
  • 符合 GDPR,SOC 2 就绪
    数据驻留欧盟,审计日志
  • 在 GitHub 开源
    开源 · AGPL-3.0
  • 支持 ChatGPT、Claude、Gemini
    任何兼容 MCP 的客户端

摘要

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

引导式设置

2 分钟将 SAP S/4HANA 连接到 Microsoft Copilot

开始 AnythingMCP Cloud 免费试用,在引导式设置中连接 SAP S/4HANA,再把你的 MCP URL 添加到 Microsoft Copilot。无需代码,也无需自行运行服务器。

无需信用卡 · 7 天试用 · 提供自托管方案

试试这样问

SAP S/4HANA (OData) 的示例提示

点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。

SAP S/4HANA (OData) · 通过 MCP 实时
分享
Opus 4.7

Claude 是 AI,可能会出错。请核对回答。

💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → SAP S/4HANA (OData)、粘贴凭证、生成 MCP API key,即可完成。无 Docker、无 git clone、无本地服务器。

SAP S/4HANA OData + Microsoft Copilot

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

前提条件

完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:

SAP_ODATA_BASE_URL, SAP_CLIENT, SAP_LANGUAGE, SAP_ODATA_USER, SAP_ODATA_PASSWORD

步骤 1 — 获取凭证

  1. 用事务码 SU01,在 AI 要读取的集团(client)中创建一个类型为 System(不是 Dialog)的技术用户,并设置生产密码。
  2. 给它分配一个角色(PFCG),包含 AI 可使用的 OData 服务的 S_SERVICE 权限,以及仅限显示的业务权限(活动 03)。如果要让 AI 浏览目录,还需允许 V2 目录服务 /IWFND/CATALOGSERVICE 和 V4 服务目录。
  3. 确认服务已激活:V2 在 /IWFND/MAINT_SERVICE,V4 在 /IWFND/V4_ADMIN。现成工具使用 SAP 已发布的 API:API_JOURNALENTRYITEMBASIC_SRV、API_BILLING_DOCUMENT_SRV、API_SALES_ORDER_SRV、API_BUSINESS_PARTNER、API_MATERIAL_STOCK_SRV 和 API_PRODUCT_SRV。
  4. 把 SAP_ODATA_BASE_URL 设为 Gateway 主机加 HTTPS 端口,不带路径,例如 https://s4.example.com:44300。SAP_CLIENT 填三位数的集团号(例如 100),SAP_LANGUAGE 填登录语言(例如 ZH;字段标签会以该语言返回),SAP_ODATA_USER 和 SAP_ODATA_PASSWORD 填技术用户的用户名和密码。
  5. 安装连接器。这里没有 Authorize with Provider 步骤:连接器以技术用户身份通过 Basic 认证登录,并在每次调用时带上集团和语言。
  6. 先调用 s4_guide(不产生费用,也不访问 SAP),再用 billing 之类的业务词调用 s4_list_services,确认该用户能访问目录。

网络:Gateway 的 HTTPS 端口通常只能在公司内网访问。请在该网络内自托管 AnythingMCP,或通过 VPN 接入,并把 Gateway 主机加入 SSRF_ALLOWED_HOSTS,否则 AnythingMCP 会拒绝私有地址。只有当 Gateway 能从互联网访问时,AnythingMCP Cloud 才可用。

AI 如何找到数据:s4_list_services 按业务词搜索 SAP 目录(V2 和 V4),s4_describe_service 列出服务的实体集并标出分析型和参数化的实体集,s4_describe_entity 给出每个字段的 SAP 标签、每个金额对应的货币或单位字段,以及实体集要求的过滤条件,s4_query 和 s4_get_entity 读取数据行。调用发出前,字段名会先与服务的 $metadata 核对。常见场景下,s4_journal_entry_items、s4_billing_documents、s4_sales_orders、s4_business_partners、s4_material_stock 和 s4_products 直接调用已发布的 API,支持 filter、select、orderby、top 和 skip。目录类工具也适用于带 SAP Gateway 的 ECC 或 BW;现成工具需要 S/4HANA。

权限与只读设置:全部 12 个工具都只读。SAP 在每次调用时都会检查技术用户的权限,所以权限才是真正的边界:只给角色显示权限,并且只限 AI 可以看到的公司代码、销售组织和工厂。如需进一步收紧,在连接器的 OData 设置中,于 Allowed services 下列出 AI 可以调用的服务路径(* 可作通配符);其他服务一律拒绝。也可以在连接器页面上停用单个工具。

SAP 的 API 政策:SAP 要求第三方集成使用已发布的 API(SAP Business Accelerator Hub 上的 API_* 服务)或你自己构建的服务。请优先使用这些服务,而不是 Fiori 应用背后的内部服务,并据此设置 Allowed services。

Basic 认证或 OAuth:连接器以 Basic 认证安装。如果你的 Gateway 已配置 OAuth 2.0,可以在连接器页面上把认证方式切换为 OAuth 2.0。

限制:每次查询最多返回 1,000 行,现成工具默认返回 100 行(top)。需要汇总时,AI 会在分析型服务上聚合,或按公司代码、销售组织或工厂以及日期或会计期间过滤,而不是逐页读取全部数据。金额会带上货币,数量会带上单位;小数以字符串返回,以保持精确。

常见错误:401 表示用户名或密码错误,或该用户在此集团中被锁定。某个服务返回 403 Forbidden,表示技术用户缺少该服务的权限(S_SERVICE 或业务角色);404 表示该服务在此系统中未激活。如果私有地址被拒绝,说明主机不在 SSRF_ALLOWED_HOSTS 中。如果数据行看起来像演示数据,说明 SAP_CLIENT 指向了错误的集团。

改用 HANA SQL:如果希望 AI 用只读数据库用户、而不是 SAP 的应用权限,直接用 SQL 读取 S/4HANA 的表和 CDS 视图,请使用 SAP S/4HANA (HANA SQL) 连接器。其他任何 OData V2 或 V4 服务,请参阅 OData 连接器类型。

此连接器不会写入 SAP:不过账,也不创建或修改订单、凭证或主数据。

步骤 2 — 安装 adapter

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

步骤 3 — 在 Microsoft Copilot 中添加连接器

你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(https://cloud.anythingmcp.com/mcp/…)。本指南中出现 YOUR_SERVER_ID 的地方都用它替换。

Microsoft Copilot 通过在 Copilot Studio 中构建的智能体使用 MCP 服务器:把 AnythingMCP 作为工具添加到智能体,然后把智能体发布到 Microsoft 365 Copilot 和 Teams。Copilot Studio 从 Microsoft 的云端通过 Streamable HTTP 连接,AnythingMCP 支持这种方式。

  1. 在 Copilot Studio 中打开你的智能体(或新建一个),进入 Tools,选择 Add a tool → New tool → Model Context Protocol。
  2. 填写 Server name(例如 AnythingMCP)、说明连接器用途的 Server description,以及 Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID。Copilot Studio 根据描述决定何时调用该服务器。
  3. 身份验证选择 API key,把 Type 设为 Header,请求头名称填 X-API-Key,然后选择 Create。
  4. 在 Add tool 中选择 Create a new connection,粘贴 AnythingMCP 的 MCP API 密钥(MCP Servers → 你的服务器 → API keys),然后选择 Add to agent。
  5. 在智能体的 Test 窗格中试一试:提出需要用到 SAP S/4HANA OData 的工具的请求。
  6. 选择 Publish,然后进入 Channels → Microsoft 365 and Microsoft Teams,保持勾选 Make agent available in Microsoft Copilot,再选择 Add channel。See agent in Teams 会为你安装该智能体;在 Microsoft 365 Copilot 中输入 @ 并选择该智能体。

希望每个用户各自登录?请选择 OAuth 2.0 → Dynamic discovery 代替 API 密钥:每个用户会在智能体首次调用时登录 AnythingMCP。

自托管?请用你实例的公网 HTTPS 地址替换 https://cloud.anythingmcp.com。Copilot Studio 从 Microsoft 的云端连接,因此 localhost 无法使用。

可用工具

ToolWhat it does
s4_guideHow to read SAP S/4HANA through OData: the workflow (overview), filter syntax, analytical services and KPIs, finance, sales, inventory and…
s4_journal_entry_itemsJournal entry line items from the general ledger (API_JOURNALENTRYITEMBASIC_SRV / A_JournalEntryItemBasic): company code, fiscal year, G/L…
s4_billing_documentsBilling documents (API_BILLING_DOCUMENT_SRV / A_BillingDocument): invoices, credit memos and cancellations with date, sales organization…
s4_sales_ordersSales orders (API_SALES_ORDER_SRV / A_SalesOrder) with type, sales organization, sold-to party, creation date, net amount, currency and…
s4_business_partnersBusiness partners (API_BUSINESS_PARTNER / A_BusinessPartner): customers, suppliers and contacts with name, category and grouping
s4_material_stockMaterial stock (API_MATERIAL_STOCK_SRV / A_MatlStkInAcctMod) per material, plant, storage location, batch and stock type, in the material's…
s4_productsProducts (API_PRODUCT_SRV / A_Product) with type, group and base unit
s4_list_servicesList the OData services published by SAP S/4HANA (OData) (SAP Gateway catalog, V2 and V4), filtered by words in their name, title or…
s4_describe_serviceThe entity sets of a SAP S/4HANA (OData) OData service with their business labels, keys and whether they are analytical (the server…
s4_describe_entityThe fields of one entity set: labels, types, keys, the currency or unit field of each amount, the text field of each code, dimensions and…
s4_queryRead rows from an entity set of SAP S/4HANA (OData)
s4_get_entityRead one entity of SAP S/4HANA (OData) by its key, optionally with related entities

示例提示

  • “我们的 SAP 目录中哪些 OData 服务与开票凭证有关?其中哪些是已发布的 API?”
  • “根据开票凭证,按销售组织列出上个月的开票净销售额,不含已取消的凭证,并注明货币。”
  • “工厂 1000 中物料 FG-100 的库存有多少?按库存地点列出。”
  • “列出上个月在公司代码 1000 中过账的金额最大的 20 条日记账分录行项目,包括总账科目、金额和货币。”

FAQ

这适用于哪个 Copilot? 适用于工作中的 Microsoft 365 Copilot,通过 Copilot Studio 的智能体实现。面向个人账户的 Microsoft Copilot 应用无法添加自己的 MCP 服务器。

我需要什么? 一个可以使用 Copilot Studio 的工作账户(许可证或试用版),用于构建智能体。在 Microsoft 365 Copilot 或 Teams 中使用它的人需要拥有该智能体的访问权限:把它共享给他们,或请管理员为整个组织发布。如果你的组织对 Power Platform 连接器设置了数据策略,这些策略同样适用于 MCP 服务器。

智能体不调用工具。 检查请求头名称是否正好是 X-API-Key,密钥是否属于与 URL 相同的 MCP 服务器,并把 Server description 写得具体:Copilot Studio 根据它决定何时调用服务器。每次修改后重新发布智能体;在已打开的对话中输入 "start over" 即可使用新版本。

下一步

这份指南对你有帮助吗?

2 分钟将 SAP S/4HANA 连接到 Microsoft Copilot

开始 AnythingMCP Cloud 免费试用,在引导式设置中连接 SAP S/4HANA,再把你的 MCP URL 添加到 Microsoft Copilot。无需代码,也无需自行运行服务器。

相关指南

连接器

SAP S/4HANA OData MCP 接入 ChatGPT

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

连接器

SAP S/4HANA OData MCP 接入 Claude

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

连接器

SAP S/4HANA OData MCP 接入 Cursor

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

连接器

SAP S/4HANA OData MCP 接入 Gemini CLI

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

连接器

SAP S/4HANA OData MCP 接入 Meta Muse

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。

连接器

SAP S/4HANA OData MCP 服务器

让你的 AI 通过 OData 服务读取本地部署或 Private Cloud 上的 SAP S/4HANA:在 SAP Gateway 目录中查找服务,用 SAP 的标签读取字段,查询日记账分录、开票凭证、销售订单、业务伙伴、库存和产品。只读,使用一个 SAP 技术用户。