@t402/mcp 2.7.0 → 2.8.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.
@@ -82,18 +82,21 @@ declare const payInputSchema: z.ZodObject<{
82
82
  token: z.ZodEnum<["USDC", "USDT", "USDT0"]>;
83
83
  network: z.ZodEnum<["ethereum", "base", "arbitrum", "optimism", "polygon", "avalanche", "ink", "berachain", "unichain"]>;
84
84
  memo: z.ZodOptional<z.ZodString>;
85
+ confirmed: z.ZodOptional<z.ZodBoolean>;
85
86
  }, "strip", z.ZodTypeAny, {
86
87
  to: string;
87
88
  amount: string;
88
89
  network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
89
90
  token: "USDC" | "USDT" | "USDT0";
90
91
  memo?: string | undefined;
92
+ confirmed?: boolean | undefined;
91
93
  }, {
92
94
  to: string;
93
95
  amount: string;
94
96
  network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
95
97
  token: "USDC" | "USDT" | "USDT0";
96
98
  memo?: string | undefined;
99
+ confirmed?: boolean | undefined;
97
100
  }>;
98
101
  type PayInput = z.infer<typeof payInputSchema>;
99
102
  /**
@@ -110,7 +113,11 @@ interface PayOptions {
110
113
  /**
111
114
  * Execute pay tool
112
115
  */
113
- declare function executePay(input: PayInput, options: PayOptions): Promise<PaymentResult>;
116
+ declare function executePay(input: PayInput, options: PayOptions): Promise<PaymentResult | {
117
+ needsConfirmation: true;
118
+ summary: string;
119
+ details: Record<string, string>;
120
+ }>;
114
121
  /**
115
122
  * Format payment result for display
116
123
  */
@@ -128,16 +135,19 @@ declare const payGaslessInputSchema: z.ZodObject<{
128
135
  amount: z.ZodString;
129
136
  token: z.ZodEnum<["USDC", "USDT", "USDT0"]>;
130
137
  network: z.ZodEnum<["ethereum", "base", "arbitrum", "optimism", "polygon", "avalanche"]>;
138
+ confirmed: z.ZodOptional<z.ZodBoolean>;
131
139
  }, "strip", z.ZodTypeAny, {
132
140
  to: string;
133
141
  amount: string;
134
142
  network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche";
135
143
  token: "USDC" | "USDT" | "USDT0";
144
+ confirmed?: boolean | undefined;
136
145
  }, {
137
146
  to: string;
138
147
  amount: string;
139
148
  network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche";
140
149
  token: "USDC" | "USDT" | "USDT0";
150
+ confirmed?: boolean | undefined;
141
151
  }>;
142
152
  type PayGaslessInput = z.infer<typeof payGaslessInputSchema>;
143
153
  /**
@@ -162,7 +172,11 @@ interface PayGaslessOptions {
162
172
  /**
163
173
  * Execute payGasless tool
164
174
  */
165
- declare function executePayGasless(input: PayGaslessInput, options: PayGaslessOptions): Promise<GaslessPaymentResult>;
175
+ declare function executePayGasless(input: PayGaslessInput, options: PayGaslessOptions): Promise<GaslessPaymentResult | {
176
+ needsConfirmation: true;
177
+ summary: string;
178
+ details: Record<string, string>;
179
+ }>;
166
180
  /**
167
181
  * Format gasless payment result for display
168
182
  */
@@ -213,16 +227,19 @@ declare const bridgeInputSchema: z.ZodObject<{
213
227
  toChain: z.ZodEnum<["ethereum", "arbitrum", "ink", "berachain", "unichain"]>;
214
228
  amount: z.ZodString;
215
229
  recipient: z.ZodString;
230
+ confirmed: z.ZodOptional<z.ZodBoolean>;
216
231
  }, "strip", z.ZodTypeAny, {
217
232
  amount: string;
218
233
  fromChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
219
234
  toChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
220
235
  recipient: string;
236
+ confirmed?: boolean | undefined;
221
237
  }, {
222
238
  amount: string;
223
239
  fromChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
224
240
  toChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
225
241
  recipient: string;
242
+ confirmed?: boolean | undefined;
226
243
  }>;
227
244
  type BridgeInput = z.infer<typeof bridgeInputSchema>;
228
245
  /**
@@ -241,7 +258,11 @@ interface BridgeOptions {
241
258
  /**
242
259
  * Execute bridge tool
243
260
  */
244
- declare function executeBridge(input: BridgeInput, options: BridgeOptions): Promise<BridgeResult>;
261
+ declare function executeBridge(input: BridgeInput, options: BridgeOptions): Promise<BridgeResult | {
262
+ needsConfirmation: true;
263
+ summary: string;
264
+ details: Record<string, string>;
265
+ }>;
245
266
  /**
246
267
  * Format bridge result for display
247
268
  */
@@ -352,16 +373,19 @@ declare const wdkTransferInputSchema: z.ZodObject<{
352
373
  amount: z.ZodString;
353
374
  token: z.ZodEnum<["USDC", "USDT", "USDT0"]>;
354
375
  chain: z.ZodString;
376
+ confirmed: z.ZodOptional<z.ZodBoolean>;
355
377
  }, "strip", z.ZodTypeAny, {
356
378
  to: string;
357
379
  amount: string;
358
380
  chain: string;
359
381
  token: "USDC" | "USDT" | "USDT0";
382
+ confirmed?: boolean | undefined;
360
383
  }, {
361
384
  to: string;
362
385
  amount: string;
363
386
  chain: string;
364
387
  token: "USDC" | "USDT" | "USDT0";
388
+ confirmed?: boolean | undefined;
365
389
  }>;
