@ton/mcp 0.1.15-alpha.7 → 0.1.15-alpha.9

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 CHANGED
@@ -20,6 +20,8 @@ A Model Context Protocol (MCP) server for TON blockchain wallet operations. Buil
20
20
  - **Agentic Wallets mode**: Server starts from local config registry at `~/.config/ton/config.json` or `TON_CONFIG_PATH`
21
21
  - **Single-wallet mode**: if `MNEMONIC` or `PRIVATE_KEY` is set, the server starts with one in-memory wallet
22
22
 
23
+ Choose one control path per task: either run `@ton/mcp` as an MCP server (stdio or HTTP) or call tools through raw CLI. Agents must not mix MCP server mode and raw CLI against the same workflow/session, because that creates competing control paths over the same wallet/config state.
24
+
23
25
  ### Agentic Wallets mode
24
26
 
25
27
  Self-custody wallets for autonomous agents. Your AI agent gets TON wallet capabilities — transfers, swaps, NFTs. User keeps the master key, agent keeps the operator key.
@@ -106,6 +108,10 @@ npx @ton/mcp@alpha --http 3000
106
108
 
107
109
  HTTP mode keeps a separate MCP session/transport per client session id, so multiple clients can initialize and reconnect independently.
108
110
 
111
+ ## Usage Examples
112
+
113
+ Examples of user requests, approximate corresponding raw CLI commands via `npx @ton/mcp@alpha`, and expected agent responses are collected in [USAGE_EXAMPLES.md](./USAGE_EXAMPLES.md).
114
+
109
115
  ## Environment Variables
110
116
 
111
117
  | Variable | Default | Description |
