@aibtc/mcp-server 1.24.0 → 1.25.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/dist/config/contracts.d.ts +12 -6
- package/dist/config/contracts.d.ts.map +1 -1
- package/dist/config/contracts.js +14 -14
- package/dist/config/contracts.js.map +1 -1
- package/dist/services/bitflow.service.d.ts +58 -60
- package/dist/services/bitflow.service.d.ts.map +1 -1
- package/dist/services/bitflow.service.js +194 -101
- package/dist/services/bitflow.service.js.map +1 -1
- package/dist/tools/bitflow.tools.d.ts.map +1 -1
- package/dist/tools/bitflow.tools.js +44 -78
- package/dist/tools/bitflow.tools.js.map +1 -1
- package/dist/tools/endpoint.tools.d.ts.map +1 -1
- package/dist/tools/endpoint.tools.js +33 -14
- package/dist/tools/endpoint.tools.js.map +1 -1
- package/dist/tools/inbox.tools.d.ts.map +1 -1
- package/dist/tools/inbox.tools.js +176 -47
- package/dist/tools/inbox.tools.js.map +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +3 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/signing.tools.d.ts.map +1 -1
- package/dist/tools/signing.tools.js +119 -1
- package/dist/tools/signing.tools.js.map +1 -1
- package/dist/utils/x402-protocol.d.ts +1 -11
- package/dist/utils/x402-protocol.d.ts.map +1 -1
- package/dist/utils/x402-protocol.js +10 -24
- package/dist/utils/x402-protocol.js.map +1 -1
- package/dist/utils/x402-recovery.d.ts +39 -0
- package/dist/utils/x402-recovery.d.ts.map +1 -0
- package/dist/utils/x402-recovery.js +85 -0
- package/dist/utils/x402-recovery.js.map +1 -0
- package/package.json +2 -2
|
@@ -165,14 +165,20 @@ export interface BitflowConfig {
|
|
|
165
165
|
keeperApiKey?: string;
|
|
166
166
|
}
|
|
167
167
|
/**
|
|
168
|
-
* Get Bitflow configuration from environment
|
|
168
|
+
* Get Bitflow configuration from environment.
|
|
169
169
|
*
|
|
170
|
-
*
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
*
|
|
170
|
+
* As of @bitflowlabs/core-sdk v2.4.2, API keys are fully optional.
|
|
171
|
+
* All public endpoints (tokens, quotes, routes, swaps) are accessible
|
|
172
|
+
* without a key at 500 req/min per IP. Keys only needed for higher limits.
|
|
173
|
+
*
|
|
174
|
+
* Optional env vars:
|
|
175
|
+
* - BITFLOW_API_KEY: Core API key (higher rate limits)
|
|
176
|
+
* - BITFLOW_API_HOST: Override default API host
|
|
177
|
+
* - BITFLOW_KEEPER_API_KEY: Keeper automation features
|
|
178
|
+
* - BITFLOW_KEEPER_API_HOST: Override Keeper API host
|
|
179
|
+
* - BITFLOW_READONLY_API_HOST: Override Stacks read-only node (default: api.hiro.so)
|
|
174
180
|
*/
|
|
175
|
-
export declare function getBitflowConfig(): BitflowConfig
|
|
181
|
+
export declare function getBitflowConfig(): BitflowConfig;
|
|
176
182
|
/**
|
|
177
183
|
* Get Bitflow contract addresses for the network
|
|
178
184
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/config/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;CAgCpB,CAAC;AAEX;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAiFvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,EAW7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;CAmBpB,CAAC;AAEX;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAMrF;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAapB,CAAC;AAEX;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO;;SAQhD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO;;;;;;;SAahD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;EAElD;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;CAWpB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/config/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;CAgCpB,CAAC;AAEX;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAiFvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAAe,EAW7C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;CAmBpB,CAAC;AAEX;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAMrF;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAapB,CAAC;AAEX;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO;;SAQhD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO;;;;;;;SAahD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO;;;;;;;;;;EAElD;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;CAWpB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAUhD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO;;;;;;EAEnD;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,4DAA4D,CAAC;AAE5F;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO;;;;EAOnD"}
|
package/dist/config/contracts.js
CHANGED
|
@@ -228,26 +228,26 @@ export const BITFLOW_CONTRACTS = {
|
|
|
228
228
|
},
|
|
229
229
|
};
|
|
230
230
|
/**
|
|
231
|
-
* Get Bitflow configuration from environment
|
|
231
|
+
* Get Bitflow configuration from environment.
|
|
232
232
|
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
*
|
|
233
|
+
* As of @bitflowlabs/core-sdk v2.4.2, API keys are fully optional.
|
|
234
|
+
* All public endpoints (tokens, quotes, routes, swaps) are accessible
|
|
235
|
+
* without a key at 500 req/min per IP. Keys only needed for higher limits.
|
|
236
|
+
*
|
|
237
|
+
* Optional env vars:
|
|
238
|
+
* - BITFLOW_API_KEY: Core API key (higher rate limits)
|
|
239
|
+
* - BITFLOW_API_HOST: Override default API host
|
|
240
|
+
* - BITFLOW_KEEPER_API_KEY: Keeper automation features
|
|
241
|
+
* - BITFLOW_KEEPER_API_HOST: Override Keeper API host
|
|
242
|
+
* - BITFLOW_READONLY_API_HOST: Override Stacks read-only node (default: api.hiro.so)
|
|
237
243
|
*/
|
|
238
244
|
export function getBitflowConfig() {
|
|
239
|
-
const apiHost = process.env.BITFLOW_API_HOST;
|
|
240
|
-
const apiKey = process.env.BITFLOW_API_KEY;
|
|
241
245
|
const readOnlyCallApiHost = process.env.BITFLOW_READONLY_API_HOST || "https://api.hiro.so";
|
|
242
|
-
// Return null if no API key configured (Bitflow features disabled)
|
|
243
|
-
if (!apiKey) {
|
|
244
|
-
return null;
|
|
245
|
-
}
|
|
246
246
|
return {
|
|
247
|
-
apiHost:
|
|
248
|
-
apiKey,
|
|
247
|
+
apiHost: process.env.BITFLOW_API_HOST || "https://bitflowsdk-api-test-7owjsmt8.uk.gateway.dev",
|
|
248
|
+
apiKey: process.env.BITFLOW_API_KEY,
|
|
249
249
|
readOnlyCallApiHost,
|
|
250
|
-
keeperApiHost: process.env.BITFLOW_KEEPER_API_HOST,
|
|
250
|
+
keeperApiHost: process.env.BITFLOW_KEEPER_API_HOST || "https://bitflow-keeper-test-7owjsmt8.uc.gateway.dev",
|
|
251
251
|
keeperApiKey: process.env.BITFLOW_KEEPER_API_KEY,
|
|
252
252
|
};
|
|
253
253
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/config/contracts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/config/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type SelectedSwapRoute, KeeperType } from "@bitflowlabs/core-sdk";
|
|
1
|
+
import { type QuoteResult, type SelectedSwapRoute, KeeperType } from "@bitflowlabs/core-sdk";
|
|
2
2
|
import { type Network } from "../config/index.js";
|
|
3
3
|
import type { Account, TransferResult } from "../transactions/builder.js";
|
|
4
4
|
export interface BitflowTicker {
|
|
@@ -14,13 +14,35 @@ export interface BitflowTicker {
|
|
|
14
14
|
low: string;
|
|
15
15
|
liquidity_in_usd: string;
|
|
16
16
|
}
|
|
17
|
+
export interface PriceImpactHop {
|
|
18
|
+
pool: string;
|
|
19
|
+
tokenIn: string;
|
|
20
|
+
tokenOut: string;
|
|
21
|
+
reserveIn: string;
|
|
22
|
+
reserveOut: string;
|
|
23
|
+
feeBps: number;
|
|
24
|
+
impact: number;
|
|
25
|
+
}
|
|
26
|
+
export type ImpactSeverity = "low" | "medium" | "high" | "severe";
|
|
27
|
+
export interface PriceImpactResult {
|
|
28
|
+
/** Combined pure price impact across all hops (0-1 decimal, fee-excluded) */
|
|
29
|
+
combinedImpact: number;
|
|
30
|
+
/** Human-readable percentage string e.g. "2.34%" */
|
|
31
|
+
combinedImpactPct: string;
|
|
32
|
+
/** Severity tier */
|
|
33
|
+
severity: ImpactSeverity;
|
|
34
|
+
/** Per-hop breakdown */
|
|
35
|
+
hops: PriceImpactHop[];
|
|
36
|
+
/** Total fee across all hops in basis points (approximate) */
|
|
37
|
+
totalFeeBps: number;
|
|
38
|
+
}
|
|
17
39
|
export interface BitflowSwapQuote {
|
|
18
40
|
tokenIn: string;
|
|
19
41
|
tokenOut: string;
|
|
20
42
|
amountIn: string;
|
|
21
43
|
expectedAmountOut: string;
|
|
22
44
|
route: string[];
|
|
23
|
-
priceImpact?:
|
|
45
|
+
priceImpact?: PriceImpactResult;
|
|
24
46
|
}
|
|
25
47
|
export interface BitflowToken {
|
|
26
48
|
id: string;
|
|
@@ -30,21 +52,19 @@ export interface BitflowToken {
|
|
|
30
52
|
decimals: number;
|
|
31
53
|
}
|
|
32
54
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* Current status: Bitflow SDK features require API key from Bitflow team.
|
|
55
|
+
* Bitflow Service
|
|
36
56
|
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* 2. Set environment variables:
|
|
40
|
-
* - BITFLOW_API_KEY: Required for SDK features (quotes, swaps, tokens)
|
|
41
|
-
* - BITFLOW_API_HOST: API host URL (provided by Bitflow)
|
|
42
|
-
* - BITFLOW_KEEPER_API_KEY: Optional, for Keeper automation features
|
|
43
|
-
* - BITFLOW_KEEPER_API_HOST: Optional, Keeper API host
|
|
57
|
+
* As of @bitflowlabs/core-sdk v2.4.2, all API keys are optional.
|
|
58
|
+
* The SDK works out of the box with public rate limits (500 req/min per IP).
|
|
44
59
|
*
|
|
45
|
-
*
|
|
60
|
+
* Optional env vars for higher rate limits:
|
|
61
|
+
* - BITFLOW_API_KEY: Core API (tokens, quotes, routes)
|
|
62
|
+
* - BITFLOW_API_HOST: Override API host
|
|
63
|
+
* - BITFLOW_KEEPER_API_KEY: Keeper automation features
|
|
64
|
+
* - BITFLOW_KEEPER_API_HOST: Override Keeper API host
|
|
65
|
+
* - BITFLOW_READONLY_API_HOST: Override Stacks read-only node
|
|
46
66
|
*
|
|
47
|
-
*
|
|
67
|
+
* Request higher limits: help@bitflow.finance
|
|
48
68
|
*/
|
|
49
69
|
export declare class BitflowService {
|
|
50
70
|
private network;
|
|
@@ -53,65 +73,52 @@ export declare class BitflowService {
|
|
|
53
73
|
private tokenCache;
|
|
54
74
|
constructor(network: Network);
|
|
55
75
|
/**
|
|
56
|
-
* Initialize the Bitflow SDK
|
|
76
|
+
* Initialize the Bitflow SDK.
|
|
77
|
+
* API keys are optional — public endpoints work without them.
|
|
57
78
|
*/
|
|
58
79
|
private initializeSdk;
|
|
59
|
-
/**
|
|
60
|
-
* Check if SDK is available
|
|
61
|
-
*/
|
|
62
|
-
isSdkAvailable(): boolean;
|
|
63
|
-
/**
|
|
64
|
-
* Ensure mainnet for Bitflow operations
|
|
65
|
-
*/
|
|
66
80
|
private ensureMainnet;
|
|
67
|
-
/**
|
|
68
|
-
* Ensure SDK is available
|
|
69
|
-
*/
|
|
70
81
|
private ensureSdk;
|
|
71
|
-
/**
|
|
72
|
-
* Get ticker data from public API (no API key required)
|
|
73
|
-
*/
|
|
74
82
|
getTicker(): Promise<BitflowTicker[]>;
|
|
75
|
-
/**
|
|
76
|
-
* Get ticker for a specific pair
|
|
77
|
-
*/
|
|
78
83
|
getTickerByPair(baseCurrency: string, targetCurrency: string): Promise<BitflowTicker | null>;
|
|
79
|
-
/**
|
|
80
|
-
* Get all available tokens for swapping
|
|
81
|
-
*/
|
|
82
84
|
getAvailableTokens(): Promise<BitflowToken[]>;
|
|
83
|
-
/**
|
|
84
|
-
* Get possible swap targets for a given token
|
|
85
|
-
* Returns token IDs that can be swapped to from tokenX
|
|
86
|
-
*/
|
|
87
85
|
getPossibleSwapTargets(tokenXId: string): Promise<string[]>;
|
|
88
|
-
/**
|
|
89
|
-
* Get all possible routes between two tokens
|
|
90
|
-
*/
|
|
91
86
|
getAllRoutes(tokenXId: string, tokenYId: string): Promise<SelectedSwapRoute[]>;
|
|
92
87
|
/**
|
|
93
|
-
* Get swap quote
|
|
88
|
+
* Get swap quote with price impact calculation.
|
|
94
89
|
*/
|
|
95
90
|
getSwapQuote(tokenXId: string, tokenYId: string, amount: number): Promise<BitflowSwapQuote>;
|
|
91
|
+
private classifyImpact;
|
|
96
92
|
/**
|
|
97
|
-
*
|
|
98
|
-
*
|
|
93
|
+
* Call a read-only contract function on the Stacks node used by Bitflow.
|
|
94
|
+
* Includes a 5-second timeout to avoid blocking indefinitely.
|
|
99
95
|
*/
|
|
100
|
-
|
|
96
|
+
private callReadOnly;
|
|
97
|
+
private getStringFromPool;
|
|
98
|
+
private getUintFromPool;
|
|
101
99
|
/**
|
|
102
|
-
*
|
|
100
|
+
* Calculate price impact for a swap route.
|
|
101
|
+
*
|
|
102
|
+
* Uses the XYK constant-product formula: impact = dx / (x + dx)
|
|
103
|
+
* For multi-hop: combined = 1 - (1-i1) * (1-i2) * ...
|
|
104
|
+
*
|
|
105
|
+
* For each hop, reads pool token-x-name/token-y-name to determine
|
|
106
|
+
* swap direction and select the correct reserves and fee fields.
|
|
107
|
+
*
|
|
108
|
+
* @param quoteResult The SDK quote result containing route and swap data
|
|
109
|
+
* @param amountIn The input amount as passed to the SDK (smallest units)
|
|
110
|
+
* @returns PriceImpactResult or null if route has no XYK pools
|
|
103
111
|
*/
|
|
104
|
-
|
|
112
|
+
calculatePriceImpact(quoteResult: QuoteResult, amountIn: number): Promise<PriceImpactResult | null>;
|
|
105
113
|
/**
|
|
106
|
-
*
|
|
114
|
+
* Execute a swap
|
|
115
|
+
* @param fee Optional fee in micro-STX. If omitted, fee is auto-estimated.
|
|
107
116
|
*/
|
|
117
|
+
swap(account: Account, tokenXId: string, tokenYId: string, amountIn: number, slippageTolerance?: number, fee?: bigint): Promise<TransferResult>;
|
|
108
118
|
getOrCreateKeeperContract(stacksAddress: string, keeperType?: KeeperType): Promise<{
|
|
109
119
|
contractIdentifier: string;
|
|
110
120
|
status: string;
|
|
111
121
|
}>;
|
|
112
|
-
/**
|
|
113
|
-
* Create a swap order via Keeper
|
|
114
|
-
*/
|
|
115
122
|
createKeeperOrder(params: {
|
|
116
123
|
contractIdentifier: string;
|
|
117
124
|
stacksAddress: string;
|
|
@@ -126,24 +133,15 @@ export declare class BitflowService {
|
|
|
126
133
|
orderId: string;
|
|
127
134
|
status: string;
|
|
128
135
|
}>;
|
|
129
|
-
/**
|
|
130
|
-
* Get order details
|
|
131
|
-
*/
|
|
132
136
|
getKeeperOrder(orderId: string): Promise<{
|
|
133
137
|
orderId: string;
|
|
134
138
|
status: string;
|
|
135
139
|
actionType: string;
|
|
136
140
|
actionAmount: string;
|
|
137
141
|
}>;
|
|
138
|
-
/**
|
|
139
|
-
* Cancel a keeper order
|
|
140
|
-
*/
|
|
141
142
|
cancelKeeperOrder(orderId: string): Promise<{
|
|
142
143
|
success: boolean;
|
|
143
144
|
}>;
|
|
144
|
-
/**
|
|
145
|
-
* Get user's keeper info and orders
|
|
146
|
-
*/
|
|
147
145
|
getKeeperUser(stacksAddress: string): Promise<{
|
|
148
146
|
stacksAddress: string;
|
|
149
147
|
contracts: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitflow.service.d.ts","sourceRoot":"","sources":["../../src/services/bitflow.service.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"bitflow.service.d.ts","sourceRoot":"","sources":["../../src/services/bitflow.service.ts"],"names":[],"mappings":"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"}
|