366
390
  type WdkTransferInput = z.infer<typeof wdkTransferInputSchema>;
367
391
  /**
@@ -388,14 +412,22 @@ interface WdkTransferResult {
388
412
  * @param wdk - T402WDK instance
389
413
  * @returns Transfer result
390
414
  */
391
- declare function executeWdkTransfer(input: WdkTransferInput, wdk: T402WDK): Promise<WdkTransferResult>;
415
+ declare function executeWdkTransfer(input: WdkTransferInput, wdk: T402WDK): Promise<WdkTransferResult | {
416
+ needsConfirmation: true;
417
+ summary: string;
418
+ details: Record<string, string>;
419
+ }>;
392
420
  /**
393
421
  * Execute wdk/transfer in demo mode
394
422
  *
395
423
  * @param input - Transfer parameters
396
424
  * @returns Demo transfer result
397
425
  */
398
- declare function executeWdkTransferDemo(input: WdkTransferInput): WdkTransferResult;
426
+ declare function executeWdkTransferDemo(input: WdkTransferInput): WdkTransferResult | {
427
+ needsConfirmation: true;
428
+ summary: string;
429
+ details: Record<string, string>;
430
+ };
399
431
  /**
400
432
  * Format transfer result for display
401
433
  *
@@ -416,16 +448,19 @@ declare const wdkSwapInputSchema: z.ZodObject<{
416
448
  toToken: z.ZodString;
417
449
  amount: z.ZodString;
418
450
  chain: z.ZodString;
451
+ confirmed: z.ZodOptional<z.ZodBoolean>;
419
452
  }, "strip", z.ZodTypeAny, {
420
453
  amount: string;
421
454
  chain: string;
422
455
  fromToken: string;
423
456
  toToken: string;
457
+ confirmed?: boolean | undefined;
424
458
  }, {
425
459
  amount: string;
426
460
  chain: string;
427
461
  fromToken: string;
428
462
  toToken: string;
463
+ confirmed?: boolean | undefined;
429
464
  }>;
430
465
  type WdkSwapInput = z.infer<typeof wdkSwapInputSchema>;
431
466
  /**
@@ -452,14 +487,22 @@ interface WdkSwapResult {
452
487
  * @param wdk - T402WDK instance
453
488
  * @returns Swap result
454
489
  */
455
- declare function executeWdkSwap(input: WdkSwapInput, wdk: T402WDK): Promise<WdkSwapResult>;
490
+ declare function executeWdkSwap(input: WdkSwapInput, wdk: T402WDK): Promise<WdkSwapResult | {
491
+ needsConfirmation: true;
492
+ summary: string;
493
+ details: Record<string, string>;
494
+ }>;
456
495
  /**
457
496
  * Execute wdk/swap in demo mode
458
497
  *
459
498
  * @param input - Swap parameters
460
499
  * @returns Demo swap result
461
500
  */
462
- declare function executeWdkSwapDemo(input: WdkSwapInput): WdkSwapResult;
501
+ declare function executeWdkSwapDemo(input: WdkSwapInput): WdkSwapResult | {
502
+ needsConfirmation: true;
503
+ summary: string;
504
+ details: Record<string, string>;
505
+ };
463
506
  /**
464
507
  * Format swap result for display
465
508
  *
@@ -482,12 +525,15 @@ declare const autoPayInputSchema: z.ZodObject<{
482
525
  url: z.ZodString;
483
526
  maxAmount: z.ZodOptional<z.ZodString>;
484
527
  preferredChain: z.ZodOptional<z.ZodString>;
528
+ confirmed: z.ZodOptional<z.ZodBoolean>;
485
529
  }, "strip", z.ZodTypeAny, {
486
530
  url: string;
531
+ confirmed?: boolean | undefined;
487
532
  maxAmount?: string | undefined;
488
533
  preferredChain?: string | undefined;
489
534
  }, {
490
535
  url: string;
536
+ confirmed?: boolean | undefined;
491
537
  maxAmount?: string | undefined;
492
538
  preferredChain?: string | undefined;
493
539
  }>;
@@ -521,14 +567,22 @@ interface AutoPayResult {
521
567
  * @param wdk - T402WDK instance
522
568
  * @returns AutoPay result
523
569
  */
524
- declare function executeAutoPay(input: AutoPayInput, wdk: T402WDK): Promise<AutoPayResult>;
570
+ declare function executeAutoPay(input: AutoPayInput, wdk: T402WDK): Promise<AutoPayResult | {
571
+ needsConfirmation: true;
572
+ summary: string;
573
+ details: Record<string, string>;
574
+ }>;
525
575
  /**
526
576
  * Execute t402/autoPay in demo mode
527
577
  *
528
578
  * @param input - AutoPay parameters
529
579
  * @returns Demo autopay result
530
580
  */
531
- declare function executeAutoPayDemo(input: AutoPayInput): AutoPayResult;
581
+ declare function executeAutoPayDemo(input: AutoPayInput): AutoPayResult | {
582
+ needsConfirmation: true;
583
+ summary: string;
584
+ details: Record<string, string>;
585
+ };
532
586
  /**
533
587
  * Format autopay result for display
534
588
  *
@@ -633,6 +687,409 @@ declare function executeErc8004VerifyWallet(input: Erc8004VerifyWalletInput, rpc
633
687
  */
