@oobe-protocol-labs/sap-mcp-server 0.7.4 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +140 -0
- package/README.md +14 -7
- package/USER_DOCS/00_START_HERE.md +45 -7
- package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +2 -0
- package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +24 -6
- package/USER_DOCS/04_CLIENT_CONFIGS.md +26 -15
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +44 -22
- package/assets/logos/drift.svg +12 -0
- package/assets/logos/jupiter.ico +0 -0
- package/assets/logos/mcp.svg +11 -0
- package/assets/logos/meteora.png +0 -0
- package/assets/logos/orca.ico +0 -0
- package/assets/logos/raydium.ico +0 -0
- package/assets/logos/smithery.svg +11 -0
- package/assets/oobe-logo.png +0 -0
- package/dist/config/mcp-client-injection.d.ts +26 -7
- package/dist/config/mcp-client-injection.d.ts.map +1 -1
- package/dist/config/mcp-client-injection.js +182 -58
- package/dist/config/mcp-client-injection.js.map +1 -1
- package/dist/config/paths.d.ts +6 -0
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +14 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/config/wizard.d.ts.map +1 -1
- package/dist/config/wizard.js +92 -57
- package/dist/config/wizard.js.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.js +1 -1
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +12 -0
- package/dist/payments/pricing.js.map +1 -1
- package/dist/payments/x402-paid-call.d.ts +181 -1
- package/dist/payments/x402-paid-call.d.ts.map +1 -1
- package/dist/payments/x402-paid-call.js +432 -6
- package/dist/payments/x402-paid-call.js.map +1 -1
- package/dist/prompts/context/sap-agent-context.prompt.js +7 -3
- package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
- package/dist/remote/public-home/escape.d.ts +11 -0
- package/dist/remote/public-home/escape.d.ts.map +1 -0
- package/dist/remote/public-home/escape.js +20 -0
- package/dist/remote/public-home/escape.js.map +1 -0
- package/dist/remote/public-home/index.d.ts +8 -0
- package/dist/remote/public-home/index.d.ts.map +1 -0
- package/dist/remote/public-home/index.js +57 -0
- package/dist/remote/public-home/index.js.map +1 -0
- package/dist/remote/public-home/scripts.d.ts +6 -0
- package/dist/remote/public-home/scripts.d.ts.map +1 -0
- package/dist/remote/public-home/scripts.js +106 -0
- package/dist/remote/public-home/scripts.js.map +1 -0
- package/dist/remote/public-home/sections.d.ts +67 -0
- package/dist/remote/public-home/sections.d.ts.map +1 -0
- package/dist/remote/public-home/sections.js +732 -0
- package/dist/remote/public-home/sections.js.map +1 -0
- package/dist/remote/public-home/styles.d.ts +6 -0
- package/dist/remote/public-home/styles.d.ts.map +1 -0
- package/dist/remote/public-home/styles.js +1534 -0
- package/dist/remote/public-home/styles.js.map +1 -0
- package/dist/remote/public-home/types.d.ts +97 -0
- package/dist/remote/public-home/types.d.ts.map +1 -0
- package/dist/remote/public-home/types.js +2 -0
- package/dist/remote/public-home/types.js.map +1 -0
- package/dist/remote/server.d.ts +3 -1
- package/dist/remote/server.d.ts.map +1 -1
- package/dist/remote/server.js +67 -282
- package/dist/remote/server.js.map +1 -1
- package/dist/security/tool-permissions.d.ts.map +1 -1
- package/dist/security/tool-permissions.js +5 -0
- package/dist/security/tool-permissions.js.map +1 -1
- package/dist/tools/magicblock-tools.js +6 -6
- package/dist/tools/magicblock-tools.js.map +1 -1
- package/dist/tools/profile-tools.d.ts.map +1 -1
- package/dist/tools/profile-tools.js +136 -33
- package/dist/tools/profile-tools.js.map +1 -1
- package/dist/tools/register-tools.d.ts.map +1 -1
- package/dist/tools/register-tools.js +5 -0
- package/dist/tools/register-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +360 -28
- package/dist/tools/x402-paid-call-tool.js.map +1 -1
- package/dist/tui/config-wizard.js +2 -2
- package/dist/tui/config-wizard.js.map +1 -1
- package/dist/tui/wizard-save.d.ts.map +1 -1
- package/dist/tui/wizard-save.js +7 -3
- package/dist/tui/wizard-save.js.map +1 -1
- package/dist/wizard-core/desktop-flow.d.ts +40 -1
- package/dist/wizard-core/desktop-flow.d.ts.map +1 -1
- package/dist/wizard-core/desktop-flow.js +207 -15
- package/dist/wizard-core/desktop-flow.js.map +1 -1
- package/docs/03_CONFIGURATION_AND_WIZARD.md +7 -2
- package/docs/06_PAYMENTS_X402_AND_PAYSH.md +30 -7
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
- package/docs/14_DESKTOP_WIZARD_RELEASE.md +25 -5
- package/docs/15_DASHBOARD_SCREENSHARE_SCRIPT.md +137 -0
- package/docs/README.md +23 -2
- package/package.json +1 -1
- package/server.json +3 -3
- package/skills/sap-mcp/SKILL.md +27 -7
- package/skills/sap-payments-x402/SKILL.md +37 -13
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,146 @@ All notable changes to this project are documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
No unreleased changes yet.
|
|
8
|
+
|
|
9
|
+
## 0.9.0 - 2026-07-16
|
|
10
|
+
|
|
11
|
+
Release-candidate quality pass for the hosted-first SAP MCP wizard, desktop
|
|
12
|
+
installer, public dashboard, and local non-custodial payment bridge before the
|
|
13
|
+
official 1.0.0 line.
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- Added homepage and docs quick-start steppers for the two supported integration
|
|
18
|
+
paths: native desktop download for normal users and CLI wizard for developers,
|
|
19
|
+
with direct references to `/docs` pages for desktop setup, client configs, and
|
|
20
|
+
x402/pay.sh payments.
|
|
21
|
+
- Redesigned the hosted landing page navigation and integration path as a
|
|
22
|
+
server-rendered glass navigation bar plus shadcn-inspired setup cards with
|
|
23
|
+
native Windows, macOS, and Linux download actions.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
|
|
27
|
+
- Fixed the packaged Windows desktop wizard startup by converting the internal
|
|
28
|
+
`dist/wizard-core` module path to a `file://` URL before dynamic ESM import.
|
|
29
|
+
This prevents `ERR_UNSUPPORTED_ESM_URL_SCHEME` when the app is installed under
|
|
30
|
+
a `C:\...` path.
|
|
31
|
+
- Fixed desktop wizard responsiveness on narrower macOS and Windows windows by
|
|
32
|
+
removing page-level horizontal overflow, collapsing the setup chooser before
|
|
33
|
+
it clips, and constraining long paths/URLs inside cards.
|
|
34
|
+
- Added a persistent Home action to the desktop wizard sidebar so users can
|
|
35
|
+
return to the initial setup choice after finishing a repair or full setup.
|
|
36
|
+
- Fixed landing page setup-step layout on desktop and mobile by moving long CLI
|
|
37
|
+
commands out of numbered steps, making command blocks horizontally scrollable,
|
|
38
|
+
and preventing equal-height cards from stretching the stepper content.
|
|
39
|
+
- Refined the public install and native download cards so the release badge,
|
|
40
|
+
platform cards, and direct installer links clearly target the current 0.9.0
|
|
41
|
+
desktop wizard assets.
|
|
42
|
+
- Added the missing OpenAPI description for generic JSON-RPC `params` so
|
|
43
|
+
x402/pay.sh catalog validators and agent indexers can explain every required
|
|
44
|
+
request-body field.
|
|
45
|
+
- Removed MagicBlock `mock` authentication switches from public MCP tool schemas
|
|
46
|
+
and request forwarding so production tools expose only real API flows.
|
|
47
|
+
- Made hosted `sap` plus local `sap_payments` runtime injection platform-aware
|
|
48
|
+
end to end, with Windows tests proving that Codex, Claude, Hermes, and
|
|
49
|
+
OpenClaw payment bridge configs use `npx.cmd` where required.
|
|
50
|
+
|
|
51
|
+
### Verification
|
|
52
|
+
|
|
53
|
+
- `pnpm run lint`
|
|
54
|
+
- `pnpm run typecheck`
|
|
55
|
+
- `pnpm run build`
|
|
56
|
+
- `pnpm test -- --run`
|
|
57
|
+
- `pnpm run desktop:renderer:build`
|
|
58
|
+
- `npm pack --dry-run --cache ./.npm-cache`
|
|
59
|
+
|
|
60
|
+
## 0.8.0 - 2026-07-14
|
|
61
|
+
|
|
62
|
+
### Changed
|
|
63
|
+
|
|
64
|
+
- Made the normal wizard path hosted-first: `hosted-api` is now the default
|
|
65
|
+
recommended mode because agents should connect to
|
|
66
|
+
`https://mcp.sap.oobeprotocol.ai/mcp` while signatures and x402 proofs stay
|
|
67
|
+
local through the user SAP MCP profile.
|
|
68
|
+
- Promoted the native `sap_payments` MCP bridge from an optional add-on style
|
|
69
|
+
step to the recommended hosted paid/write setup for Claude, Hermes, Codex,
|
|
70
|
+
OpenClaw, and compatible runtimes.
|
|
71
|
+
- Updated the desktop wizard default draft to use hosted SAP MCP plus local
|
|
72
|
+
signing, added clearer normie-friendly setup copy, and added runtime actions
|
|
73
|
+
for selecting detected or all supported agent runtimes.
|
|
74
|
+
- Updated README and user docs to describe the recommended two-entry runtime
|
|
75
|
+
configuration: hosted `sap` plus local non-custodial `sap_payments`.
|
|
76
|
+
|
|
77
|
+
### Verification
|
|
78
|
+
|
|
79
|
+
- `CI=true pnpm run typecheck`
|
|
80
|
+
- `CI=true pnpm test -- --run src/payments/pricing.test.ts src/server/create-server.test.ts src/config/mcp-client-injection.test.ts src/wizard-core/desktop-flow.test.ts`
|
|
81
|
+
- `CI=true pnpm run lint`
|
|
82
|
+
- `CI=true pnpm run build`
|
|
83
|
+
- `CI=true pnpm run desktop:renderer:build`
|
|
84
|
+
|
|
85
|
+
## 0.7.7 - 2026-07-14
|
|
86
|
+
|
|
87
|
+
### Changed
|
|
88
|
+
|
|
89
|
+
- Updated hosted profile tools to report the remote server as an explicit
|
|
90
|
+
accountless, non-custodial gateway instead of exposing a misleading
|
|
91
|
+
`default` profile from the VPS runtime.
|
|
92
|
+
- Added agent-facing guidance that local user profile, wallet, and signer
|
|
93
|
+
status must be read through the local `sap_payments.sap_profile_current`
|
|
94
|
+
bridge when the caller is connected to hosted remote MCP.
|
|
95
|
+
- Moved basic wallet balance reads (`sol_get_balance`,
|
|
96
|
+
`spl-token_getBalance`, and `spl-token_getTokenAccounts`) into the free
|
|
97
|
+
hosted tier so balance checks no longer depend on x402 facilitator
|
|
98
|
+
settlement or blockhash simulation.
|
|
99
|
+
|
|
100
|
+
### Verification
|
|
101
|
+
|
|
102
|
+
- `CI=true pnpm run typecheck`
|
|
103
|
+
- `CI=true pnpm test -- --run src/payments/pricing.test.ts`
|
|
104
|
+
|
|
105
|
+
## 0.7.6 - 2026-07-14
|
|
106
|
+
|
|
107
|
+
### Changed
|
|
108
|
+
|
|
109
|
+
- Renamed desktop wizard and CLI wizard language from separate x402
|
|
110
|
+
plugin/addon setup to the native local SAP MCP `sap_payments` bridge.
|
|
111
|
+
- Updated user docs, runtime snippets, and skills to make
|
|
112
|
+
`sap_payments_call_paid_tool` the default hosted paid-tool path, with the
|
|
113
|
+
standalone `sap-mcp-x402-paid-call` command documented only as a legacy
|
|
114
|
+
terminal/custom-wrapper fallback.
|
|
115
|
+
- Prepared desktop release automation for signed macOS and Windows artifacts by
|
|
116
|
+
selecting OS-specific certificate secrets and publishing `SHA256SUMS.txt`
|
|
117
|
+
alongside DMG/ZIP/EXE/tar.gz outputs.
|
|
118
|
+
|
|
119
|
+
### Verification
|
|
120
|
+
|
|
121
|
+
- `CI=true pnpm run verify:release`
|
|
122
|
+
|
|
123
|
+
## 0.7.5 - 2026-07-14
|
|
124
|
+
|
|
125
|
+
### Added
|
|
126
|
+
|
|
127
|
+
- Added native SAP MCP x402 challenge tools for agent runtimes:
|
|
128
|
+
`sap_payments_call_paid_tool`, `sap_payments_prepare_challenge`,
|
|
129
|
+
`sap_payments_sign_challenge`, and `sap_payments_verify_receipt`.
|
|
130
|
+
- Kept `sap_x402_paid_call` as a backward-compatible alias while making
|
|
131
|
+
`sap_payments_call_paid_tool` the recommended high-level path for hosted
|
|
132
|
+
paid/write tool calls.
|
|
133
|
+
- Added local receipt inspection coverage for `PAYMENT-RESPONSE` and
|
|
134
|
+
`X-PAYMENT-RESPONSE` headers.
|
|
135
|
+
|
|
136
|
+
### Changed
|
|
137
|
+
|
|
138
|
+
- Updated runtime injection snippets so the local `sap_payments` bridge exposes
|
|
139
|
+
the complete payment challenge toolchain instead of only the legacy helper.
|
|
140
|
+
- Updated SAP MCP skills, prompts, and payment docs to teach agents the native
|
|
141
|
+
x402 challenge flow and avoid terminal/direct-RPC bypasses.
|
|
142
|
+
|
|
143
|
+
### Verification
|
|
144
|
+
|
|
145
|
+
- `CI=true pnpm run verify:release`
|
|
146
|
+
|
|
7
147
|
## 0.7.4 - 2026-07-13
|
|
8
148
|
|
|
9
149
|
### Changed
|
package/README.md
CHANGED
|
@@ -80,7 +80,12 @@ or from source:
|
|
|
80
80
|
node dist/cli.js
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
-
Hosted customers connect their agents to `https://mcp.sap.oobeprotocol.ai/mcp`, but signing remains user-controlled.
|
|
83
|
+
Hosted customers connect their agents to `https://mcp.sap.oobeprotocol.ai/mcp`, but signing remains user-controlled. The recommended setup for most users is the wizard-managed pair of MCP entries:
|
|
84
|
+
|
|
85
|
+
- `sap`: hosted Streamable HTTP SAP MCP at `https://mcp.sap.oobeprotocol.ai/mcp`;
|
|
86
|
+
- `sap_payments`: local non-custodial payment bridge for x402/pay.sh paid/write calls.
|
|
87
|
+
|
|
88
|
+
Any user who wants to pay x402/pay.sh charges, register or operate a SAP identity, or execute value-moving Solana/SAP tools should run the wizard first and keep the dedicated wallet under `~/.config/mcp-sap/keypairs/` or behind an external signer. Read-only hosted discovery can use the remote URL without a local signer.
|
|
84
89
|
|
|
85
90
|
## 4. Local Client Config
|
|
86
91
|
|
|
@@ -112,13 +117,14 @@ For paid/write hosted tools, add the local non-custodial payment bridge as well:
|
|
|
112
117
|
```toml
|
|
113
118
|
[mcp_servers.sap_payments]
|
|
114
119
|
command = "npx"
|
|
115
|
-
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"]
|
|
116
|
-
|
|
120
|
+
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"]
|
|
121
|
+
startup_timeout_sec = 300
|
|
117
122
|
tool_timeout_sec = 300
|
|
118
123
|
|
|
119
124
|
[mcp_servers.sap_payments.env]
|
|
120
125
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
121
|
-
|
|
126
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY = "true"
|
|
127
|
+
SAP_ALLOWED_TOOLS = "all"
|
|
122
128
|
SAP_LOG_LEVEL = "info"
|
|
123
129
|
```
|
|
124
130
|
|
|
@@ -129,7 +135,7 @@ Codex supports Streamable HTTP MCP servers with URL-based entries in `config.tom
|
|
|
129
135
|
```toml
|
|
130
136
|
[mcp_servers.sap]
|
|
131
137
|
command = "npx"
|
|
132
|
-
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"]
|
|
138
|
+
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"]
|
|
133
139
|
|
|
134
140
|
[mcp_servers.sap.env]
|
|
135
141
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
@@ -221,7 +227,8 @@ npx sap-mcp-pay-sh-spec \
|
|
|
221
227
|
See [06. Payments, x402, And pay.sh](docs/06_PAYMENTS_X402_AND_PAYSH.md).
|
|
222
228
|
|
|
223
229
|
For local agent runtimes that cannot replay x402 challenges natively, install
|
|
224
|
-
the wizard's `
|
|
230
|
+
the wizard's local `sap_payments` bridge and call `sap_payments_call_paid_tool`.
|
|
231
|
+
The legacy CLI helper is still available for terminal use:
|
|
225
232
|
|
|
226
233
|
```bash
|
|
227
234
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-x402-paid-call \
|
|
@@ -255,7 +262,7 @@ Installed binaries:
|
|
|
255
262
|
| `sap-signing-proxy` | Local signing proxy |
|
|
256
263
|
| `sap-mcp-facilitator` | Self-hosted x402 SVM facilitator |
|
|
257
264
|
| `sap-mcp-pay-sh-spec` | pay.sh provider YAML generator |
|
|
258
|
-
| `sap-mcp-x402-paid-call` |
|
|
265
|
+
| `sap-mcp-x402-paid-call` | Legacy terminal/custom-wrapper fallback for hosted x402 paid MCP tools |
|
|
259
266
|
|
|
260
267
|
## 8. Documentation
|
|
261
268
|
|
|
@@ -15,19 +15,45 @@ Use one of two deployment modes:
|
|
|
15
15
|
|
|
16
16
|
Hosted MCP still requires a local SAP MCP profile when the agent needs to sign payments or value-moving transactions. The hosted server never receives keypair bytes. The user's machine or external signer owns the trust boundary.
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Choose one setup path:
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
| Path | Best For | What It Does |
|
|
21
|
+
| --- | --- | --- |
|
|
22
|
+
| Native Desktop Wizard | Non-technical users and first-time setup | Downloads a guided GUI, creates the local SAP profile, detects runtimes, and configures hosted `sap` plus local `sap_payments`. |
|
|
23
|
+
| CLI Wizard | Developers, terminal users, servers | Runs the same setup from npm and can print or inject runtime config. |
|
|
24
|
+
|
|
25
|
+
### Native Desktop Wizard
|
|
26
|
+
|
|
27
|
+
1. Download the wizard from GitHub releases or from the hosted downloads descriptor.
|
|
28
|
+
2. Open the wizard and choose **Full hosted SAP MCP setup**.
|
|
29
|
+
3. Select detected runtimes such as Codex, Claude, Hermes, or OpenClaw.
|
|
30
|
+
4. Restart the agent runtime and connect to hosted SAP MCP.
|
|
23
31
|
|
|
24
|
-
|
|
32
|
+
Release downloads:
|
|
25
33
|
|
|
26
34
|
```txt
|
|
27
35
|
https://github.com/OOBE-PROTOCOL/sap-mcp/releases
|
|
36
|
+
https://mcp.sap.oobeprotocol.ai/wizard/downloads.json
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
More details:
|
|
40
|
+
|
|
41
|
+
```txt
|
|
42
|
+
https://mcp.sap.oobeprotocol.ai/docs/#/user/06_DESKTOP_GUI_WIZARD
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### CLI Wizard
|
|
46
|
+
|
|
47
|
+
Run the wizard:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-config wizard
|
|
28
51
|
```
|
|
29
52
|
|
|
30
|
-
|
|
53
|
+
1. Accept the default **hosted-api** mode for hosted SAP MCP.
|
|
54
|
+
2. Create or import the dedicated local SAP MCP wallet profile.
|
|
55
|
+
3. Let the wizard configure hosted `sap` plus local `sap_payments` for supported runtimes.
|
|
56
|
+
4. Use `sap_payments_call_paid_tool` when a hosted tool requires x402 payment.
|
|
31
57
|
|
|
32
58
|
Show the active profile:
|
|
33
59
|
|
|
@@ -47,6 +73,18 @@ Hosted documentation:
|
|
|
47
73
|
https://mcp.sap.oobeprotocol.ai/docs
|
|
48
74
|
```
|
|
49
75
|
|
|
76
|
+
Client config docs:
|
|
77
|
+
|
|
78
|
+
```txt
|
|
79
|
+
https://mcp.sap.oobeprotocol.ai/docs/#/user/04_CLIENT_CONFIGS
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Payment docs:
|
|
83
|
+
|
|
84
|
+
```txt
|
|
85
|
+
https://mcp.sap.oobeprotocol.ai/docs/#/user/03_PAYMENTS_X402_PAYSH
|
|
86
|
+
```
|
|
87
|
+
|
|
50
88
|
Wizard descriptor:
|
|
51
89
|
|
|
52
90
|
```txt
|
|
@@ -149,4 +187,4 @@ npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-config au
|
|
|
149
187
|
| `03_PAYMENTS_X402_PAYSH.md` | x402, pay.sh pay-per-use, and pay.sh subscriptions |
|
|
150
188
|
| `04_CLIENT_CONFIGS.md` | Claude, Hermes, Codex, OpenClaw config examples |
|
|
151
189
|
| `05_SKILLS_AND_TOOLS.md` | Skills, tool selection, and security behavior |
|
|
152
|
-
| `06_DESKTOP_GUI_WIZARD.md` | Desktop GUI wizard install, hosted setup,
|
|
190
|
+
| `06_DESKTOP_GUI_WIZARD.md` | Desktop GUI wizard install, hosted setup, local payment bridge, and runtime behavior |
|
|
@@ -89,6 +89,8 @@ Read-only discovery can connect directly to the hosted MCP URL. Any agent that n
|
|
|
89
89
|
|
|
90
90
|
If `sap_profile_current` reports `runtime.signerConfigured: false` on the hosted server, read it as a non-custodial guarantee: OOBE is not holding the user's wallet. It is not a reason to switch to local stdio automatically. Paid hosted tools should complete the x402/pay.sh payment flow from the user's local SAP profile or external signer. Use local stdio only when the user explicitly chooses local execution or the client cannot support remote Streamable HTTP/x402.
|
|
91
91
|
|
|
92
|
+
Hosted remote is accountless. If `sap_profile_current` returns `accountModel: hosted-remote-accountless`, the hosted server cannot see the user's local `~/.config/mcp-sap` profile and should not be summarized as profile `default`. Use the local `sap_payments.sap_payments_profile_current` bridge to inspect the user's real profile, wallet, and signer status.
|
|
93
|
+
|
|
92
94
|
Agent-facing summary should say: "Hosted SAP MCP is connected. OOBE is non-custodial; user signatures come from the local SAP profile or external signer." Avoid "signer not configured", "read-only only", or "writes unavailable" unless a specific tool call returns that exact error.
|
|
93
95
|
|
|
94
96
|
## 3. Install And Configure
|
|
@@ -54,9 +54,21 @@ Hosted SAP MCP accepts payment proof headers used by the x402/payment flow and e
|
|
|
54
54
|
|
|
55
55
|
The payment receipt should be treated as part of the tool output provenance. For paid hosted tools, agents should bind the receipt to the canonical request hash, tool name, method params, and returned result. The canonical hash ignores JSON-RPC `id`, so normal agent retries do not invalidate the receipt.
|
|
56
56
|
|
|
57
|
-
## 3. Local
|
|
57
|
+
## 3. Local SAP MCP Payment Bridge
|
|
58
58
|
|
|
59
|
-
Most agent runtimes can connect to hosted SAP MCP directly, but not every runtime can automatically sign an x402 challenge and replay the paid MCP request.
|
|
59
|
+
Most agent runtimes can connect to hosted SAP MCP directly, but not every runtime can automatically sign an x402 challenge and replay the paid MCP request. The recommended fix is the local `sap_payments` MCP bridge created by the wizard. Agents should call:
|
|
60
|
+
|
|
61
|
+
```txt
|
|
62
|
+
sap_payments_readiness
|
|
63
|
+
sap_payments_call_paid_tool
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
`sap_payments_readiness` is free. It verifies the hosted endpoint, local bridge,
|
|
67
|
+
active profile, signer public key, SOL/USDC balance, and local commerce policy
|
|
68
|
+
limits before the agent attempts a paid/write flow. It never returns keypair
|
|
69
|
+
bytes.
|
|
70
|
+
|
|
71
|
+
The standalone CLI helper remains available as a terminal/custom-wrapper fallback:
|
|
60
72
|
|
|
61
73
|
```bash
|
|
62
74
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-x402-paid-call \
|
|
@@ -74,27 +86,33 @@ The helper:
|
|
|
74
86
|
3. receives the x402 challenge for the requested hosted tool;
|
|
75
87
|
4. signs the payment payload locally with the user's SAP MCP profile wallet;
|
|
76
88
|
5. retries the same MCP method and params with `PAYMENT-SIGNATURE`;
|
|
77
|
-
6. returns the hosted MCP response plus the settlement receipt
|
|
89
|
+
6. returns the hosted MCP response plus the settlement receipt and an audit
|
|
90
|
+
object containing the intent id, profile, signer public key, payment details,
|
|
91
|
+
receipt, attempts, and retry history.
|
|
78
92
|
|
|
79
|
-
Install or
|
|
93
|
+
Install or repair runtime bridge config from the wizard:
|
|
80
94
|
|
|
81
95
|
```bash
|
|
82
96
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-config wizard
|
|
83
97
|
```
|
|
84
98
|
|
|
85
|
-
The wizard
|
|
99
|
+
The wizard can also write a local reference bundle under:
|
|
86
100
|
|
|
87
101
|
```txt
|
|
88
102
|
~/.config/mcp-sap/addons/x402-paid-call
|
|
89
103
|
```
|
|
90
104
|
|
|
91
|
-
Local stdio SAP MCP also exposes `sap_x402_paid_call` when the current process has a user-controlled wallet profile. The OOBE hosted server does not advertise
|
|
105
|
+
Local stdio SAP MCP also exposes the `sap_payments_call_paid_tool` challenge bridge and the legacy `sap_x402_paid_call` alias when the current process has a user-controlled wallet profile. The OOBE hosted server does not advertise these local signing helpers in non-custodial mode because payment signing must happen on the user's machine, not on `mcp.sap.oobeprotocol.ai`.
|
|
106
|
+
|
|
107
|
+
Basic wallet reads do not require x402. Call `sol_get_balance`, `spl-token_getBalance`, and `spl-token_getTokenAccounts` directly on hosted SAP MCP. They should not be routed through the local payment bridge and should not depend on the facilitator.
|
|
92
108
|
|
|
93
109
|
Security boundaries:
|
|
94
110
|
|
|
95
111
|
- keypair bytes stay local and are never included in MCP client config;
|
|
96
112
|
- every paid call requires `--max-usd` / `maxPriceUsd`;
|
|
97
113
|
- every paid call requires `--confirm` / `confirm: true`;
|
|
114
|
+
- run `sap_payments_readiness` before paid/write workflows and respect the
|
|
115
|
+
returned local policy limits;
|
|
98
116
|
- transient settlement failures such as `BlockhashNotFound`,
|
|
99
117
|
`transaction_simulation_failed`, `node is behind`, or `fetch failed` should
|
|
100
118
|
be retried with a fresh challenge using `--max-attempts 5`;
|
|
@@ -45,13 +45,14 @@ url = "https://mcp.sap.oobeprotocol.ai/mcp"
|
|
|
45
45
|
|
|
46
46
|
[mcp_servers.sap_payments]
|
|
47
47
|
command = "npx.cmd"
|
|
48
|
-
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"]
|
|
49
|
-
|
|
48
|
+
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"]
|
|
49
|
+
startup_timeout_sec = 300
|
|
50
50
|
tool_timeout_sec = 300
|
|
51
51
|
|
|
52
52
|
[mcp_servers.sap_payments.env]
|
|
53
53
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
54
|
-
|
|
54
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY = "true"
|
|
55
|
+
SAP_ALLOWED_TOOLS = "all"
|
|
55
56
|
SAP_LOG_LEVEL = "info"
|
|
56
57
|
```
|
|
57
58
|
|
|
@@ -64,7 +65,7 @@ the complete local stdio SAP MCP process instead of using the hosted endpoint, u
|
|
|
64
65
|
```toml
|
|
65
66
|
[mcp_servers.sap]
|
|
66
67
|
command = "npx.cmd"
|
|
67
|
-
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"]
|
|
68
|
+
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"]
|
|
68
69
|
|
|
69
70
|
[mcp_servers.sap.env]
|
|
70
71
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
@@ -110,6 +111,7 @@ Use this when the client requires stdio:
|
|
|
110
111
|
"cwd": "/absolute/path/to/sap-mcp-server",
|
|
111
112
|
"env": {
|
|
112
113
|
"SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE": "false",
|
|
114
|
+
"SAP_MCP_PAYMENTS_BRIDGE_ONLY": "true",
|
|
113
115
|
"SAP_LOG_LEVEL": "info"
|
|
114
116
|
}
|
|
115
117
|
}
|
|
@@ -128,6 +130,7 @@ mcp_servers:
|
|
|
128
130
|
cwd: /absolute/path/to/sap-mcp-server
|
|
129
131
|
env:
|
|
130
132
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE: "false"
|
|
133
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY: "true"
|
|
131
134
|
SAP_LOG_LEVEL: info
|
|
132
135
|
```
|
|
133
136
|
|
|
@@ -141,6 +144,7 @@ cwd = "/absolute/path/to/sap-mcp-server"
|
|
|
141
144
|
|
|
142
145
|
[mcp_servers.sap.env]
|
|
143
146
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
147
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY = "true"
|
|
144
148
|
SAP_LOG_LEVEL = "info"
|
|
145
149
|
```
|
|
146
150
|
|
|
@@ -154,15 +158,15 @@ Run:
|
|
|
154
158
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-config wizard
|
|
155
159
|
```
|
|
156
160
|
|
|
157
|
-
## 8.
|
|
161
|
+
## 8. Local SAP MCP Payment Bridge
|
|
158
162
|
|
|
159
|
-
Hosted SAP MCP paid tools return an x402 challenge. Some agent runtimes expose remote MCP tools but do not yet have a native x402 replay path. The wizard
|
|
163
|
+
Hosted SAP MCP paid tools return an x402 challenge. Some agent runtimes expose remote MCP tools but do not yet have a native x402 replay path. The wizard configures a local `sap_payments` MCP bridge for Hermes, Claude, Codex, OpenClaw, or custom runtimes. It can also install a reference bundle for repair/custom clients:
|
|
160
164
|
|
|
161
165
|
```txt
|
|
162
166
|
~/.config/mcp-sap/addons/x402-paid-call
|
|
163
167
|
```
|
|
164
168
|
|
|
165
|
-
The
|
|
169
|
+
Normal agents should call `sap_payments_call_paid_tool` through the local `sap_payments` bridge. The standalone command is a terminal/custom-wrapper fallback:
|
|
166
170
|
|
|
167
171
|
```bash
|
|
168
172
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-x402-paid-call \
|
|
@@ -176,6 +180,11 @@ For Codex, the recommended runtime integration is the local `sap_payments` MCP
|
|
|
176
180
|
bridge shown above. It exposes only:
|
|
177
181
|
|
|
178
182
|
```txt
|
|
183
|
+
sap_payments_readiness
|
|
184
|
+
sap_payments_call_paid_tool
|
|
185
|
+
sap_payments_prepare_challenge
|
|
186
|
+
sap_payments_sign_challenge
|
|
187
|
+
sap_payments_verify_receipt
|
|
179
188
|
sap_x402_paid_call
|
|
180
189
|
sap_profile_current
|
|
181
190
|
sap_x402_estimate_cost
|
|
@@ -185,14 +194,16 @@ For Claude Code, use the official MCP CLI pattern:
|
|
|
185
194
|
|
|
186
195
|
```bash
|
|
187
196
|
claude mcp add --transport http sap https://mcp.sap.oobeprotocol.ai/mcp
|
|
188
|
-
claude mcp add --transport stdio sap_payments -- npx --yes --package @oobe-protocol-labs/sap-mcp-server sap-mcp-server
|
|
197
|
+
claude mcp add --transport stdio sap_payments -- npx --yes --package @oobe-protocol-labs/sap-mcp-server@0.9.0 sap-mcp-server
|
|
189
198
|
```
|
|
190
199
|
|
|
191
|
-
Set `SAP_ALLOWED_TOOLS=
|
|
192
|
-
|
|
193
|
-
configuration.
|
|
200
|
+
Set `SAP_MCP_PAYMENTS_BRIDGE_ONLY=true` and `SAP_ALLOWED_TOOLS=all` in the
|
|
201
|
+
local bridge environment if your Claude runtime exposes environment
|
|
202
|
+
configuration. The bridge-only flag keeps the local process focused on payment
|
|
203
|
+
retries while `all` prevents future payment helper tools from being hidden by a
|
|
204
|
+
stale allow-list.
|
|
194
205
|
|
|
195
|
-
Hermes
|
|
206
|
+
Legacy Hermes command-wrapper concept:
|
|
196
207
|
|
|
197
208
|
```json
|
|
198
209
|
{
|
|
@@ -209,11 +220,11 @@ Hermes plugin/addon concept:
|
|
|
209
220
|
}
|
|
210
221
|
```
|
|
211
222
|
|
|
212
|
-
|
|
223
|
+
Preferred local MCP tool call:
|
|
213
224
|
|
|
214
225
|
```json
|
|
215
226
|
{
|
|
216
|
-
"name": "
|
|
227
|
+
"name": "sap_payments_call_paid_tool",
|
|
217
228
|
"arguments": {
|
|
218
229
|
"toolName": "sap_list_all_agents",
|
|
219
230
|
"arguments": { "limit": 5 },
|
|
@@ -223,4 +234,4 @@ Local MCP tool alternative:
|
|
|
223
234
|
}
|
|
224
235
|
```
|
|
225
236
|
|
|
226
|
-
Do not add wallet paths, keypair bytes, RPC API keys, or profile-specific overrides to hosted MCP client config. Hosted MCP config points to `https://mcp.sap.oobeprotocol.ai/mcp`; the local
|
|
237
|
+
Do not add wallet paths, keypair bytes, RPC API keys, or profile-specific overrides to hosted MCP client config. Hosted MCP config points to `https://mcp.sap.oobeprotocol.ai/mcp`; the local `sap_payments` bridge signs only the payment payload on the user's machine.
|
|
@@ -6,20 +6,34 @@ The SAP MCP Desktop Wizard is the normie-friendly installer for users who do not
|
|
|
6
6
|
|
|
7
7
|
It creates the same real SAP MCP profile as the CLI/TUI wizard:
|
|
8
8
|
|
|
9
|
-
- a named profile under
|
|
9
|
+
- a named profile under the SAP MCP config directory;
|
|
10
10
|
- a dedicated local SAP MCP wallet or external signer boundary;
|
|
11
11
|
- conservative policy limits;
|
|
12
12
|
- hosted MCP config for `https://mcp.sap.oobeprotocol.ai/mcp`;
|
|
13
|
-
-
|
|
13
|
+
- native local `sap_payments` bridge for hosted paid/write agent calls.
|
|
14
14
|
|
|
15
15
|
The desktop app is not a mock installer. It calls the same setup modules used by `sap-mcp-config wizard`.
|
|
16
16
|
|
|
17
|
+
Default profile directories:
|
|
18
|
+
|
|
19
|
+
| OS | SAP MCP profile directory |
|
|
20
|
+
| --- | --- |
|
|
21
|
+
| macOS / Linux | `~/.config/mcp-sap` or `$XDG_CONFIG_HOME/mcp-sap` |
|
|
22
|
+
| Windows | `%APPDATA%\mcp-sap` |
|
|
23
|
+
|
|
17
24
|
The first screen lets you choose one of two modes:
|
|
18
25
|
|
|
19
26
|
| Mode | Use It When |
|
|
20
27
|
| --- | --- |
|
|
21
|
-
| **Full SAP MCP setup** | You are creating or refreshing a SAP MCP profile, wallet boundary, policy limits, hosted MCP entry, and
|
|
22
|
-
| **
|
|
28
|
+
| **Full hosted SAP MCP setup** | **Recommended.** You are creating or refreshing a SAP MCP profile, wallet boundary, policy limits, hosted MCP entry, and native local payment bridge. |
|
|
29
|
+
| **Payment bridge repair** | You already have a local SAP MCP profile configured, hosted tools are visible, but paid/write calls still return `payment_required`. |
|
|
30
|
+
|
|
31
|
+
The default full setup path configures two MCP entries for supported runtimes:
|
|
32
|
+
|
|
33
|
+
- `sap`: the hosted Streamable HTTP server at `https://mcp.sap.oobeprotocol.ai/mcp`;
|
|
34
|
+
- `sap_payments`: a local stdio bridge that signs x402 payment proofs with the user's SAP MCP profile or external signer.
|
|
35
|
+
|
|
36
|
+
This is the normal path for non-technical users and the recommended production path for technical users. Local stdio-only SAP MCP is still available for development, but it is not the default hosted onboarding flow.
|
|
23
37
|
|
|
24
38
|
## 2. When To Use It
|
|
25
39
|
|
|
@@ -71,14 +85,14 @@ Do not paste wallet/keypair material into support chats while troubleshooting in
|
|
|
71
85
|
|
|
72
86
|
The desktop wizard walks through:
|
|
73
87
|
|
|
74
|
-
1. **Setup**: choose full setup or
|
|
88
|
+
1. **Setup**: choose recommended full hosted setup or payment bridge repair.
|
|
75
89
|
2. **Profile**: choose a real profile name; the wizard refuses ambiguous `default` profiles.
|
|
76
90
|
3. **Wallet**: create a dedicated SAP MCP wallet or point to an existing dedicated keypair path.
|
|
77
91
|
4. **Policy**: set max transaction value, daily limits, log level, and optional Bento Guard settings.
|
|
78
|
-
5. **Runtimes**: detect local agent runtimes and configure hosted SAP MCP plus local `sap_payments
|
|
92
|
+
5. **Runtimes**: detect local agent runtimes and configure hosted SAP MCP plus local `sap_payments` using native JSON, TOML, or YAML for each runtime.
|
|
79
93
|
6. **Review**: show config path, wallet boundary, hosted MCP endpoint, and runtime actions before writing.
|
|
80
94
|
|
|
81
|
-
In
|
|
95
|
+
In payment bridge repair mode, the wizard skips profile, wallet, and policy steps. It only installs or repairs runtime MCP client entries and the optional local payment bridge reference bundle.
|
|
82
96
|
|
|
83
97
|
The renderer never receives keypair bytes. Wallet creation and file writes happen in the local main process.
|
|
84
98
|
|
|
@@ -92,13 +106,14 @@ url = "https://mcp.sap.oobeprotocol.ai/mcp"
|
|
|
92
106
|
|
|
93
107
|
[mcp_servers.sap_payments]
|
|
94
108
|
command = "npx"
|
|
95
|
-
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"]
|
|
96
|
-
|
|
109
|
+
args = ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"]
|
|
110
|
+
startup_timeout_sec = 300
|
|
97
111
|
tool_timeout_sec = 300
|
|
98
112
|
|
|
99
113
|
[mcp_servers.sap_payments.env]
|
|
100
114
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE = "false"
|
|
101
|
-
|
|
115
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY = "true"
|
|
116
|
+
SAP_ALLOWED_TOOLS = "all"
|
|
102
117
|
SAP_LOG_LEVEL = "info"
|
|
103
118
|
```
|
|
104
119
|
|
|
@@ -123,10 +138,11 @@ Claude Desktop uses a root `mcpServers` JSON object:
|
|
|
123
138
|
},
|
|
124
139
|
"sap_payments": {
|
|
125
140
|
"command": "npx",
|
|
126
|
-
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"],
|
|
141
|
+
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"],
|
|
127
142
|
"env": {
|
|
128
143
|
"SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE": "false",
|
|
129
|
-
"
|
|
144
|
+
"SAP_MCP_PAYMENTS_BRIDGE_ONLY": "true",
|
|
145
|
+
"SAP_ALLOWED_TOOLS": "all",
|
|
130
146
|
"SAP_LOG_LEVEL": "info"
|
|
131
147
|
}
|
|
132
148
|
}
|
|
@@ -154,10 +170,11 @@ Hermes global `mcp.json` uses flat server entries:
|
|
|
154
170
|
},
|
|
155
171
|
"sap_payments": {
|
|
156
172
|
"command": "npx",
|
|
157
|
-
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"],
|
|
173
|
+
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"],
|
|
158
174
|
"env": {
|
|
159
175
|
"SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE": "false",
|
|
160
|
-
"
|
|
176
|
+
"SAP_MCP_PAYMENTS_BRIDGE_ONLY": "true",
|
|
177
|
+
"SAP_ALLOWED_TOOLS": "all",
|
|
161
178
|
"SAP_LOG_LEVEL": "info"
|
|
162
179
|
}
|
|
163
180
|
}
|
|
@@ -176,11 +193,12 @@ mcp_servers:
|
|
|
176
193
|
args:
|
|
177
194
|
- --yes
|
|
178
195
|
- --package
|
|
179
|
-
- @oobe-protocol-labs/sap-mcp-server
|
|
196
|
+
- @oobe-protocol-labs/sap-mcp-server@0.9.0
|
|
180
197
|
- sap-mcp-server
|
|
181
198
|
env:
|
|
182
199
|
SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE: "false"
|
|
183
|
-
|
|
200
|
+
SAP_MCP_PAYMENTS_BRIDGE_ONLY: "true"
|
|
201
|
+
SAP_ALLOWED_TOOLS: all
|
|
184
202
|
SAP_LOG_LEVEL: info
|
|
185
203
|
```
|
|
186
204
|
|
|
@@ -197,10 +215,11 @@ OpenClaw MCP JSON uses the same root `mcpServers` structure as generic MCP clien
|
|
|
197
215
|
},
|
|
198
216
|
"sap_payments": {
|
|
199
217
|
"command": "npx",
|
|
200
|
-
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server", "sap-mcp-server"],
|
|
218
|
+
"args": ["--yes", "--package", "@oobe-protocol-labs/sap-mcp-server@0.9.0", "sap-mcp-server"],
|
|
201
219
|
"env": {
|
|
202
220
|
"SAP_MCP_ALLOW_ENV_CONFIG_OVERRIDE": "false",
|
|
203
|
-
"
|
|
221
|
+
"SAP_MCP_PAYMENTS_BRIDGE_ONLY": "true",
|
|
222
|
+
"SAP_ALLOWED_TOOLS": "all",
|
|
204
223
|
"SAP_LOG_LEVEL": "info"
|
|
205
224
|
}
|
|
206
225
|
}
|
|
@@ -210,15 +229,17 @@ OpenClaw MCP JSON uses the same root `mcpServers` structure as generic MCP clien
|
|
|
210
229
|
|
|
211
230
|
On Windows, command-backed bridge entries use `npx.cmd`.
|
|
212
231
|
|
|
213
|
-
## 7.
|
|
232
|
+
## 7. Local Payment Bridge Reference Bundle
|
|
214
233
|
|
|
215
|
-
The GUI can also install
|
|
234
|
+
The GUI can also install a local bridge reference bundle under:
|
|
216
235
|
|
|
217
236
|
```txt
|
|
218
237
|
~/.config/mcp-sap/addons/x402-paid-call
|
|
219
238
|
```
|
|
220
239
|
|
|
221
|
-
|
|
240
|
+
Normal agents should use the local `sap_payments` MCP bridge and call
|
|
241
|
+
`sap_payments_call_paid_tool`. The standalone command remains available only as
|
|
242
|
+
a terminal/custom-wrapper fallback:
|
|
222
243
|
|
|
223
244
|
```bash
|
|
224
245
|
npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-x402-paid-call \
|
|
@@ -228,7 +249,8 @@ npm exec --yes --package @oobe-protocol-labs/sap-mcp-server -- sap-mcp-x402-paid
|
|
|
228
249
|
--confirm
|
|
229
250
|
```
|
|
230
251
|
|
|
231
|
-
Use the
|
|
252
|
+
Use the command fallback only when your runtime cannot add the local
|
|
253
|
+
`sap_payments` MCP bridge.
|
|
232
254
|
|
|
233
255
|
## 8. CLI Fallback
|
|
234
256
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<svg width="256" height="256" viewBox="0 0 256 256" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path d="M0 64C0 28.6538 28.6538 0 64 0H192C227.346 0 256 28.6538 256 64V192C256 227.346 227.346 256 192 256H64C28.6538 256 0 227.346 0 192V64Z" fill="#08AA18"/>
|
|
3
|
+
<g clip-path="url(#clip0_354_3823)">
|
|
4
|
+
<path d="M32 62.9677C32 45.8647 45.8647 32 62.9677 32H193.032C210.135 32 224 45.8647 224 62.9677V193.032C224 210.135 210.135 224 193.032 224H62.9677C45.8647 224 32 210.135 32 193.032V62.9677Z" fill="#08AA18"/>
|
|
5
|
+
<path d="M105.764 71.4325C105.367 72.4792 106.14 73.599 107.259 73.5993H129.162C130.199 73.5993 130.962 74.5712 130.717 75.5786L116.825 132.535C116.424 134.18 118.518 135.239 119.606 133.941L169.692 74.1724C169.996 73.8097 170.446 73.5993 170.919 73.5993H203.043C204.411 73.5993 205.148 75.2066 204.256 76.2439L77.1854 224H65.261L92.329 110.773C92.5694 109.767 91.8069 108.8 90.7731 108.799H52.9722C51.6232 108.799 50.8805 107.233 51.7338 106.188L112.32 32H120.719L105.764 71.4325Z" fill="white"/>
|
|
6
|
+
</g>
|
|
7
|
+
<defs>
|
|
8
|
+
<clipPath id="clip0_354_3823">
|
|
9
|
+
<rect width="192" height="192" fill="white" transform="translate(32 32)"/>
|
|
10
|
+
</clipPath>
|
|
11
|
+
</defs>
|
|
12
|
+
</svg>
|
|
Binary file
|