@@ -0,0 +1,342 @@
1
+ # Usage Examples
2
+
3
+ These examples show how `@ton/mcp` can be used in raw CLI mode. They are illustrative rather than literal agent logs: each example includes a representative user request, the `npx @ton/mcp@alpha` commands an agent would typically run, and the kind of response it would usually return.
4
+
5
+ ## Agentic Wallets
6
+
7
+ ### Create an agentic wallet
8
+
9
+ **User request**
10
+
11
+ `Create an agentic wallet`
12
+
13
+ **Approximate command list**
14
+
15
+ ```bash
16
+ npx @ton/mcp@alpha agentic_start_root_wallet_setup --name "My Agent" --network mainnet
17
+ open <DASHBOARD_URL>
18
+ npx @ton/mcp@alpha agentic_complete_root_wallet_setup --setupId <SETUP_ID> --walletAddress <WALLET_ADDRESS>
19
+ npx @ton/mcp@alpha get_current_wallet
20
+ ```
21
+
22
+ **Approximate agent response**
23
+
24
+ > A new agentic wallet setup was started, and the dashboard link was opened. After the dashboard step was completed, wallet `EQ...` was added and set as the active wallet.
25
+
26
+ ### Import an existing agentic wallet
27
+
28
+ **User request**
29
+
30
+ `Import my existing agentic wallet EQ...`
31
+
32
+ **Approximate command list**
33
+
34
+ ```bash
35
+ npx @ton/mcp@alpha agentic_validate_wallet --address EQ...
36
+ npx @ton/mcp@alpha agentic_import_wallet --address EQ... --name "Imported wallet"
37
+ npx @ton/mcp@alpha agentic_rotate_operator_key --walletSelector "Imported wallet"
38
+ open <DASHBOARD_URL>
39
+ npx @ton/mcp@alpha list_wallets
40
+ ```
41
+
42
+ **Approximate agent response**
43
+
44
+ > Wallet `EQ...` was validated and imported into the local registry under the name `Imported wallet`. The dashboard link for the `Public Key` update was opened. Until that on-chain confirmation is completed, the wallet is available in read-only mode.
45
+
46
+ ### Rotate the operator key
47
+
48
+ **User request**
49
+
50
+ `Rotate the operator key for the active agentic wallet`
51
+
52
+ **Approximate command list**
53
+
54
+ ```bash
55
+ npx @ton/mcp@alpha agentic_rotate_operator_key
56
+ open <DASHBOARD_URL>
57
+ npx @ton/mcp@alpha agentic_get_pending_operator_key_rotation --rotationId <ROTATION_ID>
58
+ npx @ton/mcp@alpha agentic_complete_rotate_operator_key --rotationId <ROTATION_ID>
59
+ ```
60
+
61
+ **Approximate agent response**
62
+
63
+ > The dashboard link for the `Public Key` update was opened. After the main wallet confirms the change, write access is restored.
64
+
65
+ ### List agentic wallets by owner
66
+
67
+ **User request**
68
+
69
+ `Which agentic wallets belong to owner address EQ...?`
70
+
71
+ **Approximate command list**
72
+
73
+ ```bash
74
+ npx @ton/mcp@alpha agentic_list_wallets_by_owner --ownerAddress EQ...
75
+ ```
76
+
77
+ **Approximate agent response**
78
+
79
+ > Several agentic wallets were found for owner address `EQ...`. For each wallet, the agent typically shows the wallet address and basic metadata.
80
+
81
+ ## Wallet Registry and Balances
82
+
83
+ ### List wallets in the registry
84
+
85
+ **User request**
86
+
87
+ `Which wallets do I have?`
88
+
89
+ **Approximate command list**
90
+
91
+ ```bash
92
+ npx @ton/mcp@alpha list_wallets
93
+ npx @ton/mcp@alpha get_current_wallet
94
+ ```
95
+
96
+ **Approximate agent response**
97
+
98
+ > Several wallets were found. The active wallet is `EQ...`. The others can be selected by `id`, name, or address via `set_active_wallet`.
99
+
100
+ ### Switch the active wallet
101
+
102
+ **User request**
103
+
104
+ `Make wallet "treasury" active`
105
+
106
+ **Approximate command list**
107
+
108
+ ```bash
109
+ npx @ton/mcp@alpha set_active_wallet --walletSelector treasury
110
+ npx @ton/mcp@alpha get_current_wallet
111
+ ```
112
+
113
+ **Approximate agent response**
114
+
115
+ > The active wallet was switched to `treasury`. Current address: `UQ...`. Network: `mainnet`.
116
+
117
+ ### Show the active wallet balance
118
+
119
+ **User request**
120
+
121
+ `Show my balance in TON and jettons`
122
+
123
+ **Approximate command list**
124
+
125
+ ```bash
126
+ npx @ton/mcp@alpha get_balance
127
+ npx @ton/mcp@alpha get_jettons
128
+ ```
129
+
130
+ **Approximate agent response**
131
+
132
+ > Active wallet balance: `12.84 TON`. Jetton balances include `USDT 53.2`, `NOT 1400`, and `STON 18.05`.
133
+
134
+ ### Show the balance of any address
135
+
136
+ **User request**
137
+
138
+ `Show the balance of address EQ...`
139
+
140
+ **Approximate command list**
141
+
142
+ ```bash
143
+ npx @ton/mcp@alpha get_balance_by_address --address EQ...
144
+ npx @ton/mcp@alpha get_jettons_by_address --address EQ...
145
+ ```
146
+
147
+ **Approximate agent response**
148
+
149
+ > Address `EQ...` has a balance of `3.21 TON`. No jettons were found for that address.
150
+
151
+ ### Find a known jetton address
152
+
153
+ **User request**
154
+
155
+ `Show the address of USDT`
156
+
157
+ **Approximate command list**
158
+
159
+ ```bash
160
+ npx @ton/mcp@alpha get_known_jettons
161
+ ```
162
+
163
+ **Approximate agent response**
164
+
165
+ > `USDT` was found in the list of known jettons with master contract address `EQ...`. That address can be used with `send_jetton` or `get_swap_quote`.
166
+
167
+ ## Transfers and Swaps
168
+
169
+ ### Send TON to a TON DNS name
170
+
171
+ **User request**
172
+
173
+ `Send 1 TON to foundation.ton`
174
+
175
+ **Approximate command list**
176
+
177
+ ```bash
178
+ npx @ton/mcp@alpha resolve_dns --domain foundation.ton
179
+ npx @ton/mcp@alpha send_ton --toAddress EQ... --amount 1
180
+ npx @ton/mcp@alpha get_transaction_status --normalizedHash <NORMALIZED_HASH>
181
+ ```
182
+
183
+ **Approximate agent response**
184
+
185
+ > `foundation.ton` was resolved to TON address `EQ...`. The `1 TON` transfer was sent with `normalizedHash: <NORMALIZED_HASH>`. Transaction status: `completed`.
186
+
187
+ ### Send a jetton
188
+
189
+ **User request**
190
+
191
+ `Send 25 USDT to UQAbc...`
192
+
193
+ **Approximate command list**
194
+
195
+ ```bash
196
+ npx @ton/mcp@alpha get_jettons
197
+ npx @ton/mcp@alpha send_jetton --jettonAddress EQ... --toAddress UQAbc... --amount 25
198
+ npx @ton/mcp@alpha get_transaction_status --normalizedHash <NORMALIZED_HASH>
199
+ ```
200
+
201
+ **Approximate agent response**
202
+
203
+ > `USDT` was found in the wallet, and the `25 USDT` transfer to `UQAbc...` was sent. `normalizedHash: <NORMALIZED_HASH>`. Current status: `completed`.
204
+
205
+ ### Swap TON for a jetton
206
+
207
+ **User request**
208
+
209
+ `Swap 2 TON to USDT`
210
+
211
+ **Approximate command list**
212
+
213
+ ```bash
214
+ npx @ton/mcp@alpha get_known_jettons
215
+ # quote
216
+ npx @ton/mcp@alpha get_swap_quote --fromToken TON --toToken EQ... --amount 2 --slippageBps 100
217
+ # pass messages from quote if user approved
218
+ npx @ton/mcp@alpha send_raw_transaction --messages '<quote.transaction.messages>'
219
+ # If the quote includes transaction.validUntil, add --validUntil to the send_raw_transaction invocation above
220
+ npx @ton/mcp@alpha get_transaction_status --normalizedHash <NORMALIZED_HASH>
221
+ ```
222
+
223
+ **Approximate agent response**
224
+
225
+ > A quote was received for swapping `2 TON` to `USDT`. After confirmation, the swap was executed with an expected output of about `X USDT` after slippage. `normalizedHash: <NORMALIZED_HASH>`.
226
+
227
+ ### Show recent transactions
228
+
229
+ **User request**
230
+
231
+ `Show my last 5 transactions`
232
+
233
+ **Approximate command list**
234
+
235
+ ```bash
236
+ npx @ton/mcp@alpha get_transactions --limit 5
237
+ ```
238
+
239
+ **Approximate agent response**
240
+
241
+ > The last 5 operations were shown, including incoming and outgoing TON transfers, jetton transfers, and swaps. For each transaction, the agent typically shows the time, action type, amount, and final status.
242
+
243
+ ## TON DNS
244
+
245
+ ### Resolve a TON DNS name
246
+
247
+ **User request**
248
+
249
+ `What does foundation.ton resolve to?`
250
+
251
+ **Approximate command list**
252
+
253
+ ```bash
254
+ npx @ton/mcp@alpha resolve_dns --domain foundation.ton
255
+ ```
256
+
257
+ **Approximate agent response**
258
+
259
+ > Domain `foundation.ton` resolves to address `EQ...`.
260
+
261
+ ### Reverse-resolve an address
262
+
263
+ **User request**
264
+
265
+ `Does address EQ... have a TON DNS name?`
266
+
267
+ **Approximate command list**
268
+
269
+ ```bash
270
+ npx @ton/mcp@alpha back_resolve_dns --address EQ...
271
+ ```
272
+
273
+ **Approximate agent response**
274
+
275
+ > If reverse resolution succeeds, address `EQ...` maps to a DNS name such as `foundation.ton`. Otherwise, the agent reports that no DNS name was found.
276
+
277
+ ## NFTs
278
+
279
+ ### List NFTs in the active wallet
280
+
281
+ **User request**
282
+
283
+ `Show my NFTs`
284
+
285
+ **Approximate command list**
286
+
287
+ ```bash
288
+ npx @ton/mcp@alpha get_nfts --limit 20
289
+ ```
290
+
291
+ **Approximate agent response**
292
+
293
+ > A list of NFTs from the active wallet was shown, including addresses, collection names, preview metadata, and key attributes.
294
+
295
+ ### Show NFT details
296
+
297
+ **User request**
298
+
299
+ `Show details for NFT EQ...`
300
+
301
+ **Approximate command list**
302
+
303
+ ```bash
304
+ npx @ton/mcp@alpha get_nft --nftAddress EQ...
305
+ ```
306
+
307
+ **Approximate agent response**
308
+
309
+ > For NFT `EQ...`, the agent shows metadata, collection information, owner, content URI, and attributes.
310
+
311
+ ### Send an NFT
312
+
313
+ **User request**
314
+
315
+ `Send NFT EQ... to UQReceiver...`
316
+
317
+ **Approximate command list**
318
+
319
+ ```bash
320
+ npx @ton/mcp@alpha send_nft --nftAddress EQ... --toAddress UQReceiver...
321
+ npx @ton/mcp@alpha get_transaction_status --normalizedHash <NORMALIZED_HASH>
322
+ ```
323
+
324
+ **Approximate agent response**
325
+
326
+ > NFT `EQ...` was sent to `UQReceiver...`. `normalizedHash: <NORMALIZED_HASH>`. Transaction status: `completed`.
327
+
328
+ ### Show NFTs owned by any address
329
+
330
+ **User request**
331
+
332
+ `Show NFTs owned by address EQ...`
333
+
334
+ **Approximate command list**
335
+
336
+ ```bash
337
+ npx @ton/mcp@alpha get_nfts_by_address --address EQ... --limit 10
338
+ ```
339
+
340
+ **Approximate agent response**
341
+
342
+ > NFTs owned by address `EQ...` were shown, even though that address is not one of the saved wallets.
package/dist/cli.js CHANGED
@@ -89480,16 +89480,29 @@ var TonWalletKit = class {
89480
89480
  this.eventRouter.removeErrorCallback();
89481
89481
  }