634
688
  declare function formatErc8004VerifyWalletResult(result: Erc8004VerifyWalletResult): string;
635
689
 
690
+ /**
691
+ * Price Service - CoinGecko-based token price fetcher with in-memory cache
692
+ */
693
+ /**
694
+ * Get token prices from CoinGecko with caching
695
+ *
696
+ * @param tokens - Token symbols to fetch prices for (e.g., ['ETH', 'MATIC'])
697
+ * @param currency - Target currency (default: 'usd')
698
+ * @returns Map of token symbol to price in target currency
699
+ */
700
+ declare function getTokenPrices(tokens: string[], currency?: string): Promise<Record<string, number>>;
701
+ /**
702
+ * Get simulated token prices for demo mode
703
+ */
704
+ declare function getTokenPricesDemo(tokens: string[]): Record<string, number>;
705
+ /**
706
+ * Clear the price cache (useful for testing)
707
+ */
708
+ declare function clearPriceCache(): void;
709
+
710
+ /**
711
+ * t402/getTokenPrice - Get current token prices via CoinGecko
712
+ */
713
+
714
+ /**
715
+ * Input schema for getTokenPrice tool
716
+ */
717
+ declare const getTokenPriceInputSchema: z.ZodObject<{
718
+ tokens: z.ZodArray<z.ZodString, "many">;
719
+ currency: z.ZodOptional<z.ZodString>;
720
+ }, "strip", z.ZodTypeAny, {
721
+ tokens: string[];
722
+ currency?: string | undefined;
723
+ }, {
724
+ tokens: string[];
725
+ currency?: string | undefined;
726
+ }>;
727
+ type GetTokenPriceInput = z.infer<typeof getTokenPriceInputSchema>;
728
+ /**
729
+ * Token price result
730
+ */
731
+ interface TokenPriceResult {
732
+ prices: Record<string, number>;
733
+ currency: string;
734
+ }
735
+ /**
736
+ * Execute getTokenPrice tool
737
+ */
738
+ declare function executeGetTokenPrice(input: GetTokenPriceInput, options: {
739
+ demoMode?: boolean;
740
+ }): Promise<TokenPriceResult>;
741
+ /**
742
+ * Format token price result for display
743
+ */
744
+ declare function formatTokenPriceResult(result: TokenPriceResult): string;
745
+
746
+ /**
747
+ * t402/getGasPrice - Get current gas price for a network
748
+ */
749
+
750
+ /**
751
+ * Input schema for getGasPrice tool
752
+ */
753
+ declare const getGasPriceInputSchema: z.ZodObject<{
754
+ network: z.ZodEnum<["ethereum", "base", "arbitrum", "optimism", "polygon", "avalanche", "ink", "berachain", "unichain"]>;
755
+ }, "strip", z.ZodTypeAny, {
756
+ network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
757
+ }, {
758
+ network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
759
+ }>;
760
+ type GetGasPriceInput = z.infer<typeof getGasPriceInputSchema>;
761
+ /**
762
+ * Gas price result
763
+ */
764
+ interface GasPriceResult {
765
+ network: SupportedNetwork;
766
+ gasPriceWei: string;
767
+ gasPriceGwei: string;
768
+ nativeSymbol: string;
769
+ }
770
+ /**
771
+ * Execute getGasPrice tool
772
+ */
773
+ declare function executeGetGasPrice(input: GetGasPriceInput, options: {
774
+ rpcUrl?: string;
775
+ demoMode?: boolean;
776
+ }): Promise<GasPriceResult>;
777
+ /**
778
+ * Format gas price result for display
779
+ */
780
+ declare function formatGasPriceResult(result: GasPriceResult): string;
781
+
782
+ /**
783
+ * t402/estimatePaymentFee - Estimate gas cost for a payment on a specific network
784
+ */
785
+
786
+ /**
787
+ * Input schema for estimatePaymentFee tool
788
+ */
789
+ declare const estimatePaymentFeeInputSchema: z.ZodObject<{
790
+ network: z.ZodEnum<["ethereum", "base", "arbitrum", "optimism", "polygon", "avalanche", "ink", "berachain", "unichain"]>;
791
+ amount: z.ZodString;
792
+ token: z.ZodEnum<["USDC", "USDT", "USDT0"]>;
793
+ }, "strip", z.ZodTypeAny, {
794
+ amount: string;
795
+ network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
796
+ token: "USDC" | "USDT" | "USDT0";
797
+ }, {
798
+ amount: string;
799
+ network: "ethereum" | "base" | "arbitrum" | "optimism" | "polygon" | "avalanche" | "ink" | "berachain" | "unichain";
800
+ token: "USDC" | "USDT" | "USDT0";
801
+ }>;
802
+ type EstimatePaymentFeeInput = z.infer<typeof estimatePaymentFeeInputSchema>;
803
+ /**
804
+ * Fee estimation result
805
+ */
806
+ interface PaymentFeeEstimate {
807
+ network: SupportedNetwork;
808
+ gasLimit: string;
809
+ gasPriceGwei: string;
810
+ nativeCost: string;
811
+ nativeSymbol: string;
812
+ usdCost: string;
813
+ }
814
+ /**
815
+ * Execute estimatePaymentFee tool
816
+ */
817
+ declare function executeEstimatePaymentFee(input: EstimatePaymentFeeInput, options: {
818
+ rpcUrl?: string;
819
+ demoMode?: boolean;
820
+ }): Promise<PaymentFeeEstimate>;
821
+ /**
822
+ * Format fee estimate result for display
823
+ */
824
+ declare function formatPaymentFeeEstimate(result: PaymentFeeEstimate): string;
825
+
826
+ /**
827
+ * t402/compareNetworkFees - Compare payment fees across multiple networks
828
+ */
829
+
830
+ /**
831
+ * Input schema for compareNetworkFees tool
832
+ */
833
+ declare const compareNetworkFeesInputSchema: z.ZodObject<{
834
+ amount: z.ZodString;
835
+ token: z.ZodEnum<["USDC", "USDT", "USDT0"]>;
836
+ networks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
837
+ }, "strip", z.ZodTypeAny, {
838
+ amount: string;
839
+ token: "USDC" | "USDT" | "USDT0";
840
+ networks?: string[] | undefined;
841
+ }, {
842
+ amount: string;
843
+ token: "USDC" | "USDT" | "USDT0";
844
+ networks?: string[] | undefined;
845
+ }>;
846
+ type CompareNetworkFeesInput = z.infer<typeof compareNetworkFeesInputSchema>;
847
+ /**
848
+ * Network fee comparison result
849
+ */
850
+ interface NetworkFeeComparison {
851
+ token: string;
852
+ amount: string;
853
+ fees: PaymentFeeEstimate[];
854
+ cheapest: string;
855
+ }
856
+ /**
857
+ * Execute compareNetworkFees tool
858
+ */
859
+ declare function executeCompareNetworkFees(input: CompareNetworkFeesInput, options: {
860
+ rpcUrls?: Partial<Record<SupportedNetwork, string>>;
861
+ demoMode?: boolean;
862
+ }): Promise<NetworkFeeComparison>;
863
+ /**
864
+ * Format network fee comparison result for display
865
+ */
866
+ declare function formatNetworkFeeComparison(result: NetworkFeeComparison): string;
867
+
868
+ /**
869
+ * Quote Store - In-memory quote storage with TTL
870
+ */
871
+ /** Quote data stored in the quote store */
872
+ interface QuoteData {
873
+ id: string;
874
+ type: 'swap' | 'bridge';
875
+ createdAt: number;
876
+ expiresAt: number;
877
+ data: Record<string, unknown>;
878
+ }
879
+ /**
880
+ * Create a new quote and store it
881
+ *
882
+ * @param type - Quote type ('swap' or 'bridge')
883
+ * @param data - Quote data to store
884
+ * @param ttlMs - Time-to-live in milliseconds (default: 5 minutes)
885
+ * @returns Quote ID (UUID)
886
+ */
887
+ declare function createQuote(type: 'swap' | 'bridge', data: Record<string, unknown>, ttlMs?: number): string;
888
+ /**
889
+ * Get a quote by ID (returns null if expired or not found)
890
+ */
891
+ declare function getQuote(quoteId: string): QuoteData | null;
892
+ /**
893
+ * Delete a quote by ID
894
+ */
895
+ declare function deleteQuote(quoteId: string): void;
896
+ /**
897
+ * Clear all quotes (useful for testing)
898
+ */
899
+ declare function clearQuoteStore(): void;
900
+
901
+ /**
902
+ * wdk/quoteSwap - Get a swap quote with a stored quoteId
903
+ */
904
+
905
+ /**
906
+ * Input schema for wdk/quoteSwap tool
907
+ */
908
+ declare const wdkQuoteSwapInputSchema: z.ZodObject<{
909
+ fromToken: z.ZodString;
910
+ toToken: z.ZodString;
911
+ amount: z.ZodString;
912
+ chain: z.ZodString;
913
+ }, "strip", z.ZodTypeAny, {
914
+ amount: string;
915
+ chain: string;
916
+ fromToken: string;
917
+ toToken: string;
918
+ }, {
919
+ amount: string;
920
+ chain: string;
921
+ fromToken: string;
922
+ toToken: string;
923
+ }>;
924
+ type WdkQuoteSwapInput = z.infer<typeof wdkQuoteSwapInputSchema>;
925
+ /**
926
+ * Swap quote result
927
+ */
928
+ interface SwapQuoteResult {
929
+ quoteId: string;
930
+ fromToken: string;
931
+ toToken: string;
932
+ fromAmount: string;
933
+ toAmount: string;
934
+ exchangeRate: string;
935
+ fee: string;
936
+ priceImpact: string;
937
+ expiresAt: string;
938
+ chain: string;
939
+ }
940
+ /**
941
+ * Execute wdk/quoteSwap tool
942
+ */
943
+ declare function executeWdkQuoteSwap(input: WdkQuoteSwapInput, wdk: T402WDK): Promise<SwapQuoteResult>;
944
+ /**
945
+ * Execute wdk/quoteSwap in demo mode
946
+ */
947
+ declare function executeWdkQuoteSwapDemo(input: WdkQuoteSwapInput): SwapQuoteResult;
948
+ /**
949
+ * Format swap quote result for display
950
+ */
951
+ declare function formatSwapQuoteResult(result: SwapQuoteResult): string;
952
+
953
+ /**
954
+ * wdk/executeSwap - Execute a swap from a stored quote
955
+ */
956
+
957
+ /**
958
+ * Input schema for wdk/executeSwap tool
959
+ */
960
+ declare const wdkExecuteSwapInputSchema: z.ZodObject<{
961
+ quoteId: z.ZodString;
962
+ confirmed: z.ZodOptional<z.ZodBoolean>;
963
+ }, "strip", z.ZodTypeAny, {
964
+ quoteId: string;
965
+ confirmed?: boolean | undefined;
966
+ }, {
967
+ quoteId: string;
968
+ confirmed?: boolean | undefined;
969
+ }>;
970
+ type WdkExecuteSwapInput = z.infer<typeof wdkExecuteSwapInputSchema>;
971
+ /**
972
+ * Execute swap result
973
+ */
974
+ interface ExecuteSwapResult {
975
+ fromAmount: string;
976
+ fromToken: string;
977
+ toAmount: string;
978
+ toToken: string;
979
+ chain: string;
980
+ txHash: string;
981
+ }
982
+ /**
983
+ * Execute wdk/executeSwap tool
984
+ */
985
+ declare function executeWdkExecuteSwap(input: WdkExecuteSwapInput, wdk: T402WDK): Promise<ExecuteSwapResult | {
986
+ needsConfirmation: true;
987
+ summary: string;
988
+ details: Record<string, string>;
989
+ }>;
990
+ /**
991
+ * Execute wdk/executeSwap in demo mode
992
+ */
993
+ declare function executeWdkExecuteSwapDemo(input: WdkExecuteSwapInput): ExecuteSwapResult | {
994
+ needsConfirmation: true;
995
+ summary: string;
996
+ details: Record<string, string>;
997
+ };
998
+ /**
999
+ * Format execute swap result for display
1000
+ */
1001
+ declare function formatExecuteSwapResult(result: ExecuteSwapResult): string;
1002
+
1003
+ /**
1004
+ * t402/quoteBridge - Get a bridge fee quote with a stored quoteId
1005
+ */
1006
+
1007
+ /**
1008
+ * Input schema for t402/quoteBridge tool (same as getBridgeFee)
1009
+ */
1010
+ declare const quoteBridgeInputSchema: z.ZodObject<{
1011
+ fromChain: z.ZodEnum<["ethereum", "arbitrum", "ink", "berachain", "unichain"]>;
1012
+ toChain: z.ZodEnum<["ethereum", "arbitrum", "ink", "berachain", "unichain"]>;
1013
+ amount: z.ZodString;
1014
+ recipient: z.ZodString;
1015
+ }, "strip", z.ZodTypeAny, {
1016
+ amount: string;
1017
+ fromChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
1018
+ toChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
1019
+ recipient: string;
1020
+ }, {
1021
+ amount: string;
1022
+ fromChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
1023
+ toChain: "ethereum" | "arbitrum" | "ink" | "berachain" | "unichain";
1024
+ recipient: string;
1025
+ }>;
1026
+ type QuoteBridgeInput = z.infer<typeof quoteBridgeInputSchema>;
1027
+ /**
1028
+ * Bridge quote result
1029
+ */
1030
+ interface BridgeQuoteResult {
1031
+ quoteId: string;
1032
+ fromChain: string;
1033
+ toChain: string;
1034
+ amount: string;
1035
+ recipient: string;
1036
+ nativeFee: string;
1037
+ nativeFeeFormatted: string;
1038
+ estimatedTime: number;
1039
+ expiresAt: string;
1040
+ }
1041
+ /**
1042
+ * Execute t402/quoteBridge tool
1043
+ */
1044
+ declare function executeQuoteBridge(input: QuoteBridgeInput, rpcUrls?: Partial<Record<SupportedNetwork, string>>): Promise<BridgeQuoteResult>;
1045
+ /**
1046
+ * Execute t402/quoteBridge in demo mode
1047
+ */
1048
+ declare function executeQuoteBridgeDemo(input: QuoteBridgeInput): BridgeQuoteResult;
1049
+ /**
1050
+ * Format bridge quote result for display
1051
+ */
1052
+ declare function formatBridgeQuoteResult(result: BridgeQuoteResult): string;
1053
+
1054
+ /**
1055
+ * t402/executeBridge (from quote) - Execute a bridge from a stored quote
1056
+ */
1057
+
1058
+ /**
1059
+ * Input schema for t402/executeBridge tool
1060
+ */
1061
+ declare const executeBridgeFromQuoteInputSchema: z.ZodObject<{
1062
+ quoteId: z.ZodString;
1063
+ confirmed: z.ZodOptional<z.ZodBoolean>;
1064
+ }, "strip", z.ZodTypeAny, {
1065
+ quoteId: string;
1066
+ confirmed?: boolean | undefined;
1067
+ }, {
1068
+ quoteId: string;
1069
+ confirmed?: boolean | undefined;
1070
+ }>;
1071
+ type ExecuteBridgeFromQuoteInput = z.infer<typeof executeBridgeFromQuoteInputSchema>;
1072
+ /**
1073
+ * Execute t402/executeBridge from quote tool
1074
+ */
1075
+ declare function executeExecuteBridgeFromQuote(input: ExecuteBridgeFromQuoteInput, options: {
1076
+ privateKey: string;
1077
+ rpcUrl?: string;
1078
+ demoMode?: boolean;
1079
+ }): Promise<BridgeResult | {
1080
+ needsConfirmation: true;
1081
+ summary: string;
1082
+ details: Record<string, string>;
1083
+ }>;
1084
+ /**
1085
+ * Execute t402/executeBridge from quote in demo mode
1086
+ */
1087
+ declare function executeExecuteBridgeFromQuoteDemo(input: ExecuteBridgeFromQuoteInput): BridgeResult | {
1088
+ needsConfirmation: true;
1089
+ summary: string;
1090
+ details: Record<string, string>;
1091
+ };
1092
+
636
1093
  /**
637
1094
  * Unified MCP Toolkit - Combines WDK wallet tools with t402 payment tools.
638
1095
  *
@@ -658,12 +1115,15 @@ declare const smartPayInputSchema: z.ZodObject<{
658
1115
  url: z.ZodString;
659
1116
  maxBridgeFee: z.ZodOptional<z.ZodString>;
660
1117
  preferredNetwork: z.ZodOptional<z.ZodString>;
1118
+ confirmed: z.ZodOptional<z.ZodBoolean>;
661
1119
  }, "strip", z.ZodTypeAny, {
662
1120
  url: string;
1121
+ confirmed?: boolean | undefined;
663
1122
  maxBridgeFee?: string | undefined;
664
1123
  preferredNetwork?: string | undefined;
665
1124
  }, {
666
1125
  url: string;
1126
+ confirmed?: boolean | undefined;
667
1127
  maxBridgeFee?: string | undefined;
668
1128
  preferredNetwork?: string | undefined;
669
1129
  }>;
@@ -805,6 +1265,10 @@ declare const UNIFIED_TOOL_DEFINITIONS: {
805
1265
  readonly type: "string";
806
1266
  readonly description: "Preferred network for payment (optional)";
807
1267
  };
1268
+ readonly confirmed: {
1269
+ readonly type: "boolean";
1270
+ readonly description: "Set to true to confirm and execute. Omit for a preview/confirmation prompt.";
1271
+ };
808
1272
  };
809
1273
  readonly required: readonly ["url"];
810
1274
  };
@@ -827,11 +1291,19 @@ declare const UNIFIED_TOOL_DEFINITIONS: {
827
1291
  /**
828
1292
  * Execute t402/smartPay tool
829
1293
  */
