@oobe-protocol-labs/sap-mcp-server 0.9.38 → 0.9.50
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/dist/config/env.d.ts +19 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +9 -2
- package/dist/config/env.js.map +1 -1
- package/dist/payments/monetization-gate.d.ts +5 -0
- package/dist/payments/monetization-gate.d.ts.map +1 -1
- package/dist/payments/monetization-gate.js +39 -2
- package/dist/payments/monetization-gate.js.map +1 -1
- package/dist/payments/prepaid-credit-store.d.ts +111 -0
- package/dist/payments/prepaid-credit-store.d.ts.map +1 -0
- package/dist/payments/prepaid-credit-store.js +230 -0
- package/dist/payments/prepaid-credit-store.js.map +1 -0
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +1 -0
- package/dist/payments/pricing.js.map +1 -1
- package/dist/payments/schema-validation.d.ts +52 -0
- package/dist/payments/schema-validation.d.ts.map +1 -0
- package/dist/payments/schema-validation.js +112 -0
- package/dist/payments/schema-validation.js.map +1 -0
- package/dist/payments/x402-paid-call.d.ts +21 -0
- package/dist/payments/x402-paid-call.d.ts.map +1 -1
- package/dist/payments/x402-paid-call.js +108 -3
- package/dist/payments/x402-paid-call.js.map +1 -1
- package/dist/perps/adrena/adrena-builder-commodity.d.ts +63 -0
- package/dist/perps/adrena/adrena-builder-commodity.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-builder-commodity.js +200 -0
- package/dist/perps/adrena/adrena-builder-commodity.js.map +1 -0
- package/dist/perps/adrena/adrena-builder-core.d.ts +319 -0
- package/dist/perps/adrena/adrena-builder-core.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-builder-core.js +517 -0
- package/dist/perps/adrena/adrena-builder-core.js.map +1 -0
- package/dist/perps/adrena/adrena-builder-liquidity.d.ts +50 -0
- package/dist/perps/adrena/adrena-builder-liquidity.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-builder-liquidity.js +196 -0
- package/dist/perps/adrena/adrena-builder-liquidity.js.map +1 -0
- package/dist/perps/adrena/adrena-builder-staking.d.ts +57 -0
- package/dist/perps/adrena/adrena-builder-staking.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-builder-staking.js +368 -0
- package/dist/perps/adrena/adrena-builder-staking.js.map +1 -0
- package/dist/perps/adrena/adrena-builder-trading.d.ts +160 -0
- package/dist/perps/adrena/adrena-builder-trading.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-builder-trading.js +835 -0
- package/dist/perps/adrena/adrena-builder-trading.js.map +1 -0
- package/dist/perps/adrena/adrena-builder.d.ts +14 -293
- package/dist/perps/adrena/adrena-builder.d.ts.map +1 -1
- package/dist/perps/adrena/adrena-builder.js +14 -1140
- package/dist/perps/adrena/adrena-builder.js.map +1 -1
- package/dist/perps/adrena/adrena-constants.d.ts +33 -5
- package/dist/perps/adrena/adrena-constants.d.ts.map +1 -1
- package/dist/perps/adrena/adrena-constants.js +29 -7
- package/dist/perps/adrena/adrena-constants.js.map +1 -1
- package/dist/perps/adrena/adrena-idl.d.ts +15084 -0
- package/dist/perps/adrena/adrena-idl.d.ts.map +1 -0
- package/dist/perps/adrena/adrena-idl.js +29903 -0
- package/dist/perps/adrena/adrena-idl.js.map +1 -0
- package/dist/perps/adrena/adrena-pda.d.ts +5 -4
- package/dist/perps/adrena/adrena-pda.d.ts.map +1 -1
- package/dist/perps/adrena/adrena-pda.js +6 -10
- package/dist/perps/adrena/adrena-pda.js.map +1 -1
- package/dist/perps/adrena/index.d.ts +1 -0
- package/dist/perps/adrena/index.d.ts.map +1 -1
- package/dist/perps/adrena/index.js +1 -0
- package/dist/perps/adrena/index.js.map +1 -1
- package/dist/perps/chart-indicators.d.ts +27 -0
- package/dist/perps/chart-indicators.d.ts.map +1 -0
- package/dist/perps/chart-indicators.js +345 -0
- package/dist/perps/chart-indicators.js.map +1 -0
- package/dist/perps/chart-tools.d.ts +45 -0
- package/dist/perps/chart-tools.d.ts.map +1 -0
- package/dist/perps/chart-tools.js +341 -0
- package/dist/perps/chart-tools.js.map +1 -0
- package/dist/perps/perp-analytics-tools.d.ts +20 -0
- package/dist/perps/perp-analytics-tools.d.ts.map +1 -0
- package/dist/perps/perp-analytics-tools.js +868 -0
- package/dist/perps/perp-analytics-tools.js.map +1 -0
- package/dist/perps/perp-constants.d.ts +362 -0
- package/dist/perps/perp-constants.d.ts.map +1 -0
- package/dist/perps/perp-constants.js +210 -0
- package/dist/perps/perp-constants.js.map +1 -0
- package/dist/perps/perp-decoders.d.ts +47 -0
- package/dist/perps/perp-decoders.d.ts.map +1 -0
- package/dist/perps/perp-decoders.js +332 -0
- package/dist/perps/perp-decoders.js.map +1 -0
- package/dist/policy/policy-engine.d.ts +42 -0
- package/dist/policy/policy-engine.d.ts.map +1 -1
- package/dist/policy/policy-engine.js +43 -0
- package/dist/policy/policy-engine.js.map +1 -1
- package/dist/premium/activation-manager.d.ts.map +1 -1
- package/dist/premium/activation-manager.js +20 -2
- package/dist/premium/activation-manager.js.map +1 -1
- package/dist/prompts/context/sap-agent-context.prompt.js +15 -1
- package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
- package/dist/server/server-metadata.d.ts +13 -0
- package/dist/server/server-metadata.d.ts.map +1 -1
- package/dist/server/server-metadata.js +15 -2
- package/dist/server/server-metadata.js.map +1 -1
- package/dist/solana/ata-utils.d.ts +39 -0
- package/dist/solana/ata-utils.d.ts.map +1 -0
- package/dist/solana/ata-utils.js +49 -0
- package/dist/solana/ata-utils.js.map +1 -0
- package/dist/strategies/trade-journal.d.ts +78 -0
- package/dist/strategies/trade-journal.d.ts.map +1 -0
- package/dist/strategies/trade-journal.js +92 -0
- package/dist/strategies/trade-journal.js.map +1 -0
- package/dist/tools/adrena/adrena-commodity-tools.d.ts +15 -0
- package/dist/tools/adrena/adrena-commodity-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-commodity-tools.js +137 -0
- package/dist/tools/adrena/adrena-commodity-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-data-tools.d.ts +23 -0
- package/dist/tools/adrena/adrena-data-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-data-tools.js +437 -0
- package/dist/tools/adrena/adrena-data-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-helpers.d.ts +46 -0
- package/dist/tools/adrena/adrena-helpers.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-helpers.js +41 -0
- package/dist/tools/adrena/adrena-helpers.js.map +1 -0
- package/dist/tools/adrena/adrena-index.d.ts +20 -0
- package/dist/tools/adrena/adrena-index.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-index.js +75 -0
- package/dist/tools/adrena/adrena-index.js.map +1 -0
- package/dist/tools/adrena/adrena-limit-order-tools.d.ts +22 -0
- package/dist/tools/adrena/adrena-limit-order-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-limit-order-tools.js +91 -0
- package/dist/tools/adrena/adrena-limit-order-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-liquidity-tools.d.ts +15 -0
- package/dist/tools/adrena/adrena-liquidity-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-liquidity-tools.js +108 -0
- package/dist/tools/adrena/adrena-liquidity-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-snapshot-tools.d.ts +42 -0
- package/dist/tools/adrena/adrena-snapshot-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-snapshot-tools.js +124 -0
- package/dist/tools/adrena/adrena-snapshot-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-staking-tools.d.ts +15 -0
- package/dist/tools/adrena/adrena-staking-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-staking-tools.js +139 -0
- package/dist/tools/adrena/adrena-staking-tools.js.map +1 -0
- package/dist/tools/adrena/adrena-trading-tools.d.ts +78 -0
- package/dist/tools/adrena/adrena-trading-tools.d.ts.map +1 -0
- package/dist/tools/adrena/adrena-trading-tools.js +556 -0
- package/dist/tools/adrena/adrena-trading-tools.js.map +1 -0
- package/dist/tools/adrena-tools.d.ts +1 -66
- package/dist/tools/adrena-tools.d.ts.map +1 -1
- package/dist/tools/adrena-tools.js +1 -1061
- package/dist/tools/adrena-tools.js.map +1 -1
- package/dist/tools/client-sdk-tools.js +1 -1
- package/dist/tools/client-sdk-tools.js.map +1 -1
- package/dist/tools/memory-tools.d.ts.map +1 -1
- package/dist/tools/memory-tools.js +170 -0
- package/dist/tools/memory-tools.js.map +1 -1
- package/dist/tools/perp-tools.d.ts +6 -174
- package/dist/tools/perp-tools.d.ts.map +1 -1
- package/dist/tools/perp-tools.js +6 -1716
- package/dist/tools/perp-tools.js.map +1 -1
- package/dist/tools/premium-tools.d.ts.map +1 -1
- package/dist/tools/premium-tools.js +123 -5
- package/dist/tools/premium-tools.js.map +1 -1
- package/dist/tools/transaction-tools.d.ts +21 -1
- package/dist/tools/transaction-tools.d.ts.map +1 -1
- package/dist/tools/transaction-tools.js +114 -30
- package/dist/tools/transaction-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +288 -0
- package/dist/tools/x402-paid-call-tool.js.map +1 -1
- package/package.json +3 -2
- package/server.json +3 -3
|
@@ -1,180 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @name tools/perp-tools
|
|
3
|
-
* @description
|
|
4
|
-
*
|
|
5
|
-
* Provides perp analytics plus explicit execution-readiness tooling:
|
|
6
|
-
*
|
|
7
|
-
* Read-only tools (7):
|
|
8
|
-
* - sap_perp_markets — List Adrena markets with funding/accounting, OI, and oracle ids.
|
|
9
|
-
* - sap_perp_position_info — Read on-chain perp positions for a wallet.
|
|
10
|
-
* - sap_perp_funding_history — Compute funding rate from on-chain custody account.
|
|
11
|
-
* - sap_chart_ohlc — OHLC candlestick data for any Solana token.
|
|
12
|
-
* - sap_chart_long_term — Long-term price history + protocol TVL.
|
|
13
|
-
* - sap_chart_volume_profile — Volume profile analysis (POC, VAH, VAL).
|
|
14
|
-
* - sap_perp_liquidation_zones — Compute liquidation zones for open positions.
|
|
15
|
-
*
|
|
16
|
-
* Professional planning tools:
|
|
17
|
-
* - sap_perp_trade_plan — Build a trader-grade risk, route, and execution checklist.
|
|
18
|
-
* - sap_perp_builder_status — Report whether a hosted unsigned perps builder is configured.
|
|
19
|
-
*
|
|
20
|
-
* Adrena reads decode Pool, Custody, and Position accounts directly from the
|
|
21
|
-
* official release/39 ABI layout through Solana RPC. Optional provider hooks
|
|
22
|
-
* can enrich reads or build unsigned execution transactions, but SAP MCP never
|
|
23
|
-
* pretends a perps execution route exists until the builder can return a real
|
|
24
|
-
* locally finalizable Solana transaction.
|
|
3
|
+
* @description Barrel re-export for perp tools — split into perp-constants, perp-decoders,
|
|
4
|
+
* chart-tools, and perp-analytics-tools under src/perps/.
|
|
25
5
|
*
|
|
26
6
|
* @module tools/perp-tools
|
|
27
7
|
*/
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
export
|
|
32
|
-
interface PerpMarketProviderRecord {
|
|
33
|
-
symbol?: string;
|
|
34
|
-
market?: string;
|
|
35
|
-
custodyAddress?: string;
|
|
36
|
-
poolAddress?: string;
|
|
37
|
-
custodyMint?: string;
|
|
38
|
-
markPrice?: number;
|
|
39
|
-
fundingRate?: number;
|
|
40
|
-
openInterestLong?: number;
|
|
41
|
-
openInterestShort?: number;
|
|
42
|
-
volume24h?: number;
|
|
43
|
-
provider?: string;
|
|
44
|
-
[key: string]: unknown;
|
|
45
|
-
}
|
|
46
|
-
interface DecodedAdrenaPool {
|
|
47
|
-
poolAddress: string;
|
|
48
|
-
name: string;
|
|
49
|
-
type?: string;
|
|
50
|
-
allowTrade: boolean;
|
|
51
|
-
allowSwap: boolean;
|
|
52
|
-
registeredCustodyCount: number;
|
|
53
|
-
custodies: string[];
|
|
54
|
-
lpTokenPriceUsd: number;
|
|
55
|
-
aumUsd: number;
|
|
56
|
-
}
|
|
57
|
-
interface DecodedAdrenaCustody {
|
|
58
|
-
symbol: string;
|
|
59
|
-
market: string;
|
|
60
|
-
custodyAddress: string;
|
|
61
|
-
poolAddress: string;
|
|
62
|
-
poolName?: string;
|
|
63
|
-
poolType?: string;
|
|
64
|
-
custodyMint: string;
|
|
65
|
-
tokenAccount: string;
|
|
66
|
-
oracle: string;
|
|
67
|
-
tradeOracle: string;
|
|
68
|
-
oracleFeedId: number;
|
|
69
|
-
tradeOracleFeedId: number;
|
|
70
|
-
decimals: number;
|
|
71
|
-
allowTrade: boolean;
|
|
72
|
-
allowSwap: boolean;
|
|
73
|
-
isStable: boolean;
|
|
74
|
-
isSynthetic: boolean;
|
|
75
|
-
version: number;
|
|
76
|
-
kind: 'collateral' | 'perp' | 'synthetic-perp' | 'unknown';
|
|
77
|
-
markPrice: number | null;
|
|
78
|
-
markPriceSource: 'not_in_custody_account';
|
|
79
|
-
maxInitialLeverage: number;
|
|
80
|
-
maxLeverage: number;
|
|
81
|
-
maxPositionLockedUsd: number;
|
|
82
|
-
openInterestLong: number;
|
|
83
|
-
openInterestShort: number;
|
|
84
|
-
openPositionsLong: number;
|
|
85
|
-
openPositionsShort: number;
|
|
86
|
-
borrowSizeLongUsd: number;
|
|
87
|
-
borrowSizeShortUsd: number;
|
|
88
|
-
collateralLongUsd: number;
|
|
89
|
-
collateralShortUsd: number;
|
|
90
|
-
lockedAmountLongRaw: string;
|
|
91
|
-
lockedAmountShortRaw: string;
|
|
92
|
-
tradeOiLongUsd: number;
|
|
93
|
-
tradeOiShortUsd: number;
|
|
94
|
-
cumulativeOpenPositionUsd: number;
|
|
95
|
-
assetsRaw: {
|
|
96
|
-
collateral: string;
|
|
97
|
-
owned: string;
|
|
98
|
-
locked: string;
|
|
99
|
-
};
|
|
100
|
-
borrowRate: {
|
|
101
|
-
currentRateRaw: string;
|
|
102
|
-
lastUpdate: number;
|
|
103
|
-
};
|
|
104
|
-
funding: {
|
|
105
|
-
currentRateLongToShortRaw: string;
|
|
106
|
-
lastUpdate: number;
|
|
107
|
-
cumulativeLongToShortRaw: string;
|
|
108
|
-
cumulativeShortToLongRaw: string;
|
|
109
|
-
maxHourlyFundingRateRaw: string;
|
|
110
|
-
minTotalOiUsd: number;
|
|
111
|
-
imbalanceSensitivityBps: number;
|
|
112
|
-
};
|
|
113
|
-
}
|
|
114
|
-
interface DecodedAdrenaPosition {
|
|
115
|
-
positionKey: string;
|
|
116
|
-
market: string;
|
|
117
|
-
side: 'long' | 'short';
|
|
118
|
-
sideRaw: number;
|
|
119
|
-
owner: string;
|
|
120
|
-
poolAddress: string;
|
|
121
|
-
custodyAddress: string;
|
|
122
|
-
collateralCustodyAddress: string;
|
|
123
|
-
openTime: number;
|
|
124
|
-
updateTime: number;
|
|
125
|
-
entryPrice: number;
|
|
126
|
-
entryPriceRaw: string;
|
|
127
|
-
size: number;
|
|
128
|
-
collateral: number;
|
|
129
|
-
borrowSizeUsd: number;
|
|
130
|
-
leverage: number;
|
|
131
|
-
unrealizedPnl: number;
|
|
132
|
-
unrealizedInterestUsd: number;
|
|
133
|
-
unrealizedFundingPaidUsd: number;
|
|
134
|
-
unrealizedFundingReceivedUsd: number;
|
|
135
|
-
lockedAmountRaw: string;
|
|
136
|
-
collateralAmountRaw: string;
|
|
137
|
-
liquidationPrice: number;
|
|
138
|
-
takeProfitLimitPrice: number | null;
|
|
139
|
-
stopLossLimitPrice: number | null;
|
|
140
|
-
stopLossClosePositionPrice: number | null;
|
|
141
|
-
id: string;
|
|
142
|
-
}
|
|
143
|
-
export declare function normalizePerpProviderMarkets(payload: unknown, marketFilter?: string): PerpMarketProviderRecord[];
|
|
144
|
-
/**
|
|
145
|
-
* @name discToBase58
|
|
146
|
-
* @description Convert an 8-byte discriminator Buffer to a base58 string for
|
|
147
|
-
* use in `getProgramAccounts` memcmp filters.
|
|
148
|
-
*
|
|
149
|
-
* @param disc — 8-byte discriminator Buffer.
|
|
150
|
-
* @returns Base58-encoded string.
|
|
151
|
-
*
|
|
152
|
-
* @internal
|
|
153
|
-
*/
|
|
154
|
-
export declare function discToBase58(disc: Buffer): string;
|
|
155
|
-
/**
|
|
156
|
-
* @name readAdrenaLimitedString
|
|
157
|
-
* @description Read Adrena `LimitedString` (31-byte value + 1-byte length)
|
|
158
|
-
* from an account data buffer.
|
|
159
|
-
*
|
|
160
|
-
* @param buf — Source buffer.
|
|
161
|
-
* @param offset — Offset to the LimitedString field.
|
|
162
|
-
* @returns Decoded symbol string, or empty string on failure.
|
|
163
|
-
*
|
|
164
|
-
* @internal
|
|
165
|
-
*/
|
|
166
|
-
export declare function readAdrenaLimitedString(buf: Buffer, offset: number): string;
|
|
167
|
-
export declare function decodeAdrenaCustodyAccount(pubkey: PublicKey, data: Buffer, pool?: DecodedAdrenaPool): DecodedAdrenaCustody | null;
|
|
168
|
-
export declare function decodeAdrenaPositionAccount(pubkey: PublicKey, data: Buffer, marketsByCustody?: Map<string, DecodedAdrenaCustody>): DecodedAdrenaPosition | null;
|
|
169
|
-
/**
|
|
170
|
-
* @name registerPerpTools
|
|
171
|
-
* @description Register perp trading analytics, planning, and optional execution-builder tools.
|
|
172
|
-
*
|
|
173
|
-
* @param server — MCP server instance.
|
|
174
|
-
* @param context — Shared runtime context with SAP client, connection, and config.
|
|
175
|
-
*
|
|
176
|
-
* @usedBy `register-tools.ts`
|
|
177
|
-
*/
|
|
178
|
-
export declare function registerPerpTools(server: Server, context: SapMcpContext): void;
|
|
179
|
-
export {};
|
|
8
|
+
export { registerPerpTools } from '../perps/perp-analytics-tools.js';
|
|
9
|
+
export { ADRENA_POSITION_OWNER_MEMCMP_OFFSET } from '../perps/perp-constants.js';
|
|
10
|
+
export { decodeAdrenaCustodyAccount, decodeAdrenaPositionAccount, discToBase58, readAdrenaLimitedString } from '../perps/perp-decoders.js';
|
|
11
|
+
export { normalizePerpProviderMarkets } from '../perps/perp-constants.js';
|
|
180
12
|
//# sourceMappingURL=perp-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perp-tools.d.ts","sourceRoot":"","sources":["../../src/tools/perp-tools.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"perp-tools.d.ts","sourceRoot":"","sources":["../../src/tools/perp-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC3I,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC"}
|