89482
89482
  /**
89483
+ * Allow to convert url to ConnectionRequestEvent to use inline way
89484
+ */
89485
+ async connectionEventFromUrl(url) {
89486
+ await this.ensureInitialized();
89487
+ try {
89488
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89489
+ return await new ConnectHandler(() => {}, this.config, this.analyticsManager).handle(bridgeEvent);
89490
+ } catch (error) {
89491
+ log$5.error("Failed to create connection event from URL", {
89492
+ error,
89493
+ url
89494
+ });
89495
+ throw error;
89496
+ }
89497
+ }
89498
+ /**
89483
89499
  * Handle pasted TON Connect URL/link
89484
89500
  * Parses the URL and creates a connect request event
89485
89501
  */
89486
89502
  async handleTonConnectUrl(url) {
89487
89503
  await this.ensureInitialized();
89488
89504
  try {
89489
- const parsedUrl = this.parseTonConnectUrl(url);
89490
- if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89491
- const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89492
- if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89505
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89493
89506
  await this.eventRouter.routeEvent(bridgeEvent);
89494
89507
  } catch (error) {
89495
89508
  log$5.error("Failed to handle TON Connect URL", {
@@ -89517,6 +89530,16 @@ var TonWalletKit = class {
89517
89530
  await this.eventRouter.routeEvent(bridgeEvent);
89518
89531
  }
89519
89532
  /**
89533
+ * Parse and validate TON Connect URL into a RawBridgeEventConnect
89534
+ */
89535
+ parseBridgeConnectEventFromUrl(url) {
89536
+ const parsedUrl = this.parseTonConnectUrl(url);
89537
+ if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89538
+ const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89539
+ if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89540
+ return bridgeEvent;
89541
+ }
89542
+ /**
89520
89543
  * Parse TON Connect URL to extract connection parameters
89521
89544
  */
89522
89545
  parseTonConnectUrl(url) {
@@ -106480,26 +106503,15 @@ const tokenToAddress = (token) => {
106480
106503
  if (token.address === "ton") return "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c";
106481
106504
  return import_dist$3.Address.parse(token.address).toRawString();
106482
106505
  };
106483
- const addressToToken = (address, decimals = 9) => {
106484
- if (address === "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c") return {
106485
- address: "ton",
106486
- decimals: 9
106487
- };
106506
+ const toOmnistonAddress = (address, network) => {
106507
+ let formattedAddress;
106488
106508
  try {
106489
- return {
106490
- address: import_dist$3.Address.parseRaw(address).toString(),
106491
- decimals
106492
- };
106509
+ formattedAddress = import_dist$3.Address.parse(address).toString({ bounceable: true });
106493
106510
  } catch {
106494
- return {
106495
- address,
106496
- decimals
106497
- };
106511
+ formattedAddress = address;
106498
106512
  }
106499
- };
106500
- const toOmnistonAddress = (address, network) => {
106501
106513
  return {
106502
- address,
106514
+ address: formattedAddress,
106503
106515
  blockchain: mapNetworkToBlockchainId(network)
106504
106516
  };
106505
106517
  };
@@ -106595,7 +106607,7 @@ var OmnistonSwapProvider = class extends SwapProvider {
106595
106607
  const flexibleReferrerFee = params.providerOptions?.flexibleReferrerFee ?? this.flexibleReferrerFee;
106596
106608
  const quoteRequest = {
106597
106609
  amount: params.isReverseSwap ? { askUnits: parseUnits(params.amount, params.to.decimals).toString() } : { bidUnits: parseUnits(params.amount, params.from.decimals).toString() },
106598
- settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106610
+ settlementMethods: params.providerOptions?.settlementMethods ?? [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106599
106611
  bidAssetAddress: toOmnistonAddress(bidAssetAddress, params.network),
106600
106612
  askAssetAddress: toOmnistonAddress(askAssetAddress, params.network),
106601
106613
  referrerAddress: referrerAddress ? toOmnistonAddress(import_dist$3.Address.parse(referrerAddress).toString({ bounceable: true }), params.network) : void 0,
@@ -106711,14 +106723,6 @@ var OmnistonSwapProvider = class extends SwapProvider {
106711
106723
  mapOmnistonQuoteToSwapQuote(quote, params) {
106712
106724
  const metadata = { omnistonQuote: quote };
106713
106725
  const fee = [];
106714
- if (quote.protocolFeeAsset) fee.push({
106715
- amount: quote.protocolFeeUnits,
106716
- token: addressToToken(quote.protocolFeeAsset.address)
106717
- });
106718
- if (quote.referrerFeeAsset) fee.push({
106719
- amount: quote.referrerFeeUnits,
106720
- token: addressToToken(quote.referrerFeeAsset.address)
106721
- });
106722
106726
  return {
106723
106727
  rawFromAmount: quote.bidUnits,
106724
106728
  rawToAmount: quote.askUnits,
@@ -132493,7 +132497,8 @@ var McpWalletService = class McpWalletService {
132493
132497
  },
132494
132498
  amount,
132495
132499
  network,
132496
- slippageBps
132500
+ slippageBps,
132501
+ providerOptions: { settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP, SettlementMethod.SETTLEMENT_METHOD_ESCROW] }
132497
132502
  };
132498
132503
  const quote = await kit.swap.getQuote(params);
132499
132504
  const swapParams = {
package/dist/index.cjs CHANGED
@@ -89849,16 +89849,29 @@ var TonWalletKit = class {
89849
89849
  this.eventRouter.removeErrorCallback();
89850
89850
  }
89851
89851
  /**
89852
+ * Allow to convert url to ConnectionRequestEvent to use inline way
89853
+ */
89854
+ async connectionEventFromUrl(url) {
89855
+ await this.ensureInitialized();
89856
+ try {
89857
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89858
+ return await new ConnectHandler(() => {}, this.config, this.analyticsManager).handle(bridgeEvent);
89859
+ } catch (error) {
89860
+ log$4.error("Failed to create connection event from URL", {
89861
+ error,
89862
+ url
89863
+ });
89864
+ throw error;
89865
+ }
89866
+ }
89867
+ /**
89852
89868
  * Handle pasted TON Connect URL/link
89853
89869
  * Parses the URL and creates a connect request event
89854
89870
  */
89855
89871
  async handleTonConnectUrl(url) {
89856
89872
  await this.ensureInitialized();
89857
89873
  try {
89858
- const parsedUrl = this.parseTonConnectUrl(url);
89859
- if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89860
- const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89861
- if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89874
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89862
89875
  await this.eventRouter.routeEvent(bridgeEvent);
89863
89876
  } catch (error) {
89864
89877
  log$4.error("Failed to handle TON Connect URL", {
@@ -89886,6 +89899,16 @@ var TonWalletKit = class {
89886
89899
  await this.eventRouter.routeEvent(bridgeEvent);
89887
89900
  }
89888
89901
  /**
89902
+ * Parse and validate TON Connect URL into a RawBridgeEventConnect
89903
+ */
89904
+ parseBridgeConnectEventFromUrl(url) {
89905
+ const parsedUrl = this.parseTonConnectUrl(url);
89906
+ if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89907
+ const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89908
+ if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89909
+ return bridgeEvent;
89910
+ }
89911
+ /**
89889
89912
  * Parse TON Connect URL to extract connection parameters
89890
89913
  */
89891
89914
  parseTonConnectUrl(url) {
@@ -105675,26 +105698,15 @@ const tokenToAddress = (token) => {
105675
105698
  if (token.address === "ton") return "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c";
105676
105699
  return import_dist$3.Address.parse(token.address).toRawString();
105677
105700
  };
105678
- const addressToToken = (address, decimals = 9) => {
105679
- if (address === "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c") return {
105680
- address: "ton",
105681
- decimals: 9
105682
- };
105701
+ const toOmnistonAddress = (address, network) => {
105702
+ let formattedAddress;
105683
105703
  try {
105684
- return {
105685
- address: import_dist$3.Address.parseRaw(address).toString(),
105686
- decimals
105687
- };
105704
+ formattedAddress = import_dist$3.Address.parse(address).toString({ bounceable: true });
105688
105705
  } catch {
105689
- return {
105690
- address,
105691
- decimals
105692
- };
105706
+ formattedAddress = address;
105693
105707
  }
105694
- };
105695
- const toOmnistonAddress = (address, network) => {
105696
105708
  return {
105697
- address,
105709
+ address: formattedAddress,
105698
105710
  blockchain: mapNetworkToBlockchainId(network)
105699
105711
  };
105700
105712
  };
@@ -105790,7 +105802,7 @@ var OmnistonSwapProvider = class extends SwapProvider {
105790
105802
  const flexibleReferrerFee = params.providerOptions?.flexibleReferrerFee ?? this.flexibleReferrerFee;
105791
105803
  const quoteRequest = {
105792
105804
  amount: params.isReverseSwap ? { askUnits: parseUnits(params.amount, params.to.decimals).toString() } : { bidUnits: parseUnits(params.amount, params.from.decimals).toString() },
105793
- settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP],
105805
+ settlementMethods: params.providerOptions?.settlementMethods ?? [SettlementMethod.SETTLEMENT_METHOD_SWAP],
105794
105806
  bidAssetAddress: toOmnistonAddress(bidAssetAddress, params.network),
105795
105807
  askAssetAddress: toOmnistonAddress(askAssetAddress, params.network),
105796
105808
  referrerAddress: referrerAddress ? toOmnistonAddress(import_dist$3.Address.parse(referrerAddress).toString({ bounceable: true }), params.network) : void 0,
@@ -105906,14 +105918,6 @@ var OmnistonSwapProvider = class extends SwapProvider {
105906
105918
  mapOmnistonQuoteToSwapQuote(quote, params) {
105907
105919
  const metadata = { omnistonQuote: quote };
105908
105920
  const fee = [];
105909
- if (quote.protocolFeeAsset) fee.push({
105910
- amount: quote.protocolFeeUnits,
105911
- token: addressToToken(quote.protocolFeeAsset.address)
105912
- });
105913
- if (quote.referrerFeeAsset) fee.push({
105914
- amount: quote.referrerFeeUnits,
105915
- token: addressToToken(quote.referrerFeeAsset.address)
105916
- });
105917
105921
  return {
105918
105922
  rawFromAmount: quote.bidUnits,
105919
105923
  rawToAmount: quote.askUnits,
@@ -131688,7 +131692,8 @@ var McpWalletService = class McpWalletService {
131688
131692
  },
131689
131693
  amount,
131690
131694
  network,
131691
- slippageBps
131695
+ slippageBps,
131696
+ providerOptions: { settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP, SettlementMethod.SETTLEMENT_METHOD_ESCROW] }
131692
131697
  };
131693
131698
  const quote = await kit.swap.getQuote(params);
131694
131699
  const swapParams = {
package/dist/index.js CHANGED
@@ -89849,16 +89849,29 @@ var TonWalletKit = class {
89849
89849
  this.eventRouter.removeErrorCallback();
89850
89850
  }
89851
89851
  /**
89852
+ * Allow to convert url to ConnectionRequestEvent to use inline way
89853
+ */
89854
+ async connectionEventFromUrl(url) {
89855
+ await this.ensureInitialized();
89856
+ try {
89857
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89858
+ return await new ConnectHandler(() => {}, this.config, this.analyticsManager).handle(bridgeEvent);
89859
+ } catch (error) {
89860
+ log$4.error("Failed to create connection event from URL", {
89861
+ error,
89862
+ url
89863
+ });
89864
+ throw error;
89865
+ }
89866
+ }
89867
+ /**
89852
89868
  * Handle pasted TON Connect URL/link
89853
89869
  * Parses the URL and creates a connect request event
89854
89870
  */
89855
89871
  async handleTonConnectUrl(url) {
89856
89872
  await this.ensureInitialized();
89857
89873
  try {
89858
- const parsedUrl = this.parseTonConnectUrl(url);
89859
- if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89860
- const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89861
- if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89874
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
89862
89875
  await this.eventRouter.routeEvent(bridgeEvent);
89863
89876
  } catch (error) {
89864
89877
  log$4.error("Failed to handle TON Connect URL", {
@@ -89886,6 +89899,16 @@ var TonWalletKit = class {
89886
89899
  await this.eventRouter.routeEvent(bridgeEvent);
89887
89900
  }
89888
89901
  /**
89902
+ * Parse and validate TON Connect URL into a RawBridgeEventConnect
89903
+ */
89904
+ parseBridgeConnectEventFromUrl(url) {
89905
+ const parsedUrl = this.parseTonConnectUrl(url);
89906
+ if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
89907
+ const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
89908
+ if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
89909
+ return bridgeEvent;
89910
+ }
89911
+ /**
89889
89912
  * Parse TON Connect URL to extract connection parameters
89890
89913
  */
89891
89914
  parseTonConnectUrl(url) {
@@ -105675,26 +105698,15 @@ const tokenToAddress = (token) => {
105675
105698
  if (token.address === "ton") return "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c";
105676
105699
  return import_dist$3.Address.parse(token.address).toRawString();
105677
105700
  };
105678
- const addressToToken = (address, decimals = 9) => {
105679
- if (address === "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c") return {
105680
- address: "ton",
105681
- decimals: 9
105682
- };
105701
+ const toOmnistonAddress = (address, network) => {
105702
+ let formattedAddress;
105683
105703
  try {
105684
- return {
105685
- address: import_dist$3.Address.parseRaw(address).toString(),
105686
- decimals
105687
- };
105704
+ formattedAddress = import_dist$3.Address.parse(address).toString({ bounceable: true });
105688
105705
  } catch {
105689
- return {
105690
- address,
105691
- decimals
105692
- };
105706
+ formattedAddress = address;
105693
105707
  }
105694
- };
105695
- const toOmnistonAddress = (address, network) => {
105696
105708
  return {
105697
- address,
105709
+ address: formattedAddress,
105698
105710
  blockchain: mapNetworkToBlockchainId(network)
105699
105711
  };
105700
105712
  };
@@ -105790,7 +105802,7 @@ var OmnistonSwapProvider = class extends SwapProvider {
105790
105802
  const flexibleReferrerFee = params.providerOptions?.flexibleReferrerFee ?? this.flexibleReferrerFee;
105791
105803
  const quoteRequest = {
105792
105804
  amount: params.isReverseSwap ? { askUnits: parseUnits(params.amount, params.to.decimals).toString() } : { bidUnits: parseUnits(params.amount, params.from.decimals).toString() },
105793
- settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP],
105805
+ settlementMethods: params.providerOptions?.settlementMethods ?? [SettlementMethod.SETTLEMENT_METHOD_SWAP],
105794
105806
  bidAssetAddress: toOmnistonAddress(bidAssetAddress, params.network),
105795
105807
  askAssetAddress: toOmnistonAddress(askAssetAddress, params.network),
105796
105808
  referrerAddress: referrerAddress ? toOmnistonAddress(import_dist$3.Address.parse(referrerAddress).toString({ bounceable: true }), params.network) : void 0,
@@ -105906,14 +105918,6 @@ var OmnistonSwapProvider = class extends SwapProvider {
105906
105918
  mapOmnistonQuoteToSwapQuote(quote, params) {
105907
105919
  const metadata = { omnistonQuote: quote };
105908
105920
  const fee = [];
105909
- if (quote.protocolFeeAsset) fee.push({
105910
- amount: quote.protocolFeeUnits,
105911
- token: addressToToken(quote.protocolFeeAsset.address)
105912
- });
105913
- if (quote.referrerFeeAsset) fee.push({
105914
- amount: quote.referrerFeeUnits,
105915
- token: addressToToken(quote.referrerFeeAsset.address)
105916
- });
105917
105921
  return {
105918
105922
  rawFromAmount: quote.bidUnits,
105919
105923
  rawToAmount: quote.askUnits,
@@ -131688,7 +131692,8 @@ var McpWalletService = class McpWalletService {
131688
131692
  },
131689
131693
  amount,
131690
131694
  network,
131691
- slippageBps
131695
+ slippageBps,
131696
+ providerOptions: { settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP, SettlementMethod.SETTLEMENT_METHOD_ESCROW] }
131692
131697
  };
131693
131698
  const quote = await kit.swap.getQuote(params);
131694
131699
  const swapParams = {
@@ -77904,16 +77904,29 @@ var TonWalletKit = class {
77904
77904
  this.eventRouter.removeErrorCallback();
77905
77905
  }
77906
77906
  /**
77907
+ * Allow to convert url to ConnectionRequestEvent to use inline way
77908
+ */
77909
+ async connectionEventFromUrl(url) {
77910
+ await this.ensureInitialized();
77911
+ try {
77912
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
77913
+ return await new ConnectHandler(() => {}, this.config, this.analyticsManager).handle(bridgeEvent);
77914
+ } catch (error) {
77915
+ log$4.error("Failed to create connection event from URL", {
77916
+ error,
77917
+ url
77918
+ });
77919
+ throw error;
77920
+ }
77921
+ }
77922
+ /**
77907
77923
  * Handle pasted TON Connect URL/link
77908
77924
  * Parses the URL and creates a connect request event
77909
77925
  */
77910
77926
  async handleTonConnectUrl(url) {
77911
77927
  await this.ensureInitialized();
77912
77928
  try {
77913
- const parsedUrl = this.parseTonConnectUrl(url);
77914
- if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
77915
- const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
77916
- if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
77929
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
77917
77930
  await this.eventRouter.routeEvent(bridgeEvent);
77918
77931
  } catch (error) {
77919
77932
  log$4.error("Failed to handle TON Connect URL", {
@@ -77941,6 +77954,16 @@ var TonWalletKit = class {
77941
77954
  await this.eventRouter.routeEvent(bridgeEvent);
77942
77955
  }
77943
77956
  /**
77957
+ * Parse and validate TON Connect URL into a RawBridgeEventConnect
77958
+ */
77959
+ parseBridgeConnectEventFromUrl(url) {
77960
+ const parsedUrl = this.parseTonConnectUrl(url);
77961
+ if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
77962
+ const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
77963
+ if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
77964
+ return bridgeEvent;
77965
+ }
77966
+ /**
77944
77967
  * Parse TON Connect URL to extract connection parameters
77945
77968
  */
77946
77969
  parseTonConnectUrl(url) {
@@ -106744,26 +106767,15 @@ const tokenToAddress = (token) => {
106744
106767
  if (token.address === "ton") return "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c";
106745
106768
  return import_dist$4.Address.parse(token.address).toRawString();
106746
106769
  };
106747
- const addressToToken = (address, decimals = 9) => {
106748
- if (address === "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c") return {
106749
- address: "ton",
106750
- decimals: 9
106751
- };
106770
+ const toOmnistonAddress = (address, network) => {
106771
+ let formattedAddress;
106752
106772
  try {
106753
- return {
106754
- address: import_dist$4.Address.parseRaw(address).toString(),
106755
- decimals
106756
- };
106773
+ formattedAddress = import_dist$4.Address.parse(address).toString({ bounceable: true });
106757
106774
  } catch {
106758
- return {
106759
- address,
106760
- decimals
106761
- };
106775
+ formattedAddress = address;
106762
106776
  }
106763
- };
106764
- const toOmnistonAddress = (address, network) => {
106765
106777
  return {
106766
- address,
106778
+ address: formattedAddress,
106767
106779
  blockchain: mapNetworkToBlockchainId(network)
106768
106780
  };
106769
106781
  };
@@ -106859,7 +106871,7 @@ var OmnistonSwapProvider = class extends SwapProvider {
106859
106871
  const flexibleReferrerFee = params.providerOptions?.flexibleReferrerFee ?? this.flexibleReferrerFee;
106860
106872
  const quoteRequest = {
106861
106873
  amount: params.isReverseSwap ? { askUnits: parseUnits(params.amount, params.to.decimals).toString() } : { bidUnits: parseUnits(params.amount, params.from.decimals).toString() },
106862
- settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106874
+ settlementMethods: params.providerOptions?.settlementMethods ?? [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106863
106875
  bidAssetAddress: toOmnistonAddress(bidAssetAddress, params.network),
106864
106876
  askAssetAddress: toOmnistonAddress(askAssetAddress, params.network),
106865
106877
  referrerAddress: referrerAddress ? toOmnistonAddress(import_dist$4.Address.parse(referrerAddress).toString({ bounceable: true }), params.network) : void 0,
@@ -106975,14 +106987,6 @@ var OmnistonSwapProvider = class extends SwapProvider {
106975
106987
  mapOmnistonQuoteToSwapQuote(quote, params) {
106976
106988
  const metadata = { omnistonQuote: quote };
106977
106989
  const fee = [];
106978
- if (quote.protocolFeeAsset) fee.push({
106979
- amount: quote.protocolFeeUnits,
106980
- token: addressToToken(quote.protocolFeeAsset.address)
106981
- });
106982
- if (quote.referrerFeeAsset) fee.push({
106983
- amount: quote.referrerFeeUnits,
106984
- token: addressToToken(quote.referrerFeeAsset.address)
106985
- });
106986
106990
  return {
106987
106991
  rawFromAmount: quote.bidUnits,
106988
106992
  rawToAmount: quote.askUnits,
@@ -132757,7 +132761,8 @@ var McpWalletService = class McpWalletService {
132757
132761
  },
132758
132762
  amount,
132759
132763
  network,
132760
- slippageBps
132764
+ slippageBps,
132765
+ providerOptions: { settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP, SettlementMethod.SETTLEMENT_METHOD_ESCROW] }
132761
132766
  };
132762
132767
  const quote = await kit.swap.getQuote(params);
132763
132768
  const swapParams = {
@@ -77904,16 +77904,29 @@ var TonWalletKit = class {
77904
77904
  this.eventRouter.removeErrorCallback();
77905
77905
  }
77906
77906
  /**
77907
+ * Allow to convert url to ConnectionRequestEvent to use inline way
77908
+ */
77909
+ async connectionEventFromUrl(url) {
77910
+ await this.ensureInitialized();
77911
+ try {
77912
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
77913
+ return await new ConnectHandler(() => {}, this.config, this.analyticsManager).handle(bridgeEvent);
77914
+ } catch (error) {
77915
+ log$4.error("Failed to create connection event from URL", {
77916
+ error,
77917
+ url
77918
+ });
77919
+ throw error;
77920
+ }
77921
+ }
77922
+ /**
77907
77923
  * Handle pasted TON Connect URL/link
77908
77924
  * Parses the URL and creates a connect request event
77909
77925
  */
77910
77926
  async handleTonConnectUrl(url) {
77911
77927
  await this.ensureInitialized();
77912
77928
  try {
77913
- const parsedUrl = this.parseTonConnectUrl(url);
77914
- if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
77915
- const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
77916
- if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
77929
+ const bridgeEvent = this.parseBridgeConnectEventFromUrl(url);
77917
77930
  await this.eventRouter.routeEvent(bridgeEvent);
77918
77931
  } catch (error) {
77919
77932
  log$4.error("Failed to handle TON Connect URL", {
@@ -77941,6 +77954,16 @@ var TonWalletKit = class {
77941
77954
  await this.eventRouter.routeEvent(bridgeEvent);
77942
77955
  }
77943
77956
  /**
77957
+ * Parse and validate TON Connect URL into a RawBridgeEventConnect
77958
+ */
77959
+ parseBridgeConnectEventFromUrl(url) {
77960
+ const parsedUrl = this.parseTonConnectUrl(url);
77961
+ if (!parsedUrl) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL format", void 0, { url });
77962
+ const bridgeEvent = this.createConnectEventFromUrl(parsedUrl);
77963
+ if (!bridgeEvent) throw new WalletKitError(ERROR_CODES.VALIDATION_ERROR, "Invalid TON Connect URL - unable to create bridge event", void 0, { parsedUrl });
77964
+ return bridgeEvent;
77965
+ }
77966
+ /**
77944
77967
  * Parse TON Connect URL to extract connection parameters
77945
77968
  */
77946
77969
  parseTonConnectUrl(url) {
@@ -106744,26 +106767,15 @@ const tokenToAddress = (token) => {
106744
106767
  if (token.address === "ton") return "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c";
106745
106768
  return import_dist$4.Address.parse(token.address).toRawString();
106746
106769
  };
106747
- const addressToToken = (address, decimals = 9) => {
106748
- if (address === "EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c") return {
106749
- address: "ton",
106750
- decimals: 9
106751
- };
106770
+ const toOmnistonAddress = (address, network) => {
106771
+ let formattedAddress;
106752
106772
  try {
106753
- return {
106754
- address: import_dist$4.Address.parseRaw(address).toString(),
106755
- decimals
106756
- };
106773
+ formattedAddress = import_dist$4.Address.parse(address).toString({ bounceable: true });
106757
106774
  } catch {
106758
- return {
106759
- address,
106760
- decimals
106761
- };
106775
+ formattedAddress = address;
106762
106776
  }
106763
- };
106764
- const toOmnistonAddress = (address, network) => {
106765
106777
  return {
106766
- address,
106778
+ address: formattedAddress,
106767
106779
  blockchain: mapNetworkToBlockchainId(network)
106768
106780
  };
106769
106781
  };
@@ -106859,7 +106871,7 @@ var OmnistonSwapProvider = class extends SwapProvider {
106859
106871
  const flexibleReferrerFee = params.providerOptions?.flexibleReferrerFee ?? this.flexibleReferrerFee;
106860
106872
  const quoteRequest = {
106861
106873
  amount: params.isReverseSwap ? { askUnits: parseUnits(params.amount, params.to.decimals).toString() } : { bidUnits: parseUnits(params.amount, params.from.decimals).toString() },
106862
- settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106874
+ settlementMethods: params.providerOptions?.settlementMethods ?? [SettlementMethod.SETTLEMENT_METHOD_SWAP],
106863
106875
  bidAssetAddress: toOmnistonAddress(bidAssetAddress, params.network),
106864
106876
  askAssetAddress: toOmnistonAddress(askAssetAddress, params.network),
106865
106877
  referrerAddress: referrerAddress ? toOmnistonAddress(import_dist$4.Address.parse(referrerAddress).toString({ bounceable: true }), params.network) : void 0,
@@ -106975,14 +106987,6 @@ var OmnistonSwapProvider = class extends SwapProvider {
106975
106987
  mapOmnistonQuoteToSwapQuote(quote, params) {
106976
106988
  const metadata = { omnistonQuote: quote };
106977
106989
  const fee = [];
106978
- if (quote.protocolFeeAsset) fee.push({
106979
- amount: quote.protocolFeeUnits,
106980
- token: addressToToken(quote.protocolFeeAsset.address)
106981
- });
106982
- if (quote.referrerFeeAsset) fee.push({
106983
- amount: quote.referrerFeeUnits,
106984
- token: addressToToken(quote.referrerFeeAsset.address)
106985
- });
106986
106990
  return {
106987
106991
  rawFromAmount: quote.bidUnits,
106988
106992
  rawToAmount: quote.askUnits,
@@ -132757,7 +132761,8 @@ var McpWalletService = class McpWalletService {
132757
132761
  },
132758
132762
  amount,
132759
132763
  network,
132760
- slippageBps
132764
+ slippageBps,
132765
+ providerOptions: { settlementMethods: [SettlementMethod.SETTLEMENT_METHOD_SWAP, SettlementMethod.SETTLEMENT_METHOD_ESCROW] }
132761
132766
  };
132762
132767
  const quote = await kit.swap.getQuote(params);
132763
132768
  const swapParams = {
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ton/mcp",
3
- "version": "0.1.15-alpha.7",
3
+ "version": "0.1.15-alpha.9",
4
4
  "description": "TON MCP Server - Model Context Protocol server for TON blockchain wallet operations",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -38,6 +38,7 @@
38
38
  "dist",
39
39
  "skills",
40
40
  "llms.txt",
41
+ "USAGE_EXAMPLES.md",
41
42
  "README.md"
42
43
  ],
43
44
  "keywords": [
@@ -59,7 +60,7 @@
59
60
  "undici": "^7.16.0",
60
61
  "ws": "^8.18.3",
61
62
  "zod": "^3.25.76",
62
- "@ton/walletkit": "0.0.11-alpha.2"
63
+ "@ton/walletkit": "0.0.12-alpha.0"
63
64
  },
64
65
  "peerDependencies": {
65
66
  "@modelcontextprotocol/sdk": "^1.25.1"
@@ -18,6 +18,8 @@ Run any TON wallet MCP tool directly from the command line. The binary invokes t
18
18
  | `npx @ton/mcp@alpha --http [port]` | HTTP MCP server |
19
19
  | `npx @ton/mcp@alpha <tool_name> [--arg value ...]` | **Raw CLI: call one tool and exit** |
20
20
 
21
+ Use exactly one mode for a given workflow: either MCP server mode (`stdio`/`--http`) or raw CLI. Do not combine them in the same task/session.
22
+
21
23
  ## Raw CLI Usage
22
24
 
23
25
  ```bash