830
- declare function executeSmartPay(input: SmartPayInput, wdk: T402WDK): Promise<SmartPayResult>;
1294
+ declare function executeSmartPay(input: SmartPayInput, wdk: T402WDK): Promise<SmartPayResult | {
1295
+ needsConfirmation: true;
1296
+ summary: string;
1297
+ details: Record<string, string>;
1298
+ }>;
831
1299
  /**
832
1300
  * Execute t402/smartPay in demo mode
833
1301
  */
834
- declare function executeSmartPayDemo(input: SmartPayInput): SmartPayResult;
1302
+ declare function executeSmartPayDemo(input: SmartPayInput): SmartPayResult | {
1303
+ needsConfirmation: true;
1304
+ summary: string;
1305
+ details: Record<string, string>;
1306
+ };
835
1307
  /**
836
1308
  * Execute t402/paymentPlan tool
837
1309
  */
@@ -930,6 +1402,10 @@ declare const TOOL_DEFINITIONS: {
930
1402
  type: string;
931
1403
  description: string;
932
1404
  };
1405
+ confirmed: {
1406
+ type: string;
1407
+ description: string;
1408
+ };
933
1409
  };
934
1410
  required: string[];
935
1411
  };
@@ -960,6 +1436,10 @@ declare const TOOL_DEFINITIONS: {
960
1436
  enum: string[];
961
1437
  description: string;
962
1438
  };
