@ironwallet/mcp-server 1.1.0 → 1.2.1
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/README.md +11 -4
- package/dist/api/balances.d.ts +1 -0
- package/dist/api/balances.js +1 -1
- package/dist/api/balances.js.map +1 -1
- package/dist/api/history/index.d.ts +49 -0
- package/dist/api/history/index.js +209 -0
- package/dist/api/history/index.js.map +1 -0
- package/dist/api/history/merge.d.ts +63 -0
- package/dist/api/history/merge.js +208 -0
- package/dist/api/history/merge.js.map +1 -0
- package/dist/api/history/normalize.d.ts +37 -0
- package/dist/api/history/normalize.js +149 -0
- package/dist/api/history/normalize.js.map +1 -0
- package/dist/api/history/pace.d.ts +21 -0
- package/dist/api/history/pace.js +40 -0
- package/dist/api/history/pace.js.map +1 -0
- package/dist/api/history/providers/blockcypher.d.ts +24 -0
- package/dist/api/history/providers/blockcypher.js +70 -0
- package/dist/api/history/providers/blockcypher.js.map +1 -0
- package/dist/api/history/providers/esplora.d.ts +41 -0
- package/dist/api/history/providers/esplora.js +100 -0
- package/dist/api/history/providers/esplora.js.map +1 -0
- package/dist/api/history/providers/etherscan.d.ts +36 -0
- package/dist/api/history/providers/etherscan.js +118 -0
- package/dist/api/history/providers/etherscan.js.map +1 -0
- package/dist/api/history/providers/nodereal.d.ts +27 -0
- package/dist/api/history/providers/nodereal.js +93 -0
- package/dist/api/history/providers/nodereal.js.map +1 -0
- package/dist/api/history/providers/solana.d.ts +47 -0
- package/dist/api/history/providers/solana.js +211 -0
- package/dist/api/history/providers/solana.js.map +1 -0
- package/dist/api/history/providers/ton-shared.d.ts +18 -0
- package/dist/api/history/providers/ton-shared.js +38 -0
- package/dist/api/history/providers/ton-shared.js.map +1 -0
- package/dist/api/history/providers/tonapi.d.ts +52 -0
- package/dist/api/history/providers/tonapi.js +183 -0
- package/dist/api/history/providers/tonapi.js.map +1 -0
- package/dist/api/history/providers/toncenter.d.ts +55 -0
- package/dist/api/history/providers/toncenter.js +191 -0
- package/dist/api/history/providers/toncenter.js.map +1 -0
- package/dist/api/history/providers/trongrid.d.ts +48 -0
- package/dist/api/history/providers/trongrid.js +144 -0
- package/dist/api/history/providers/trongrid.js.map +1 -0
- package/dist/api/history/providers/tronscan.d.ts +55 -0
- package/dist/api/history/providers/tronscan.js +153 -0
- package/dist/api/history/providers/tronscan.js.map +1 -0
- package/dist/api/history/providers/xrp.d.ts +39 -0
- package/dist/api/history/providers/xrp.js +150 -0
- package/dist/api/history/providers/xrp.js.map +1 -0
- package/dist/api/history/types.d.ts +112 -0
- package/dist/api/history/types.js +27 -0
- package/dist/api/history/types.js.map +1 -0
- package/dist/api/swap.d.ts +2 -0
- package/dist/api/swap.js +24 -10
- package/dist/api/swap.js.map +1 -1
- package/dist/config.d.ts +12 -3
- package/dist/config.js +83 -7
- package/dist/config.js.map +1 -1
- package/dist/consent/copy.d.ts +2 -2
- package/dist/consent/copy.js +2 -1
- package/dist/consent/copy.js.map +1 -1
- package/dist/generated/env-config.js +96 -1
- package/dist/generated/env-config.js.map +1 -1
- package/dist/generated/env-profile.d.ts +7 -0
- package/dist/keystore/store.js +33 -4
- package/dist/keystore/store.js.map +1 -1
- package/dist/local-secrets.d.ts +23 -1
- package/dist/local-secrets.js +36 -2
- package/dist/local-secrets.js.map +1 -1
- package/dist/networks.d.ts +3 -0
- package/dist/networks.js +20 -0
- package/dist/networks.js.map +1 -1
- package/dist/npm-registry.d.ts +45 -0
- package/dist/npm-registry.js +175 -0
- package/dist/npm-registry.js.map +1 -0
- package/dist/policy.d.ts +31 -0
- package/dist/policy.js +95 -0
- package/dist/policy.js.map +1 -1
- package/dist/qr/deposit-qr.d.ts +21 -1
- package/dist/qr/deposit-qr.js +100 -21
- package/dist/qr/deposit-qr.js.map +1 -1
- package/dist/qr/font.js +3 -0
- package/dist/qr/font.js.map +1 -1
- package/dist/server.js +3 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/definitions.d.ts +23 -1
- package/dist/tools/definitions.js +87 -29
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/helpers.d.ts +10 -0
- package/dist/tools/helpers.js +26 -0
- package/dist/tools/helpers.js.map +1 -1
- package/dist/tools/history.d.ts +7 -0
- package/dist/tools/history.js +70 -0
- package/dist/tools/history.js.map +1 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/runtime.d.ts +8 -0
- package/dist/tools/runtime.js +110 -0
- package/dist/tools/runtime.js.map +1 -0
- package/dist/tools/swap.d.ts +9 -1
- package/dist/tools/swap.js +41 -7
- package/dist/tools/swap.js.map +1 -1
- package/dist/tools/transfer.d.ts +1 -1
- package/dist/tools/transfer.js +5 -2
- package/dist/tools/transfer.js.map +1 -1
- package/dist/tools/wallets.js +31 -13
- package/dist/tools/wallets.js.map +1 -1
- package/dist/web/manager.d.ts +6 -0
- package/dist/web/manager.js +149 -8
- package/dist/web/manager.js.map +1 -1
- package/package.json +2 -2
- package/server.json +19 -3
- package/tools.json +99 -20
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transaction history: one normalized shape for every chain.
|
|
3
|
+
*
|
|
4
|
+
* Every provider (Blockscout, NodeReal, TronScan, Esplora, …) is exposed as one
|
|
5
|
+
* or more `HistorySource`s — newest-first paged streams of `SourceItem`s. The
|
|
6
|
+
* merge engine (merge.ts) interleaves the sources of a network by timestamp and
|
|
7
|
+
* keeps an opaque cursor so the agent can page further without duplicates.
|
|
8
|
+
*
|
|
9
|
+
* Strings copied from indexers (token symbols, addresses) are untrusted input;
|
|
10
|
+
* providers must pass them through normalize.ts before they reach the agent.
|
|
11
|
+
*/
|
|
12
|
+
import type { NetworkId } from "../../networks.js";
|
|
13
|
+
export type HistoryDirection = "in" | "out" | "self";
|
|
14
|
+
/**
|
|
15
|
+
* transfer — native coin moved (ETH, BNB, TRX, BTC, …)
|
|
16
|
+
* token_transfer — fungible token moved (ERC-20 / TRC-20 / SPL / jetton / IOU)
|
|
17
|
+
* contract_call — the wallet called a contract; no recognised value transfer
|
|
18
|
+
* other — anything else the indexer returned for this address
|
|
19
|
+
*/
|
|
20
|
+
export type HistoryKind = "transfer" | "token_transfer" | "contract_call" | "other";
|
|
21
|
+
export type HistoryStatus = "confirmed" | "failed" | "pending";
|
|
22
|
+
export interface HistoryAsset {
|
|
23
|
+
symbol: string;
|
|
24
|
+
/** Token contract / mint / jetton master. Null for the native coin. */
|
|
25
|
+
contractAddress: string | null;
|
|
26
|
+
decimals: number;
|
|
27
|
+
/**
|
|
28
|
+
* Set when the symbol looks like an unsolicited / spam token (contains a
|
|
29
|
+
* link, unusual characters, or mimics another ticker). Indexer data only —
|
|
30
|
+
* never a guarantee either way.
|
|
31
|
+
*/
|
|
32
|
+
warning?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface HistoryAmount {
|
|
35
|
+
/** Smallest unit as a decimal string (wei, sun, satoshi, lamports, …). */
|
|
36
|
+
raw: string;
|
|
37
|
+
/** Human readable, formatted with `asset.decimals`. */
|
|
38
|
+
formatted: string;
|
|
39
|
+
}
|
|
40
|
+
export interface HistoryFee extends HistoryAmount {
|
|
41
|
+
/** Native coin symbol the fee was paid in. */
|
|
42
|
+
symbol: string;
|
|
43
|
+
}
|
|
44
|
+
export interface HistoryItem {
|
|
45
|
+
/** Transaction hash / signature. */
|
|
46
|
+
hash: string;
|
|
47
|
+
/** ISO 8601 timestamp; null when the indexer did not return one (pending). */
|
|
48
|
+
timestamp: string | null;
|
|
49
|
+
/** Block height / slot / ledger index; null when pending or unknown. */
|
|
50
|
+
block: number | null;
|
|
51
|
+
kind: HistoryKind;
|
|
52
|
+
direction: HistoryDirection;
|
|
53
|
+
status: HistoryStatus;
|
|
54
|
+
from: string | null;
|
|
55
|
+
to: string | null;
|
|
56
|
+
asset: HistoryAsset;
|
|
57
|
+
amount: HistoryAmount;
|
|
58
|
+
/** Fee paid by this wallet; null when the counterparty paid it or it is unknown. */
|
|
59
|
+
fee: HistoryFee | null;
|
|
60
|
+
}
|
|
61
|
+
/** A normalized item plus the millisecond sort key the merge engine orders by. */
|
|
62
|
+
export interface SourceItem {
|
|
63
|
+
/** Milliseconds since epoch. Pending items use Date.now() so they sort first. */
|
|
64
|
+
ts: number;
|
|
65
|
+
item: HistoryItem;
|
|
66
|
+
}
|
|
67
|
+
export interface SourcePage {
|
|
68
|
+
/** Newest first. */
|
|
69
|
+
items: SourceItem[];
|
|
70
|
+
/** Opaque cursor for the following page; null when this was the last page. */
|
|
71
|
+
next: string | null;
|
|
72
|
+
}
|
|
73
|
+
export interface SourceContext {
|
|
74
|
+
correlationId: string;
|
|
75
|
+
/**
|
|
76
|
+
* Base options for every indexer call: correlation id plus a tighter
|
|
77
|
+
* timeout / retry budget than the general HTTP defaults, so a dead primary
|
|
78
|
+
* hands over to the fallback provider quickly.
|
|
79
|
+
*/
|
|
80
|
+
http: {
|
|
81
|
+
correlationId: string;
|
|
82
|
+
timeoutMs: number;
|
|
83
|
+
retries: number;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/** One newest-first paged stream for a wallet address. */
|
|
87
|
+
export interface HistorySource {
|
|
88
|
+
/** Stable id used inside cursors, e.g. "native", "erc20". */
|
|
89
|
+
name: string;
|
|
90
|
+
fetchPage(pageCursor: string | null, pageSize: number, ctx: SourceContext): Promise<SourcePage>;
|
|
91
|
+
}
|
|
92
|
+
/** A provider bundles the sources of one indexer for one network/address. */
|
|
93
|
+
export interface HistoryProvider {
|
|
94
|
+
/** Label reported to the agent, e.g. "blockscout", "tronscan", "trongrid". */
|
|
95
|
+
label: string;
|
|
96
|
+
sources: HistorySource[];
|
|
97
|
+
}
|
|
98
|
+
export type HistoryApiKind = "etherscan" | "nodereal" | "tronscan" | "trongrid" | "esplora" | "blockcypher" | "solana-rpc" | "toncenter" | "tonapi" | "xrp-rpc";
|
|
99
|
+
/** One entry of the per-network provider chain in the baked profile. */
|
|
100
|
+
export interface HistoryApiSpec {
|
|
101
|
+
kind: HistoryApiKind;
|
|
102
|
+
/**
|
|
103
|
+
* API base URL. Omit to reuse the network's existing endpoint from the
|
|
104
|
+
* profile (tronApiUrl, bitcoinApiUrl, solanaRpcUrl, tonApiUrl, xrpRpcUrl, …).
|
|
105
|
+
*/
|
|
106
|
+
url?: string;
|
|
107
|
+
}
|
|
108
|
+
export type HistoryApis = Partial<Record<NetworkId, HistoryApiSpec[]>>;
|
|
109
|
+
/** Rows per page: the default is also the cap — one page is one screen of history. */
|
|
110
|
+
export declare const HISTORY_MAX_LIMIT = 20;
|
|
111
|
+
export declare const HISTORY_DEFAULT_LIMIT = 20;
|
|
112
|
+
export declare const HISTORY_API_KINDS: readonly HistoryApiKind[];
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transaction history: one normalized shape for every chain.
|
|
3
|
+
*
|
|
4
|
+
* Every provider (Blockscout, NodeReal, TronScan, Esplora, …) is exposed as one
|
|
5
|
+
* or more `HistorySource`s — newest-first paged streams of `SourceItem`s. The
|
|
6
|
+
* merge engine (merge.ts) interleaves the sources of a network by timestamp and
|
|
7
|
+
* keeps an opaque cursor so the agent can page further without duplicates.
|
|
8
|
+
*
|
|
9
|
+
* Strings copied from indexers (token symbols, addresses) are untrusted input;
|
|
10
|
+
* providers must pass them through normalize.ts before they reach the agent.
|
|
11
|
+
*/
|
|
12
|
+
/** Rows per page: the default is also the cap — one page is one screen of history. */
|
|
13
|
+
export const HISTORY_MAX_LIMIT = 20;
|
|
14
|
+
export const HISTORY_DEFAULT_LIMIT = 20;
|
|
15
|
+
export const HISTORY_API_KINDS = [
|
|
16
|
+
"etherscan",
|
|
17
|
+
"nodereal",
|
|
18
|
+
"tronscan",
|
|
19
|
+
"trongrid",
|
|
20
|
+
"esplora",
|
|
21
|
+
"blockcypher",
|
|
22
|
+
"solana-rpc",
|
|
23
|
+
"toncenter",
|
|
24
|
+
"tonapi",
|
|
25
|
+
"xrp-rpc",
|
|
26
|
+
];
|
|
27
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/history/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAyHH,sFAAsF;AACtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,WAAW;IACX,UAAU;IACV,UAAU;IACV,UAAU;IACV,SAAS;IACT,aAAa;IACb,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,SAAS;CACV,CAAC"}
|
package/dist/api/swap.d.ts
CHANGED
|
@@ -75,6 +75,8 @@ export declare function estimateSwap(token: string, params: {
|
|
|
75
75
|
to: SwapSide;
|
|
76
76
|
maxMode?: boolean;
|
|
77
77
|
}, opts?: SwapCallOpts): Promise<SwapEstimateResult>;
|
|
78
|
+
export declare function slimSwapDetails(details: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
|
|
79
|
+
export declare function slimSwapPayload(json: Record<string, unknown>): Record<string, unknown>;
|
|
78
80
|
export interface SwapTxToSign {
|
|
79
81
|
txId?: string;
|
|
80
82
|
txData?: string;
|
package/dist/api/swap.js
CHANGED
|
@@ -255,8 +255,19 @@ function mapEstimate(json) {
|
|
|
255
255
|
raw: json,
|
|
256
256
|
};
|
|
257
257
|
}
|
|
258
|
-
/** Agent-facing swap fees:
|
|
259
|
-
const SWAP_FEE_KEYS = ["
|
|
258
|
+
/** Agent-facing swap fees: tokenFee / coinFee only (no network fee). */
|
|
259
|
+
const SWAP_FEE_KEYS = ["tokenFee", "coinFee"];
|
|
260
|
+
/** Provider extras that confuse agents and are not needed to execute a swap. */
|
|
261
|
+
const SWAP_DROP_KEYS = ["slippage", "slippagePercent", "slippageBps", "networkFee"];
|
|
262
|
+
function omitDroppedKeys(src) {
|
|
263
|
+
const out = {};
|
|
264
|
+
for (const [k, v] of Object.entries(src)) {
|
|
265
|
+
if (SWAP_DROP_KEYS.includes(k))
|
|
266
|
+
continue;
|
|
267
|
+
out[k] = v;
|
|
268
|
+
}
|
|
269
|
+
return out;
|
|
270
|
+
}
|
|
260
271
|
function pickSwapFees(fees) {
|
|
261
272
|
if (!fees || typeof fees !== "object" || Array.isArray(fees))
|
|
262
273
|
return undefined;
|
|
@@ -268,17 +279,16 @@ function pickSwapFees(fees) {
|
|
|
268
279
|
}
|
|
269
280
|
return Object.keys(out).length > 0 ? out : undefined;
|
|
270
281
|
}
|
|
271
|
-
function slimSwapDetails(details) {
|
|
282
|
+
export function slimSwapDetails(details) {
|
|
272
283
|
if (!details)
|
|
273
284
|
return undefined;
|
|
274
|
-
|
|
275
|
-
return details;
|
|
276
|
-
const { fees, ...rest } = details;
|
|
285
|
+
const { fees, ...rest } = omitDroppedKeys(details);
|
|
277
286
|
const slim = pickSwapFees(fees);
|
|
278
|
-
|
|
287
|
+
const next = slim ? { ...rest, fees: slim } : rest;
|
|
288
|
+
return Object.keys(next).length > 0 ? next : undefined;
|
|
279
289
|
}
|
|
280
|
-
function slimSwapPayload(json) {
|
|
281
|
-
const next =
|
|
290
|
+
export function slimSwapPayload(json) {
|
|
291
|
+
const next = omitDroppedKeys(json);
|
|
282
292
|
if ("fees" in next) {
|
|
283
293
|
const slim = pickSwapFees(next.fees);
|
|
284
294
|
if (slim)
|
|
@@ -287,7 +297,11 @@ function slimSwapPayload(json) {
|
|
|
287
297
|
delete next.fees;
|
|
288
298
|
}
|
|
289
299
|
if (next.details && typeof next.details === "object" && !Array.isArray(next.details)) {
|
|
290
|
-
|
|
300
|
+
const slim = slimSwapDetails(next.details);
|
|
301
|
+
if (slim)
|
|
302
|
+
next.details = slim;
|
|
303
|
+
else
|
|
304
|
+
delete next.details;
|
|
291
305
|
}
|
|
292
306
|
return next;
|
|
293
307
|
}
|
package/dist/api/swap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/api/swap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../../src/api/swap.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* embeds one profile via the repo-root `npm run bake`.
|
|
6
6
|
*/
|
|
7
7
|
import { type NetworkId } from "./networks.js";
|
|
8
|
+
import { type HistoryApiSpec } from "./api/history/types.js";
|
|
8
9
|
/** `package.json` version of this package (works from `src/` and compiled `dist/`). */
|
|
9
10
|
export declare function packageVersion(): string;
|
|
10
11
|
export type { NetworkId } from "./networks.js";
|
|
@@ -46,15 +47,18 @@ export interface Config {
|
|
|
46
47
|
relayApiKey: string;
|
|
47
48
|
/** App version string sent as x-iwt-cli / X-App-Version. */
|
|
48
49
|
appVersion: string;
|
|
49
|
-
/** Device id sent as X-Device-Id
|
|
50
|
+
/** Device id sent as X-Device-Id: `web:<uuid>`. UUID file under the keystore dir unless overridden. */
|
|
50
51
|
deviceId: string;
|
|
51
52
|
/** Machine fingerprint sent as X-Device-Fingerprint. OS install id + platform, or device-id if that id is missing. */
|
|
52
53
|
deviceFingerprint: string;
|
|
54
|
+
/** X-Installation-ID, `<uuid>:<unix ns>`. File under the keystore dir. */
|
|
55
|
+
installationId: string;
|
|
53
56
|
/** X-Device-Locale value, format: TimeZone=..;Language=..;Region=..; */
|
|
54
57
|
deviceLocale: string;
|
|
55
58
|
/**
|
|
56
|
-
* JSON for `X-Device-Info
|
|
57
|
-
*
|
|
59
|
+
* JSON for `X-Device-Info` (plain) and `X-Device-Info-Base64` (the form the
|
|
60
|
+
* swap gateway decodes first). The swap API keys routing off `systemName`
|
|
61
|
+
* (`Web` here — this is a desktop MCP).
|
|
58
62
|
*/
|
|
59
63
|
deviceInfo: string;
|
|
60
64
|
/** Directory holding the encrypted keystore. */
|
|
@@ -77,6 +81,11 @@ export interface Config {
|
|
|
77
81
|
xrpRpcUrl: string;
|
|
78
82
|
/** True when Bitcoin should use testnet (dev). */
|
|
79
83
|
bitcoinTestnet: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Transaction-history indexer chain per network (first entry is primary).
|
|
86
|
+
* Empty array = history unsupported for that network in this build.
|
|
87
|
+
*/
|
|
88
|
+
historyApis: Record<NetworkId, HistoryApiSpec[]>;
|
|
80
89
|
/** Per-attempt HTTP/RPC timeout in milliseconds. */
|
|
81
90
|
httpTimeoutMs: number;
|
|
82
91
|
/**
|
package/dist/config.js
CHANGED
|
@@ -10,8 +10,9 @@ import { dirname, join } from "node:path";
|
|
|
10
10
|
import { fileURLToPath } from "node:url";
|
|
11
11
|
import { BAKED_ENV } from "./generated/env-config.js";
|
|
12
12
|
import { ALL_NETWORKS, EVM_NETWORKS } from "./networks.js";
|
|
13
|
+
import { HISTORY_API_KINDS, } from "./api/history/types.js";
|
|
13
14
|
import { resolveDeviceFingerprint } from "./device-fingerprint.js";
|
|
14
|
-
import {
|
|
15
|
+
import { formatDeviceId, resolveKeystoreDir, resolveInstallationId, resolveKeystorePassphrase, resolveRawDeviceId, resolveRelayApiKey, } from "./local-secrets.js";
|
|
15
16
|
/** `package.json` version of this package (works from `src/` and compiled `dist/`). */
|
|
16
17
|
export function packageVersion() {
|
|
17
18
|
try {
|
|
@@ -139,12 +140,78 @@ function resolveEvmRpcUrls(profileUrls) {
|
|
|
139
140
|
}
|
|
140
141
|
return urls;
|
|
141
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* Non-EVM chains can read history from the same endpoints that serve balances,
|
|
145
|
+
* so they work on every profile. EVM chains need an indexer (Blockscout /
|
|
146
|
+
* Routescan / NodeReal) that only the profile knows about.
|
|
147
|
+
*/
|
|
148
|
+
const DEFAULT_HISTORY_APIS = {
|
|
149
|
+
ethereum: [],
|
|
150
|
+
bsc: [],
|
|
151
|
+
polygon: [],
|
|
152
|
+
base: [],
|
|
153
|
+
arbitrum: [],
|
|
154
|
+
optimism: [],
|
|
155
|
+
avalanche: [],
|
|
156
|
+
tron: [{ kind: "trongrid" }],
|
|
157
|
+
bitcoin: [{ kind: "esplora" }],
|
|
158
|
+
litecoin: [{ kind: "esplora" }],
|
|
159
|
+
doge: [{ kind: "blockcypher" }],
|
|
160
|
+
solana: [{ kind: "solana-rpc" }],
|
|
161
|
+
ton: [{ kind: "toncenter" }],
|
|
162
|
+
xrp: [{ kind: "xrp-rpc" }],
|
|
163
|
+
};
|
|
164
|
+
function isHistoryApiSpec(value) {
|
|
165
|
+
if (!value || typeof value !== "object")
|
|
166
|
+
return false;
|
|
167
|
+
const spec = value;
|
|
168
|
+
if (!HISTORY_API_KINDS.includes(spec.kind))
|
|
169
|
+
return false;
|
|
170
|
+
return spec.url === undefined || (typeof spec.url === "string" && spec.url.length > 0);
|
|
171
|
+
}
|
|
172
|
+
/** Validate a per-network chain from the profile or `IW_HISTORY_APIS`; bad entries are dropped. */
|
|
173
|
+
function sanitizeHistoryApis(raw, origin) {
|
|
174
|
+
const out = {};
|
|
175
|
+
if (!raw || typeof raw !== "object")
|
|
176
|
+
return out;
|
|
177
|
+
for (const [network, chain] of Object.entries(raw)) {
|
|
178
|
+
if (!ALL_NETWORKS.includes(network))
|
|
179
|
+
continue;
|
|
180
|
+
if (!Array.isArray(chain))
|
|
181
|
+
continue;
|
|
182
|
+
const specs = chain.filter(isHistoryApiSpec).map((s) => ({
|
|
183
|
+
kind: s.kind,
|
|
184
|
+
...(s.url ? { url: s.url.replace(/\/+$/, "") } : {}),
|
|
185
|
+
}));
|
|
186
|
+
if (specs.length !== chain.length) {
|
|
187
|
+
process.stderr.write(`[ironwallet-mcp] ${origin}: ignored ${chain.length - specs.length} invalid history API entr(ies) for ${network}\n`);
|
|
188
|
+
}
|
|
189
|
+
out[network] = specs;
|
|
190
|
+
}
|
|
191
|
+
return out;
|
|
192
|
+
}
|
|
193
|
+
function resolveHistoryApis(profile) {
|
|
194
|
+
const merged = { ...DEFAULT_HISTORY_APIS };
|
|
195
|
+
Object.assign(merged, sanitizeHistoryApis(profile, "profile.historyApis"));
|
|
196
|
+
const envRaw = process.env.IW_HISTORY_APIS;
|
|
197
|
+
if (envRaw && envRaw.trim().length > 0) {
|
|
198
|
+
try {
|
|
199
|
+
Object.assign(merged, sanitizeHistoryApis(JSON.parse(envRaw), "IW_HISTORY_APIS"));
|
|
200
|
+
}
|
|
201
|
+
catch {
|
|
202
|
+
process.stderr.write("[ironwallet-mcp] IW_HISTORY_APIS is not valid JSON; ignored\n");
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return merged;
|
|
206
|
+
}
|
|
142
207
|
let cached = null;
|
|
143
208
|
export function getConfig() {
|
|
144
209
|
if (cached)
|
|
145
210
|
return cached;
|
|
146
211
|
resolveKeystorePassphrase();
|
|
147
|
-
|
|
212
|
+
// Raw UUID stays the fingerprint fallback so existing installs keep the same
|
|
213
|
+
// X-Device-Fingerprint; only the header value gains the `web:` prefix.
|
|
214
|
+
const rawDeviceId = resolveRawDeviceId();
|
|
148
215
|
const profile = BAKED_ENV;
|
|
149
216
|
cached = {
|
|
150
217
|
authUrl: envOr("IW_AUTH_URL", profile.authUrl),
|
|
@@ -155,11 +222,15 @@ export function getConfig() {
|
|
|
155
222
|
ratesApiUrl: envOr("IW_RATES_API_URL", profile.ratesApiUrl ?? ""),
|
|
156
223
|
staticResourcesUrl: envOr("IW_STATIC_RESOURCES_URL", profile.staticResourcesUrl ?? ""),
|
|
157
224
|
relayApiKey: resolveRelayApiKey(),
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
225
|
+
// Identity headers are not overridable: the backend routes swaps off
|
|
226
|
+
// deviceInfo.systemName and reads appVersion for client metrics, so a
|
|
227
|
+
// spoofed value only breaks support.
|
|
228
|
+
appVersion: `ironwallet-mcp/${packageVersion()}`,
|
|
229
|
+
deviceId: formatDeviceId(rawDeviceId),
|
|
230
|
+
deviceFingerprint: resolveDeviceFingerprint(rawDeviceId),
|
|
231
|
+
installationId: resolveInstallationId(),
|
|
232
|
+
deviceLocale: defaultDeviceLocale(),
|
|
233
|
+
deviceInfo: defaultDeviceInfo(),
|
|
163
234
|
keystoreDir: resolveKeystoreDir(),
|
|
164
235
|
evmRpcUrls: resolveEvmRpcUrls(profile.evmRpcUrls),
|
|
165
236
|
tronApiUrl: envOr("IW_TRON_API", profile.tronApiUrl),
|
|
@@ -170,6 +241,7 @@ export function getConfig() {
|
|
|
170
241
|
tonApiUrl: envOr("IW_TON_API_URL", profile.tonApiUrl),
|
|
171
242
|
xrpRpcUrl: envOr("IW_XRP_RPC", profile.xrpRpcUrl),
|
|
172
243
|
bitcoinTestnet: profile.bitcoinTestnet,
|
|
244
|
+
historyApis: resolveHistoryApis(profile.historyApis),
|
|
173
245
|
httpTimeoutMs: envInt("IW_HTTP_TIMEOUT_MS", 15000, 1000, 120000),
|
|
174
246
|
// Forward can take well over 15s on L2s when the relay waits for broadcast /
|
|
175
247
|
// inclusion; default 60s. Cap raised to 5 min so slow envs can override.
|
|
@@ -197,7 +269,11 @@ export function commonHeaders(cfg) {
|
|
|
197
269
|
// Backend validates the format: TimeZone=..;Language=..;Region=..;
|
|
198
270
|
"X-Device-Locale": cfg.deviceLocale,
|
|
199
271
|
// Swap routing reads UserData.XDeviceInfo.systemName (`Web` for this client).
|
|
272
|
+
// Plain JSON is what the MCP proxy reads for metrics; the swap gateway
|
|
273
|
+
// decodes the base64 form first. Same payload in both.
|
|
200
274
|
"X-Device-Info": cfg.deviceInfo,
|
|
275
|
+
"X-Device-Info-Base64": Buffer.from(cfg.deviceInfo, "utf8").toString("base64"),
|
|
276
|
+
"X-Installation-ID": cfg.installationId,
|
|
201
277
|
"Content-Language": "en",
|
|
202
278
|
};
|
|
203
279
|
if (cfg.relayApiKey)
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAkB,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/consent/copy.d.ts
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* Canonical MCP consent copy (English). Chat, create_wallets, and the local
|
|
3
3
|
* manager must show this text. Bump CONSENT_VERSION when the wording changes.
|
|
4
4
|
*/
|
|
5
|
-
export declare const CONSENT_VERSION = "
|
|
5
|
+
export declare const CONSENT_VERSION = "v2";
|
|
6
6
|
export declare const CONSENT_TITLE = "Before connecting an AI agent to your wallet";
|
|
7
7
|
export declare const CONSENT_LEAD = "Connecting MCP lets the AI agent view balances, transfer assets, and swap on behalf of this wallet.";
|
|
8
|
-
export declare const CONSENT_BULLETS: readonly ["By default the agent can send funds and swap without extra confirmation on each operation.", "Use a dedicated wallet with a small balance, not your main or savings wallet.", "The recovery phrase stays encrypted on this device. Loss or compromise means permanent loss of access to the funds.", "IronWallet is not responsible for the AI agent's actions, misconfiguration, or loss of funds from using this feature.", "You can ask the agent to set limits in chat (read-only, a per-transaction USD limit, a transfer recipient allow-list)."];
|
|
8
|
+
export declare const CONSENT_BULLETS: readonly ["The experience depends on the AI host. Cursor offers the most complete support, Claude Code works well, and Claude Desktop chat is more limited. A paid agent plan is recommended for best results.", "By default the agent can send funds and swap without extra confirmation on each operation.", "Use a dedicated wallet with a small balance, not your main or savings wallet.", "The recovery phrase stays encrypted on this device. Loss or compromise means permanent loss of access to the funds.", "IronWallet is not responsible for the AI agent's actions, misconfiguration, or loss of funds from using this feature.", "You can ask the agent to set limits in chat (read-only, a per-transaction USD limit, a transfer recipient allow-list)."];
|
|
9
9
|
export declare const CONSENT_CHECKBOX = "I understand the risks and want to continue";
|
|
10
10
|
export declare const CONSENT_CHAT_INSTRUCTION = "Show this text in full in chat. Do not shorten it. After the user explicitly confirms, call accept_mcp_consent with accepted=true, or open the wallet manager so they can accept there.";
|
|
11
11
|
export declare function consentDocument(): {
|
package/dist/consent/copy.js
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* Canonical MCP consent copy (English). Chat, create_wallets, and the local
|
|
3
3
|
* manager must show this text. Bump CONSENT_VERSION when the wording changes.
|
|
4
4
|
*/
|
|
5
|
-
export const CONSENT_VERSION = "
|
|
5
|
+
export const CONSENT_VERSION = "v2";
|
|
6
6
|
export const CONSENT_TITLE = "Before connecting an AI agent to your wallet";
|
|
7
7
|
export const CONSENT_LEAD = "Connecting MCP lets the AI agent view balances, transfer assets, and swap on behalf of this wallet.";
|
|
8
8
|
export const CONSENT_BULLETS = [
|
|
9
|
+
"The experience depends on the AI host. Cursor offers the most complete support, Claude Code works well, and Claude Desktop chat is more limited. A paid agent plan is recommended for best results.",
|
|
9
10
|
"By default the agent can send funds and swap without extra confirmation on each operation.",
|
|
10
11
|
"Use a dedicated wallet with a small balance, not your main or savings wallet.",
|
|
11
12
|
"The recovery phrase stays encrypted on this device. Loss or compromise means permanent loss of access to the funds.",
|
package/dist/consent/copy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy.js","sourceRoot":"","sources":["../../src/consent/copy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,MAAM,CAAC,MAAM,aAAa,GAAG,8CAA8C,CAAC;AAE5E,MAAM,CAAC,MAAM,YAAY,GACvB,qGAAqG,CAAC;AAExG,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,4FAA4F;IAC5F,+EAA+E;IAC/E,qHAAqH;IACrH,uHAAuH;IACvH,wHAAwH;CAChH,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,6CAA6C,CAAC;AAE9E,MAAM,CAAC,MAAM,wBAAwB,GACnC,yLAAyL,CAAC;AAE5L,MAAM,UAAU,eAAe;IAQ7B,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,gBAAgB;QAC1B,WAAW,EAAE,wBAAwB;KACtC,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"copy.js","sourceRoot":"","sources":["../../src/consent/copy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,MAAM,CAAC,MAAM,aAAa,GAAG,8CAA8C,CAAC;AAE5E,MAAM,CAAC,MAAM,YAAY,GACvB,qGAAqG,CAAC;AAExG,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,qMAAqM;IACrM,4FAA4F;IAC5F,+EAA+E;IAC/E,qHAAqH;IACrH,uHAAuH;IACvH,wHAAwH;CAChH,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,6CAA6C,CAAC;AAE9E,MAAM,CAAC,MAAM,wBAAwB,GACnC,yLAAyL,CAAC;AAE5L,MAAM,UAAU,eAAe;IAQ7B,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,gBAAgB;QAC1B,WAAW,EAAE,wBAAwB;KACtC,CAAC;AACJ,CAAC"}
|