@oobe-protocol-labs/sap-mcp-server 0.9.51 → 0.9.52

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oobe-protocol-labs/sap-mcp-server",
3
- "version": "0.9.51",
3
+ "version": "0.9.52",
4
4
  "mcpName": "ai.oobeprotocol.sap.mcp/sap-mcp",
5
5
  "description": "Official MCP gateway for OOBE Protocol SAP — AI agents can interact with SAP identity, registry, reputation, tools, memory, payments, settlement, and proof-of-execution on Solana",
6
6
  "type": "module",
package/server.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "ai.oobeprotocol.sap.mcp/sap-mcp",
4
4
  "title": "SAP MCP Server | OOBE Protocol",
5
5
  "description": "Solana-native MCP gateway for SAP tools, DeFi, SNS identity, x402/pay.sh, and agent operations.",
6
- "version": "0.9.51",
6
+ "version": "0.9.52",
7
7
  "websiteUrl": "https://mcp.sap.oobeprotocol.ai/",
8
8
  "repository": {
9
9
  "url": "https://github.com/OOBE-PROTOCOL/sap-mcp",
@@ -29,7 +29,7 @@
29
29
  {
30
30
  "registryType": "npm",
31
31
  "identifier": "@oobe-protocol-labs/sap-mcp-server",
32
- "version": "0.9.51",
32
+ "version": "0.9.52",
33
33
  "transport": {
34
34
  "type": "stdio"
35
35
  },
@@ -45,7 +45,7 @@
45
45
  },
46
46
  {
47
47
  "type": "positional",
48
- "value": "@oobe-protocol-labs/sap-mcp-server@0.9.51"
48
+ "value": "@oobe-protocol-labs/sap-mcp-server@0.9.52"
49
49
  },
50
50
  {
51
51
  "type": "positional",
@@ -46,7 +46,7 @@ bridges, and staking protocols.
46
46
 
47
47
  ## Adrena Perps Protocol (32 tools)
48
48
 
49
- SAP MCP 0.9.38+ includes a full native Adrena integration: local unsigned
49
+ SAP MCP 0.9.51+ includes a full native Adrena integration: local unsigned
50
50
  transaction builders for every Adrena operation plus a REST Data API client.
51
51
  All builders use the vendored official Adrena IDL (release/39) via
52
52
  `@coral-xyz/anchor` and produce unsigned base64 transactions for local
@@ -54,12 +54,13 @@ signing via `sap_payments_finalize_transaction`.
54
54
 
55
55
  ### Trading Builders
56
56
 
57
- - `sap_adrena_build_open_long` — Open/increase a long perp position
58
- - `sap_adrena_build_open_short` — Open/increase a short perp position
57
+ - `sap_adrena_build_open_long` — Open/increase a long perp position. Optional `stopLossPriceUsd` for policy compliance
58
+ - `sap_adrena_build_open_short` — Open/increase a short perp position. Optional `stopLossPriceUsd` for policy compliance
59
+ - `sap_adrena_build_position_package` — Open + set SL + set TP atomically in one transaction (1 payment, 1 signing, 1 submit). Preferred over separate open + SL + TP calls
59
60
  - `sap_adrena_build_close_long` — Close a long perp position
60
61
  - `sap_adrena_build_close_short` — Close a short perp position
61
- - `sap_adrena_build_set_stop_loss` — Set stop loss on a position
62
- - `sap_adrena_build_set_take_profit` — Set take profit on a position
62
+ - `sap_adrena_build_set_stop_loss` — Set stop loss on an existing position
63
+ - `sap_adrena_build_set_take_profit` — Set take profit on an existing position
63
64
  - `sap_adrena_build_cancel_stop_loss` — Cancel stop loss
64
65
  - `sap_adrena_build_cancel_take_profit` — Cancel take profit
65
66
  - `sap_adrena_build_add_limit_order` — Place a limit order
@@ -97,7 +98,7 @@ signing via `sap_payments_finalize_transaction`.
97
98
  - `sap_adrena_get_mutagen_leaderboard` — Mutagen leaderboard
98
99
  - `sap_adrena_get_prices` — ADX and ALP token prices
99
100
  - `sap_adrena_get_trading_prices` — Latest oracle prices for all assets
100
- - `sap_adrena_get_position_status` — Live position P&L
101
+ - `sap_adrena_get_position_status` — Live position P&L from Adrena Data API. If the Data API is unavailable, fall back to `sap_perp_position_info` which reads the on-chain Position account directly via Solana RPC
101
102
 
102
103
  ## Flow
103
104
 
@@ -130,21 +131,48 @@ planning tools before any value-moving action:
130
131
  `sap_chart_volume_profile` for trend, timeframe, and liquidity context.
131
132
  5. Call `sap_perp_liquidation_zones` to understand liquidation distance.
132
133
  6. Call `sap_perp_trade_plan` with market, side, collateral amount, leverage,
133
- entry price, stop loss, take profit, max slippage, and max account-risk
134
- policy.
134
+ entry price (required, fetch from `sap_adrena_get_trading_prices` first),
135
+ stop loss, take profit, max slippage, and max account-risk policy.
135
136
  7. Call `sap_perp_builder_status` to confirm which Adrena operations are
136
- available. As of 0.9.38, all 22 builder operations and 10 Data API tools
137
+ available. As of 0.9.51, all builder operations and Data API tools
137
138
  are available natively.
138
139
 
139
140
  ### Execution Flow (Adrena)
140
141
 
142
+ **Preferred: atomic batch (1 payment, 1 signing, 1 submit)**
143
+
144
+ 1. Call `sap_adrena_build_position_package` with the owner wallet,
145
+ principal token, collateral token, amount, leverage, side, and
146
+ optional `stopLossPriceUsd` / `takeProfitPriceUsd`. This builds a
147
+ single unsigned transaction with 3 atomic instructions:
148
+ openOrIncreasePosition + setStopLoss + setTakeProfit.
149
+ 2. Call `sap_payments_finalize_transaction` with `transactionBase64` and
150
+ `submit: true` (after user confirmation) to sign and submit locally.
151
+ 3. If the position opens but SL/TP instructions fail, the position is
152
+ unprotected. The atomic batch prevents this: all 3 instructions land
153
+ in the same transaction or none do.
154
+
155
+ **Alternative: separate calls (3 payments, 3 signings)**
156
+
141
157
  1. Call `sap_adrena_build_open_long` (or short) with the owner wallet,
142
- principal token, collateral token, amount, and leverage.
158
+ principal token, collateral token, amount, leverage, and optional
159
+ `stopLossPriceUsd` for policy compliance.
143
160
  2. The builder returns `transactionBase64` — an unsigned Solana transaction
144
161
  constructed from the vendored Adrena IDL via `@coral-xyz/anchor`.
145
162
  3. Call `sap_payments_finalize_transaction` with `transactionBase64` and
146
163
  `submit: true` (after user confirmation) to sign and submit locally.
147
- 4. SAP MCP never signs user-owned Adrena transactions. All signing is local.
164
+ 4. After the position is confirmed on-chain, call `sap_adrena_build_set_stop_loss`
165
+ and `sap_adrena_build_set_take_profit` separately.
166
+ 5. SAP MCP never signs user-owned Adrena transactions. All signing is local.
167
+
168
+ ### Policy: stop_loss_required
169
+
170
+ The SAP MCP policy engine has a `stopLossRequired` flag (default: false
171
+ as of 0.9.51). When enabled in the profile config, `sap_adrena_build_open_long`
172
+ and `sap_adrena_build_open_short` require `stopLossPriceUsd` to be set.
173
+ If omitted, the builder returns `PolicyViolation: stop_loss_required`.
174
+ Pass `stopLossPriceUsd` or use `sap_adrena_build_position_package` which
175
+ accepts it directly.
148
176
 
149
177
  ### Collateral Rules
150
178
 
@@ -220,14 +220,15 @@ Social, Blinks, bounties, gaming:
220
220
  `gibwork_createBounty`, `gibwork_listBounties`, `gibwork_submitWork`,
221
221
  `send-arcade_listGames`, `send-arcade_playGame`.
222
222
 
223
- Perps note: SAP MCP 0.9.38+ includes a full native Adrena integration with
224
- 32 tools. All 22 builder operations construct unsigned Solana transactions
223
+ Perps note: SAP MCP 0.9.51+ includes a full native Adrena integration with
224
+ 32 tools. All builder operations construct unsigned Solana transactions
225
225
  locally using the vendored Adrena Anchor IDL (release/39) via
226
226
  `@coral-xyz/anchor`, then return `transactionBase64` for local signing via
227
227
  `sap_payments_finalize_transaction`. No external builder URL is required.
228
228
 
229
229
  Adrena trading builders: `sap_adrena_build_open_long`,
230
- `sap_adrena_build_open_short`, `sap_adrena_build_close_long`,
230
+ `sap_adrena_build_open_short`, `sap_adrena_build_position_package` (atomic
231
+ open + SL + TP in 1 transaction), `sap_adrena_build_close_long`,
231
232
  `sap_adrena_build_close_short`, `sap_adrena_build_set_stop_loss`,
232
233
  `sap_adrena_build_set_take_profit`, `sap_adrena_build_cancel_stop_loss`,
233
234
  `sap_adrena_build_cancel_take_profit`, `sap_adrena_build_add_limit_order`,