1439
+ confirmed: {
1440
+ type: string;
1441
+ description: string;
1442
+ };
963
1443
  };
964
1444
  required: string[];
965
1445
  };
@@ -995,6 +1475,128 @@ declare const TOOL_DEFINITIONS: {
995
1475
  };
996
1476
  };
997
1477
  't402/bridge': {
1478
+ name: string;
1479
+ description: string;
1480
+ inputSchema: {
1481
+ type: "object";
1482
+ properties: {
1483
+ fromChain: {
1484
+ type: string;
1485
+ enum: string[];
1486
+ description: string;
1487
+ };
1488
+ toChain: {
1489
+ type: string;
1490
+ enum: string[];
1491
+ description: string;
1492
+ };
1493
+ amount: {
1494
+ type: string;
1495
+ pattern: string;
1496
+ description: string;
1497
+ };
1498
+ recipient: {
1499
+ type: string;
1500
+ pattern: string;
1501
+ description: string;
1502
+ };
1503
+ confirmed: {
1504
+ type: string;
1505
+ description: string;
1506
+ };
1507
+ };
1508
+ required: string[];
1509
+ };
1510
+ };
1511
+ 't402/getTokenPrice': {
1512
+ name: string;
1513
+ description: string;
1514
+ inputSchema: {
1515
+ type: "object";
1516
+ properties: {
1517
+ tokens: {
1518
+ type: string;
1519
+ items: {
1520
+ type: string;
1521
+ };
1522
+ description: string;
1523
+ };
1524
+ currency: {
1525
+ type: string;
1526
+ description: string;
1527
+ };
1528
+ };
1529
+ required: string[];
1530
+ };
1531
+ };
1532
+ 't402/getGasPrice': {
1533
+ name: string;
1534
+ description: string;
1535
+ inputSchema: {
1536
+ type: "object";
1537
+ properties: {
1538
+ network: {
1539
+ type: string;
1540
+ enum: string[];
1541
+ description: string;
1542
+ };
1543
+ };
1544
+ required: string[];
1545
+ };
1546
+ };
1547
+ 't402/estimatePaymentFee': {
1548
+ name: string;
1549
+ description: string;
1550
+ inputSchema: {
1551
+ type: "object";
1552
+ properties: {
1553
+ network: {
1554
+ type: string;
1555
+ enum: string[];
1556
+ description: string;
1557
+ };
1558
+ amount: {
1559
+ type: string;
1560
+ pattern: string;
1561
+ description: string;
1562
+ };
1563
+ token: {
1564
+ type: string;
1565
+ enum: string[];
1566
+ description: string;
1567
+ };
1568
+ };
1569
+ required: string[];
1570
+ };
1571
+ };
1572
+ 't402/compareNetworkFees': {
1573
+ name: string;
1574
+ description: string;
1575
+ inputSchema: {
1576
+ type: "object";
1577
+ properties: {
1578
+ amount: {
1579
+ type: string;
1580
+ pattern: string;
1581
+ description: string;
1582
+ };
1583
+ token: {
1584
+ type: string;
1585
+ enum: string[];
1586
+ description: string;
1587
+ };
1588
+ networks: {
1589
+ type: string;
1590
+ items: {
1591
+ type: string;
1592
+ };
1593
+ description: string;
1594
+ };
1595
+ };
1596
+ required: string[];
1597
+ };
1598
+ };
1599
+ 't402/quoteBridge': {
998
1600
  name: string;
999
1601
  description: string;
1000
1602
  inputSchema: {
@@ -1024,6 +1626,24 @@ declare const TOOL_DEFINITIONS: {
1024
1626
  required: string[];
1025
1627
  };
1026
1628
  };
1629
+ 't402/executeBridgeQuote': {
1630
+ name: string;
1631
+ description: string;
1632
+ inputSchema: {
1633
+ type: "object";
1634
+ properties: {
1635
+ quoteId: {
1636
+ type: string;
1637
+ description: string;
1638
+ };
1639
+ confirmed: {
1640
+ type: string;
1641
+ description: string;
1642
+ };
1643
+ };
1644
+ required: string[];
1645
+ };
1646
+ };
1027
1647
  };
