@ton/mcp 0.1.12 → 0.1.15-alpha.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.
Files changed (79) hide show
  1. package/README.md +214 -21
  2. package/dist/cli.js +25578 -29501
  3. package/dist/contracts/agentic_wallet/AgenticWallet.source.d.ts +11 -0
  4. package/dist/contracts/agentic_wallet/AgenticWallet.source.d.ts.map +1 -0
  5. package/dist/contracts/agentic_wallet/AgenticWalletAdapter.d.ts +62 -0
  6. package/dist/contracts/agentic_wallet/AgenticWalletAdapter.d.ts.map +1 -0
  7. package/dist/contracts/agentic_wallet/actions.d.ts.map +1 -0
  8. package/dist/contracts/agentic_wallet/index.d.ts +10 -0
  9. package/dist/contracts/agentic_wallet/index.d.ts.map +1 -0
  10. package/dist/factory.d.ts +13 -34
  11. package/dist/factory.d.ts.map +1 -1
  12. package/dist/http-mode.d.ts +25 -0
  13. package/dist/http-mode.d.ts.map +1 -0
  14. package/dist/index.cjs +99349 -103146
  15. package/dist/index.d.ts +8 -1
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +99346 -103147
  18. package/dist/registry/config.d.ts +202 -0
  19. package/dist/registry/config.d.ts.map +1 -0
  20. package/dist/runtime/wallet-runtime.d.ts +35 -0
  21. package/dist/runtime/wallet-runtime.d.ts.map +1 -0
  22. package/dist/serverless.cjs +18653 -22450
  23. package/dist/serverless.d.ts.map +1 -1
  24. package/dist/serverless.js +18654 -22451
  25. package/dist/services/AgenticOnboardingService.d.ts +51 -0
  26. package/dist/services/AgenticOnboardingService.d.ts.map +1 -0
  27. package/dist/services/AgenticSetupSessionManager.d.ts +82 -0
  28. package/dist/services/AgenticSetupSessionManager.d.ts.map +1 -0
  29. package/dist/services/KeyManager.d.ts +4 -3
  30. package/dist/services/KeyManager.d.ts.map +1 -1
  31. package/dist/services/McpWalletService.d.ts +75 -2
  32. package/dist/services/McpWalletService.d.ts.map +1 -1
  33. package/dist/services/WalletRegistryService.d.ts +99 -0
  34. package/dist/services/WalletRegistryService.d.ts.map +1 -0
  35. package/dist/tools/address-tools.d.ts +119 -0
  36. package/dist/tools/address-tools.d.ts.map +1 -0
  37. package/dist/tools/agentic-onboarding-tools.d.ts +120 -0
  38. package/dist/tools/agentic-onboarding-tools.d.ts.map +1 -0
  39. package/dist/tools/agentic-tools.d.ts +71 -0
  40. package/dist/tools/agentic-tools.d.ts.map +1 -0
  41. package/dist/tools/dns-tools.d.ts.map +1 -1
  42. package/dist/tools/index.d.ts +5 -0
  43. package/dist/tools/index.d.ts.map +1 -1
  44. package/dist/tools/nft-tools.d.ts.map +1 -1
  45. package/dist/tools/sanitize.d.ts +44 -0
  46. package/dist/tools/sanitize.d.ts.map +1 -0
  47. package/dist/tools/transaction-tools.d.ts +31 -0
  48. package/dist/tools/transaction-tools.d.ts.map +1 -0
  49. package/dist/tools/transfer-tools.d.ts +8 -8
  50. package/dist/tools/transfer-tools.d.ts.map +1 -1
  51. package/dist/tools/wallet-management-tools.d.ts +249 -0
  52. package/dist/tools/wallet-management-tools.d.ts.map +1 -0
  53. package/dist/types/config.d.ts +4 -3
  54. package/dist/types/config.d.ts.map +1 -1
  55. package/dist/types/contacts.d.ts +2 -1
  56. package/dist/types/contacts.d.ts.map +1 -1
  57. package/dist/utils/address.d.ts +15 -0
  58. package/dist/utils/address.d.ts.map +1 -0
  59. package/dist/utils/agentic.d.ts +61 -0
  60. package/dist/utils/agentic.d.ts.map +1 -0
  61. package/dist/utils/math.d.ts +9 -0
  62. package/dist/utils/math.d.ts.map +1 -0
  63. package/dist/utils/private-key.d.ts +14 -0
  64. package/dist/utils/private-key.d.ts.map +1 -0
  65. package/dist/utils/ton-client.d.ts +14 -0
  66. package/dist/utils/ton-client.d.ts.map +1 -0
  67. package/llms.txt +151 -6
  68. package/package.json +3 -3
  69. package/skills/SKILL.md +63 -8
  70. package/dist/contracts/w5_ownable/WalletOwnable.d.ts +0 -87
  71. package/dist/contracts/w5_ownable/WalletOwnable.d.ts.map +0 -1
  72. package/dist/contracts/w5_ownable/WalletOwnable.source.d.ts +0 -11
  73. package/dist/contracts/w5_ownable/WalletOwnable.source.d.ts.map +0 -1
  74. package/dist/contracts/w5_ownable/WalletOwnableAdapter.d.ts +0 -111
  75. package/dist/contracts/w5_ownable/WalletOwnableAdapter.d.ts.map +0 -1
  76. package/dist/contracts/w5_ownable/actions.d.ts.map +0 -1
  77. package/dist/contracts/w5_ownable/index.d.ts +0 -12
  78. package/dist/contracts/w5_ownable/index.d.ts.map +0 -1
  79. /package/dist/contracts/{w5_ownable → agentic_wallet}/actions.d.ts +0 -0
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { PendingAgenticDeployment, StoredAgenticWallet, TonNetwork } from '../registry/config.js';
9
+ import type { WalletRegistryService } from './WalletRegistryService.js';
10
+ import type { AgenticSetupSessionManager } from './AgenticSetupSessionManager.js';
11
+ import type { AgenticSetupSession } from './AgenticSetupSessionManager.js';
12
+ export interface AgenticRootWalletSetupStatus {
13
+ setupId: string;
14
+ pendingDeployment: PendingAgenticDeployment;
15
+ session: AgenticSetupSession | null;
16
+ status: AgenticSetupSession['status'] | 'pending_without_callback';
17
+ dashboardUrl?: string;
18
+ }
19
+ export declare class AgenticOnboardingService {
20
+ private readonly registry;
21
+ private readonly sessionManager;
22
+ constructor(registry: WalletRegistryService, sessionManager: AgenticSetupSessionManager);
23
+ startRootWalletSetup(input: {
24
+ network?: string;
25
+ name?: string;
26
+ source?: string;
27
+ collectionAddress?: string;
28
+ tonDeposit?: string;
29
+ }): Promise<{
30
+ setupId: string;
31
+ network: TonNetwork;
32
+ operatorPublicKey: string;
33
+ dashboardUrl: string;
34
+ callbackUrl: string;
35
+ pendingDeployment: PendingAgenticDeployment;
36
+ }>;
37
+ listRootWalletSetups(): Promise<AgenticRootWalletSetupStatus[]>;
38
+ getRootWalletSetup(setupId: string): Promise<AgenticRootWalletSetupStatus | null>;
39
+ private composeStatus;
40
+ completeRootWalletSetup(input: {
41
+ setupId: string;
42
+ walletAddress?: string;
43
+ ownerAddress?: string;
44
+ }): Promise<{
45
+ wallet: StoredAgenticWallet;
46
+ resolvedWalletAddress: string;
47
+ usedCallbackPayload: boolean;
48
+ }>;
49
+ cancelRootWalletSetup(setupId: string): Promise<void>;
50
+ }
51
+ //# sourceMappingURL=AgenticOnboardingService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgenticOnboardingService.d.ts","sourceRoot":"","sources":["../../src/services/AgenticOnboardingService.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEvG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EAAgC,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAmBzG,MAAM,WAAW,4BAA4B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG,0BAA0B,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,wBAAwB;IAE7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,QAAQ,EAAE,qBAAqB,EAC/B,cAAc,EAAE,0BAA0B;IAGzD,oBAAoB,CAAC,KAAK,EAAE;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,UAAU,CAAC;QACpB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,iBAAiB,EAAE,wBAAwB,CAAC;KAC/C,CAAC;IAiCI,oBAAoB,IAAI,OAAO,CAAC,4BAA4B,EAAE,CAAC;IAK/D,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,GAAG,IAAI,CAAC;IAQvF,OAAO,CAAC,aAAa;IAUf,uBAAuB,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAC9G,MAAM,EAAE,mBAAmB,CAAC;QAC5B,qBAAqB,EAAE,MAAM,CAAC;QAC9B,mBAAmB,EAAE,OAAO,CAAC;KAChC,CAAC;IA4DI,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAI9D"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { IncomingMessage, ServerResponse } from 'node:http';
9
+ import type { AgenticSetupStatus, StoredAgenticSetupSession } from '../registry/config.js';
10
+ export interface AgenticDeployCallbackPayload {
11
+ event: 'agent_wallet_deployed';
12
+ network?: {
13
+ chainId?: string | number;
14
+ collectionAddress?: string;
15
+ };
16
+ wallet?: {
17
+ address?: string;
18
+ ownerAddress?: string;
19
+ originOperatorPublicKey?: string;
20
+ operatorPublicKey?: string;
21
+ deployedByUser?: boolean;
22
+ name?: string;
23
+ source?: string;
24
+ };
25
+ }
26
+ export type { AgenticSetupStatus } from '../registry/config.js';
27
+ export interface AgenticSetupSession {
28
+ setupId: string;
29
+ callbackUrl: string;
30
+ status: AgenticSetupStatus;
31
+ createdAt: string;
32
+ expiresAt: string;
33
+ payload?: AgenticDeployCallbackPayload;
34
+ }
35
+ export interface AgenticSetupSessionStore {
36
+ listSessions(): StoredAgenticSetupSession[];
37
+ upsertSession(session: StoredAgenticSetupSession): void;
38
+ removeSession(setupId: string): void;
39
+ }
40
+ export declare class ConfigBackedAgenticSetupSessionStore implements AgenticSetupSessionStore {
41
+ listSessions(): StoredAgenticSetupSession[];
42
+ upsertSession(session: StoredAgenticSetupSession): void;
43
+ removeSession(setupId: string): void;
44
+ }
45
+ export interface AgenticSetupSessionManagerOptions {
46
+ host?: string;
47
+ ttlMs?: number;
48
+ listenPort?: number;
49
+ publicBaseUrl?: string;
50
+ enableInternalHttpServer?: boolean;
51
+ store?: AgenticSetupSessionStore;
52
+ }
53
+ export declare class AgenticSetupSessionManager {
54
+ private server;
55
+ private callbackBaseUrl;
56
+ private readonly sessions;
57
+ private readonly host;
58
+ private readonly ttlMs;
59
+ private readonly listenPort;
60
+ private readonly publicBaseUrl?;
61
+ private readonly enableInternalHttpServer;
62
+ private readonly store?;
63
+ constructor(options?: AgenticSetupSessionManagerOptions);
64
+ private syncFromStore;
65
+ private toStoredSession;
66
+ private fromStoredSession;
67
+ private persistSession;
68
+ private deleteSession;
69
+ private cleanupExpiredSessions;
70
+ private buildCallbackUrl;
71
+ private ensureServer;
72
+ private readRequestBody;
73
+ private writeCorsHeaders;
74
+ handleCallbackHttpRequest(req: IncomingMessage, res: ServerResponse): Promise<boolean>;
75
+ createSession(setupId: string): Promise<AgenticSetupSession>;
76
+ getSession(setupId: string): AgenticSetupSession | null;
77
+ listSessions(): AgenticSetupSession[];
78
+ markCompleted(setupId: string): void;
79
+ cancelSession(setupId: string): void;
80
+ close(): Promise<void>;
81
+ }
82
+ //# sourceMappingURL=AgenticSetupSessionManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgenticSetupSessionManager.d.ts","sourceRoot":"","sources":["../../src/services/AgenticSetupSessionManager.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  */
8
+ import type { NetworkType } from '../types/config.js';
8
9
  export interface StoredKeyData {
9
10
  /** User's wallet address that this keypair controls */
10
11
  walletAddress: string;
@@ -12,8 +13,8 @@ export interface StoredKeyData {
12
13
  publicKey: string;
13
14
  /** Private key (seed) in hex format */
14
15
  privateKey: string;
15
- /** Network: mainnet or testnet */
16
- network: 'mainnet' | 'testnet';
16
+ /** Network */
17
+ network: NetworkType;
17
18
  /** Creation timestamp */
18
19
  createdAt: string;
19
20
  }
@@ -36,7 +37,7 @@ export declare class KeyManager {
36
37
  /**
37
38
  * Generate a new keypair and store it
38
39
  */
39
- static generateAndStoreKey(walletAddress: string, network: 'mainnet' | 'testnet'): Promise<StoredKeyData>;
40
+ static generateAndStoreKey(walletAddress: string, network: NetworkType): Promise<StoredKeyData>;
40
41
  /**
41
42
  * Save key data to ~/.ton/key.json
42
43
  */
@@ -1 +1 @@
1
- {"version":3,"file":"KeyManager.d.ts","sourceRoot":"","sources":["../../src/services/KeyManager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,MAAM,WAAW,aAAa;IAC1B,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;CACzB;AAKD;;GAEG;AACH,qBAAa,UAAU;IACnB;;OAEG;WACU,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7C;;OAEG;WACU,OAAO,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAYrD;;OAEG;WACU,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IAiB/G;;OAEG;WACU,OAAO,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3D;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa;IASxD;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B;;OAEG;WACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAM1C"}
1
+ {"version":3,"file":"KeyManager.d.ts","sourceRoot":"","sources":["../../src/services/KeyManager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,aAAa;IAC1B,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc;IACd,OAAO,EAAE,WAAW,CAAC;IACrB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;CACzB;AAKD;;GAEG;AACH,qBAAa,UAAU;IACnB;;OAEG;WACU,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7C;;OAEG;WACU,OAAO,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAYrD;;OAEG;WACU,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAiBrG;;OAEG;WACU,OAAO,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3D;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa;IASxD;;OAEG;IACH,MAAM,CAAC,cAAc,IAAI,MAAM;IAI/B;;OAEG;WACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAM1C"}
@@ -5,8 +5,9 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
7
  */
8
- import type { WalletAdapter } from '@ton/walletkit';
8
+ import type { WalletAdapter, TransactionStatusResponse } from '@ton/walletkit';
9
9
  import type { IContactResolver } from '../types/contacts.js';
10
+ import type { NetworkType } from '../types/config.js';
10
11
  /**
11
12
  * Jetton information
12
13
  */
@@ -17,6 +18,20 @@ export interface JettonInfoResult {
17
18
  symbol?: string;
18
19
  decimals?: number;
19
20
  }
21
+ export interface JettonMetadataResult {
22
+ address: string;
23
+ name?: string;
24
+ symbol?: string;
25
+ decimals?: number;
26
+ description?: string;
27
+ image?: string;
28
+ uri?: string;
29
+ }
30
+ export interface AddressBalanceResult {
31
+ address: string;
32
+ balanceNano: string;
33
+ balanceTon: string;
34
+ }
20
35
  /**
21
36
  * NFT information
22
37
  */
@@ -65,6 +80,16 @@ export interface TransactionInfo {
65
80
  export interface TransferResult {
66
81
  success: boolean;
67
82
  message: string;
83
+ normalizedHash?: string;
84
+ }
85
+ export interface DeployAgenticSubwalletResult extends TransferResult {
86
+ subwalletAddress?: string;
87
+ subwalletNftIndex?: string;
88
+ ownerAddress?: string;
89
+ collectionAddress?: string;
90
+ operatorPublicKey?: string;
91
+ amountNano?: string;
92
+ queryId?: string;
68
93
  }
69
94
  /**
70
95
  * Swap quote result with transaction params
@@ -110,6 +135,11 @@ export interface McpWalletServiceConfig {
110
135
  testnet?: NetworkConfig;
111
136
  };
112
137
  }
138
+ interface DeployAgenticSubwalletParams {
139
+ operatorPublicKey: string;
140
+ amountNano: string;
141
+ metadata: Record<string, string | number | boolean>;
142
+ }
113
143
  /**
114
144
  * McpWalletService manages wallet operations for a single wallet.
115
145
  */
@@ -118,6 +148,17 @@ export declare class McpWalletService {
118
148
  private readonly wallet;
119
149
  private kit;
120
150
  private constructor();
151
+ private static parseUint256;
152
+ private static createQueryId;
153
+ private static onchainMetadataKey;
154
+ private static buildOnchainMetadataValue;
155
+ private static buildOnchainMetadata;
156
+ private static buildAgenticWalletConfigData;
157
+ private static calculateAgenticWalletIndex;
158
+ private static createDeployWalletBody;
159
+ private static isAgenticWalletInitialized;
160
+ private assertAgenticWalletVersion;
161
+ private getAgenticRootWalletState;
121
162
  static create(config: McpWalletServiceConfig): Promise<McpWalletService>;
122
163
  /**
123
164
  * Get wallet address
@@ -126,7 +167,7 @@ export declare class McpWalletService {
126
167
  /**
127
168
  * Get wallet network
128
169
  */
129
- getNetwork(): 'mainnet' | 'testnet';
170
+ getNetwork(): NetworkType;
130
171
  /**
131
172
  * Initialize TonWalletKit (for swap operations)
132
173
  */
@@ -135,10 +176,26 @@ export declare class McpWalletService {
135
176
  * Get TON balance
136
177
  */
137
178
  getBalance(): Promise<string>;
179
+ /**
180
+ * Get TON balance for any address.
181
+ */
182
+ getBalanceByAddress(address: string): Promise<AddressBalanceResult>;
138
183
  /**
139
184
  * Get Jetton balance
140
185
  */
141
186
  getJettonBalance(jettonAddress: string): Promise<string>;
187
+ /**
188
+ * Get Jettons for any address.
189
+ */
190
+ getJettonsByAddress(address: string, limit?: number, offset?: number): Promise<JettonInfoResult[]>;
191
+ /**
192
+ * Get metadata for a Jetton master.
193
+ */
194
+ getJettonInfo(jettonAddress: string): Promise<JettonMetadataResult | null>;
195
+ /**
196
+ * Resolve jetton-wallet address for an owner.
197
+ */
198
+ getJettonWalletAddress(jettonAddress: string, ownerAddress: string): Promise<string>;
142
199
  /**
143
200
  * Get all Jettons
144
201
  */
@@ -169,6 +226,17 @@ export declare class McpWalletService {
169
226
  validUntil?: number;
170
227
  fromAddress?: string;
171
228
  }): Promise<TransferResult>;
229
+ /**
230
+ * Deploy a new Agentic sub-wallet from the current Agentic root wallet.
231
+ */
232
+ deployAgenticSubwallet(params: DeployAgenticSubwalletParams): Promise<DeployAgenticSubwalletResult>;
233
+ /**
234
+ * Get the status of a transaction by its normalized hash.
235
+ *
236
+ * In TON, a single external message triggers a tree of internal messages.
237
+ * The transaction is "complete" only when the entire trace finishes.
238
+ */
239
+ getTransactionStatus(normalizedHash: string): Promise<TransactionStatusResponse>;
172
240
  /**
173
241
  * Get swap quote with transaction params ready to execute
174
242
  * @param fromToken Token to swap from ("TON" or jetton address)
@@ -181,6 +249,10 @@ export declare class McpWalletService {
181
249
  * Get all NFTs
182
250
  */
183
251
  getNfts(limit?: number, offset?: number): Promise<NftInfoResult[]>;
252
+ /**
253
+ * Get NFTs for any address.
254
+ */
255
+ getNftsByAddress(address: string, limit?: number, offset?: number): Promise<NftInfoResult[]>;
184
256
  /**
185
257
  * Get a specific NFT by address
186
258
  */
@@ -206,4 +278,5 @@ export declare class McpWalletService {
206
278
  */
207
279
  close(): Promise<void>;
208
280
  }
281
+ export {};
209
282
  //# sourceMappingURL=McpWalletService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"McpWalletService.d.ts","sourceRoot":"","sources":["../../src/services/McpWalletService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"McpWalletService.d.ts","sourceRoot":"","sources":["../../src/services/McpWalletService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import type { IContactResolver } from '../types/contacts.js';
9
+ import type { NetworkConfig as RuntimeNetworkConfig } from './McpWalletService.js';
10
+ import type { ConfigNetwork, PendingAgenticDeployment, PendingAgenticKeyRotation, StoredAgenticWallet, StoredWallet, TonConfig, TonNetwork } from '../registry/config.js';
11
+ import type { WalletServiceContext } from '../runtime/wallet-runtime.js';
12
+ import type { AgenticImportCandidate } from '../utils/agentic.js';
13
+ export interface StartAgenticKeyRotationResult {
14
+ wallet: StoredAgenticWallet;
15
+ pendingRotation: PendingAgenticKeyRotation;
16
+ dashboardUrl: string;
17
+ updatedExisting: boolean;
18
+ }
19
+ export interface CompleteAgenticKeyRotationResult {
20
+ wallet: StoredAgenticWallet;
21
+ pendingRotation: PendingAgenticKeyRotation;
22
+ dashboardUrl: string;
23
+ }
24
+ export declare class WalletRegistryService {
25
+ private readonly contacts?;
26
+ private readonly networkOverrides?;
27
+ constructor(contacts?: IContactResolver | undefined, networkOverrides?: {
28
+ mainnet?: RuntimeNetworkConfig;
29
+ testnet?: RuntimeNetworkConfig;
30
+ } | undefined);
31
+ private resolveToncenterApiKey;
32
+ private assertWalletSupportsSigning;
33
+ loadConfig(): Promise<TonConfig>;
34
+ listWallets(): Promise<StoredWallet[]>;
35
+ getCurrentWallet(): Promise<StoredWallet | null>;
36
+ requireCurrentWallet(): Promise<StoredWallet>;
37
+ getNetworkConfig(network: TonNetwork): Promise<ConfigNetwork>;
38
+ setNetworkConfig(network: TonNetwork, patch: Partial<ConfigNetwork>): Promise<ConfigNetwork>;
39
+ setActiveWallet(selector: string): Promise<StoredWallet>;
40
+ removeWallet(selector: string): Promise<{
41
+ removedWalletId: string;
42
+ activeWalletId: string | null;
43
+ }>;
44
+ createWalletService(walletSelector?: string, options?: {
45
+ requiresSigning?: boolean;
46
+ }): Promise<WalletServiceContext & {
47
+ wallet: StoredWallet;
48
+ }>;
49
+ validateAgenticWallet(input: {
50
+ address: string;
51
+ network?: string;
52
+ collectionAddress?: string;
53
+ ownerAddress?: string;
54
+ }): Promise<AgenticImportCandidate>;
55
+ listAgenticWalletsByOwner(input: {
56
+ ownerAddress: string;
57
+ network?: string;
58
+ }): Promise<AgenticImportCandidate[]>;
59
+ importAgenticWallet(input: {
60
+ address: string;
61
+ network?: string;
62
+ name?: string;
63
+ }): Promise<{
64
+ wallet: StoredAgenticWallet;
65
+ recoveredPendingKeyDraft: boolean;
66
+ updatedExisting: boolean;
67
+ dashboardUrl: string;
68
+ }>;
69
+ startAgenticKeyRotation(input: {
70
+ walletSelector?: string;
71
+ operatorPrivateKey?: string;
72
+ }): Promise<StartAgenticKeyRotationResult>;
73
+ listPendingAgenticKeyRotations(): Promise<PendingAgenticKeyRotation[]>;
74
+ getPendingAgenticKeyRotation(rotationId: string): Promise<PendingAgenticKeyRotation | null>;
75
+ completeAgenticKeyRotation(rotationId: string): Promise<CompleteAgenticKeyRotationResult>;
76
+ cancelAgenticKeyRotation(rotationId: string): Promise<void>;
77
+ listPendingAgenticSetups(): Promise<PendingAgenticDeployment[]>;
78
+ getPendingAgenticSetup(setupId: string): Promise<PendingAgenticDeployment | null>;
79
+ createPendingAgenticSetup(input: {
80
+ network: TonNetwork;
81
+ operatorPrivateKey: string;
82
+ operatorPublicKey: string;
83
+ name?: string;
84
+ source?: string;
85
+ collectionAddress?: string;
86
+ }): Promise<PendingAgenticDeployment>;
87
+ removePendingAgenticSetup(input: {
88
+ id?: string;
89
+ network?: TonNetwork;
90
+ operatorPublicKey?: string;
91
+ }): Promise<void>;
92
+ completePendingAgenticSetup(input: {
93
+ setupId: string;
94
+ validatedWallet: AgenticImportCandidate;
95
+ name?: string;
96
+ source?: string;
97
+ }): Promise<StoredAgenticWallet>;
98
+ }
99
+ //# sourceMappingURL=WalletRegistryService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletRegistryService.d.ts","sourceRoot":"","sources":["../../src/services/WalletRegistryService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Copyright (c) TonTech.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+ import { z } from 'zod';
9
+ import type { McpWalletService } from '../services/McpWalletService.js';
10
+ import type { ToolResponse } from './types.js';
11
+ export declare const getBalanceByAddressSchema: z.ZodObject<{
12
+ address: z.ZodString;
13
+ }, "strip", z.ZodTypeAny, {
14
+ address: string;
15
+ }, {
16
+ address: string;
17
+ }>;
18
+ export declare const getJettonsByAddressSchema: z.ZodObject<{
19
+ address: z.ZodString;
20
+ limit: z.ZodOptional<z.ZodNumber>;
21
+ offset: z.ZodOptional<z.ZodNumber>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ address: string;
24
+ limit?: number | undefined;
25
+ offset?: number | undefined;
26
+ }, {
27
+ address: string;
28
+ limit?: number | undefined;
29
+ offset?: number | undefined;
30
+ }>;
31
+ export declare const getNftsByAddressSchema: z.ZodObject<{
32
+ address: z.ZodString;
33
+ limit: z.ZodOptional<z.ZodNumber>;
34
+ offset: z.ZodOptional<z.ZodNumber>;
35
+ }, "strip", z.ZodTypeAny, {
36
+ address: string;
37
+ limit?: number | undefined;
38
+ offset?: number | undefined;
39
+ }, {
40
+ address: string;
41
+ limit?: number | undefined;
42
+ offset?: number | undefined;
43
+ }>;
44
+ export declare const getJettonInfoSchema: z.ZodObject<{
45
+ address: z.ZodString;
46
+ }, "strip", z.ZodTypeAny, {
47
+ address: string;
48
+ }, {
49
+ address: string;
50
+ }>;
51
+ export declare const getJettonWalletAddressSchema: z.ZodObject<{
52
+ jettonAddress: z.ZodString;
53
+ ownerAddress: z.ZodString;
54
+ }, "strip", z.ZodTypeAny, {
55
+ ownerAddress: string;
56
+ jettonAddress: string;
57
+ }, {
58
+ ownerAddress: string;
59
+ jettonAddress: string;
60
+ }>;
61
+ export declare function createMcpAddressTools(service: McpWalletService): {
62
+ get_balance_by_address: {
63
+ description: string;
64
+ inputSchema: z.ZodObject<{
65
+ address: z.ZodString;
66
+ }, "strip", z.ZodTypeAny, {
67
+ address: string;
68
+ }, {
69
+ address: string;
70
+ }>;
71
+ handler: (args: z.infer<typeof getBalanceByAddressSchema>) => Promise<ToolResponse>;
72
+ };
73
+ get_jettons_by_address: {
74
+ description: string;
75
+ inputSchema: z.ZodObject<{
76
+ address: z.ZodString;
77
+ limit: z.ZodOptional<z.ZodNumber>;
78
+ offset: z.ZodOptional<z.ZodNumber>;
79
+ }, "strip", z.ZodTypeAny, {
80
+ address: string;
81
+ limit?: number | undefined;
82
+ offset?: number | undefined;
83
+ }, {
84
+ address: string;
85
+ limit?: number | undefined;
86
+ offset?: number | undefined;
87
+ }>;
88
+ handler: (args: z.infer<typeof getJettonsByAddressSchema>) => Promise<ToolResponse>;
89
+ };
90
+ get_nfts_by_address: {
91
+ description: string;
92
+ inputSchema: z.ZodObject<{
93
+ address: z.ZodString;
94
+ limit: z.ZodOptional<z.ZodNumber>;
95
+ offset: z.ZodOptional<z.ZodNumber>;
96
+ }, "strip", z.ZodTypeAny, {
97
+ address: string;
98
+ limit?: number | undefined;
99
+ offset?: number | undefined;
100
+ }, {
101
+ address: string;
102
+ limit?: number | undefined;
103
+ offset?: number | undefined;
104
+ }>;
105
+ handler: (args: z.infer<typeof getNftsByAddressSchema>) => Promise<ToolResponse>;
106
+ };
107
+ get_jetton_info: {
108
+ description: string;
109
+ inputSchema: z.ZodObject<{
110
+ address: z.ZodString;
111
+ }, "strip", z.ZodTypeAny, {
112
+ address: string;
113
+ }, {
114
+ address: string;
115
+ }>;
116
+ handler: (args: z.infer<typeof getJettonInfoSchema>) => Promise<ToolResponse>;
117
+ };
118
+ };
119
+ //# sourceMappingURL=address-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-tools.d.ts","sourceRoot":"","sources":["../../src/tools/address-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,eAAO,MAAM,yBAAyB;;;;;;EAEpC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;EASpC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAIjC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;EAGvC,CAAC;AAEH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB;;;;;;;;;;wBAM7B,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,KAAG,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;wBAyCjE,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,KAAG,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;wBA6CjE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,KAAG,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;wBAsD9D,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,KAAG,OAAO,CAAC,YAAY,CAAC;;EA+F5F"}