1028
1648
  /**
1029
1649
  * WDK tool definitions (only available when WDK seed phrase is configured)
@@ -1079,6 +1699,10 @@ declare const WDK_TOOL_DEFINITIONS: {
1079
1699
  type: string;
1080
1700
  description: string;
1081
1701
  };
1702
+ confirmed: {
1703
+ type: string;
1704
+ description: string;
1705
+ };
1082
1706
  };
1083
1707
  required: string[];
1084
1708
  };
@@ -1106,6 +1730,10 @@ declare const WDK_TOOL_DEFINITIONS: {
1106
1730
  type: string;
1107
1731
  description: string;
1108
1732
  };
1733
+ confirmed: {
1734
+ type: string;
1735
+ description: string;
1736
+ };
1109
1737
  };
1110
1738
  required: string[];
1111
1739
  };
@@ -1129,6 +1757,55 @@ declare const WDK_TOOL_DEFINITIONS: {
1129
1757
  type: string;
1130
1758
  description: string;
1131
1759
  };
1760
+ confirmed: {
1761
+ type: string;
1762
+ description: string;
1763
+ };
1764
+ };
1765
+ required: string[];
1766
+ };
1767
+ };
1768
+ 'wdk/quoteSwap': {
1769
+ name: string;
1770
+ description: string;
1771
+ inputSchema: {
1772
+ type: "object";
1773
+ properties: {
1774
+ fromToken: {
1775
+ type: string;
1776
+ description: string;
1777
+ };
1778
+ toToken: {
1779
+ type: string;
1780
+ description: string;
1781
+ };
1782
+ amount: {
1783
+ type: string;
1784
+ pattern: string;
1785
+ description: string;
1786
+ };
1787
+ chain: {
1788
+ type: string;
1789
+ description: string;
1790
+ };
1791
+ };
1792
+ required: string[];
1793
+ };
1794
+ };
1795
+ 'wdk/executeSwap': {
1796
+ name: string;
1797
+ description: string;
1798
+ inputSchema: {
1799
+ type: "object";
1800
+ properties: {
1801
+ quoteId: {
1802
+ type: string;
1803
+ description: string;
1804
+ };
1805
+ confirmed: {
1806
+ type: string;
1807
+ description: string;
1808
+ };
1132
1809
  };
1133
1810
  required: string[];
1134
1811
  };
@@ -1216,4 +1893,4 @@ declare const ERC8004_TOOL_DEFINITIONS: {
1216
1893
  };
1217
1894
  };
1218
1895
 
1219
- export { type AllBalancesResult, type AutoPayInput, type AutoPayResult, type BridgeInput, type BridgeOptions, ERC8004_TOOL_DEFINITIONS, type Erc8004CheckReputationInput, type Erc8004ResolveAgentInput, type Erc8004VerifyWalletInput, type Erc8004VerifyWalletResult, GASLESS_SUPPORTED_NETWORKS, type GetAllBalancesInput, type GetBalanceInput, type GetBridgeFeeInput, type PayGaslessInput, type PayGaslessOptions, type PayInput, type PayOptions, type PaymentPlanInput, type PaymentPlanResult, type SmartPayInput, type SmartPayResult, type SmartPayStep, TOOL_DEFINITIONS, UNIFIED_TOOL_DEFINITIONS, type UnifiedMcpConfig, WDK_TOOL_DEFINITIONS, type WdkBalancesResult, type WdkGetBalancesInput, type WdkGetWalletInput, type WdkSwapInput, type WdkSwapResult, type WdkTransferInput, type WdkTransferResult, type WdkWalletInfo, autoPayInputSchema, bridgeInputSchema, erc8004CheckReputationInputSchema, erc8004ResolveAgentInputSchema, erc8004VerifyWalletInputSchema, executeAutoPay, executeAutoPayDemo, executeBridge, executeErc8004CheckReputation, executeErc8004ResolveAgent, executeErc8004VerifyWallet, executeGetAllBalances, executeGetBalance, executeGetBridgeFee, executePay, executePayGasless, executePaymentPlan, executePaymentPlanDemo, executeSmartPay, executeSmartPayDemo, executeWdkGetBalances, executeWdkGetBalancesDemo, executeWdkGetWallet, executeWdkGetWalletDemo, executeWdkSwap, executeWdkSwapDemo, executeWdkTransfer, executeWdkTransferDemo, formatAllBalancesResult, formatAutoPayResult, formatBalanceResult, formatBridgeFeeResult, formatBridgeResult, formatErc8004CheckReputationResult, formatErc8004ResolveAgentResult, formatErc8004VerifyWalletResult, formatGaslessPaymentResult, formatPaymentPlanResult, formatPaymentResult, formatSmartPayResult, formatWdkBalancesResult, formatWdkSwapResult, formatWdkTransferResult, formatWdkWalletResult, getAllBalancesInputSchema, getBalanceInputSchema, getBridgeFeeInputSchema, payGaslessInputSchema, payInputSchema, paymentPlanInputSchema, smartPayInputSchema, wdkGetBalancesInputSchema, wdkGetWalletInputSchema, wdkSwapInputSchema, wdkTransferInputSchema };
1896
+ export { type AllBalancesResult, type AutoPayInput, type AutoPayResult, type BridgeInput, type BridgeOptions, type BridgeQuoteResult, type CompareNetworkFeesInput, ERC8004_TOOL_DEFINITIONS, type Erc8004CheckReputationInput, type Erc8004ResolveAgentInput, type Erc8004VerifyWalletInput, type Erc8004VerifyWalletResult, type EstimatePaymentFeeInput, type ExecuteBridgeFromQuoteInput, type ExecuteSwapResult, GASLESS_SUPPORTED_NETWORKS, type GasPriceResult, type GetAllBalancesInput, type GetBalanceInput, type GetBridgeFeeInput, type GetGasPriceInput, type GetTokenPriceInput, type NetworkFeeComparison, type PayGaslessInput, type PayGaslessOptions, type PayInput, type PayOptions, type PaymentFeeEstimate, type PaymentPlanInput, type PaymentPlanResult, type QuoteBridgeInput, type QuoteData, type SmartPayInput, type SmartPayResult, type SmartPayStep, type SwapQuoteResult, TOOL_DEFINITIONS, type TokenPriceResult, UNIFIED_TOOL_DEFINITIONS, type UnifiedMcpConfig, WDK_TOOL_DEFINITIONS, type WdkBalancesResult, type WdkExecuteSwapInput, type WdkGetBalancesInput, type WdkGetWalletInput, type WdkQuoteSwapInput, type WdkSwapInput, type WdkSwapResult, type WdkTransferInput, type WdkTransferResult, type WdkWalletInfo, autoPayInputSchema, bridgeInputSchema, clearPriceCache, clearQuoteStore, compareNetworkFeesInputSchema, createQuote, deleteQuote, erc8004CheckReputationInputSchema, erc8004ResolveAgentInputSchema, erc8004VerifyWalletInputSchema, estimatePaymentFeeInputSchema, executeAutoPay, executeAutoPayDemo, executeBridge, executeBridgeFromQuoteInputSchema, executeCompareNetworkFees, executeErc8004CheckReputation, executeErc8004ResolveAgent, executeErc8004VerifyWallet, executeEstimatePaymentFee, executeExecuteBridgeFromQuote, executeExecuteBridgeFromQuoteDemo, executeGetAllBalances, executeGetBalance, executeGetBridgeFee, executeGetGasPrice, executeGetTokenPrice, executePay, executePayGasless, executePaymentPlan, executePaymentPlanDemo, executeQuoteBridge, executeQuoteBridgeDemo, executeSmartPay, executeSmartPayDemo, executeWdkExecuteSwap, executeWdkExecuteSwapDemo, executeWdkGetBalances, executeWdkGetBalancesDemo, executeWdkGetWallet, executeWdkGetWalletDemo, executeWdkQuoteSwap, executeWdkQuoteSwapDemo, executeWdkSwap, executeWdkSwapDemo, executeWdkTransfer, executeWdkTransferDemo, formatAllBalancesResult, formatAutoPayResult, formatBalanceResult, formatBridgeFeeResult, formatBridgeQuoteResult, formatBridgeResult, formatErc8004CheckReputationResult, formatErc8004ResolveAgentResult, formatErc8004VerifyWalletResult, formatBridgeResult as formatExecuteBridgeFromQuoteResult, formatExecuteSwapResult, formatGasPriceResult, formatGaslessPaymentResult, formatNetworkFeeComparison, formatPaymentFeeEstimate, formatPaymentPlanResult, formatPaymentResult, formatSmartPayResult, formatSwapQuoteResult, formatTokenPriceResult, formatWdkBalancesResult, formatWdkSwapResult, formatWdkTransferResult, formatWdkWalletResult, getAllBalancesInputSchema, getBalanceInputSchema, getBridgeFeeInputSchema, getGasPriceInputSchema, getQuote, getTokenPriceInputSchema, getTokenPrices, getTokenPricesDemo, payGaslessInputSchema, payInputSchema, paymentPlanInputSchema, quoteBridgeInputSchema, smartPayInputSchema, wdkExecuteSwapInputSchema, wdkGetBalancesInputSchema, wdkGetWalletInputSchema, wdkQuoteSwapInputSchema, wdkSwapInputSchema, wdkTransferInputSchema };