web3-tools-mcp 1.6.0 → 2.0.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 (104) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/README.md +328 -234
  3. package/dist/anvil.d.ts +1 -1
  4. package/dist/anvil.d.ts.map +1 -1
  5. package/dist/anvil.js +11 -9
  6. package/dist/anvil.js.map +1 -1
  7. package/dist/chain-meta.d.ts.map +1 -1
  8. package/dist/chain-meta.js +7 -3
  9. package/dist/chain-meta.js.map +1 -1
  10. package/dist/chains.d.ts +960 -0
  11. package/dist/chains.d.ts.map +1 -0
  12. package/dist/chains.js +108 -0
  13. package/dist/chains.js.map +1 -0
  14. package/dist/client.d.ts +10 -1717
  15. package/dist/client.d.ts.map +1 -1
  16. package/dist/client.js +33 -218
  17. package/dist/client.js.map +1 -1
  18. package/dist/http-server.d.ts +6 -0
  19. package/dist/http-server.d.ts.map +1 -1
  20. package/dist/http-server.js +55 -40
  21. package/dist/http-server.js.map +1 -1
  22. package/dist/index.js +50 -29
  23. package/dist/index.js.map +1 -1
  24. package/dist/oauth.d.ts +31 -0
  25. package/dist/oauth.d.ts.map +1 -0
  26. package/dist/oauth.js +227 -0
  27. package/dist/oauth.js.map +1 -0
  28. package/dist/preview.d.ts.map +1 -1
  29. package/dist/preview.js +2 -2
  30. package/dist/preview.js.map +1 -1
  31. package/dist/tools/advanced.d.ts +4 -4
  32. package/dist/tools/advanced.d.ts.map +1 -1
  33. package/dist/tools/advanced.js +228 -247
  34. package/dist/tools/advanced.js.map +1 -1
  35. package/dist/tools/balance.d.ts +1 -1
  36. package/dist/tools/balance.d.ts.map +1 -1
  37. package/dist/tools/balance.js +97 -103
  38. package/dist/tools/balance.js.map +1 -1
  39. package/dist/tools/contract-info.d.ts +3 -3
  40. package/dist/tools/contract-info.d.ts.map +1 -1
  41. package/dist/tools/contract-info.js +150 -161
  42. package/dist/tools/contract-info.js.map +1 -1
  43. package/dist/tools/contract.d.ts +4 -4
  44. package/dist/tools/contract.d.ts.map +1 -1
  45. package/dist/tools/contract.js +91 -110
  46. package/dist/tools/contract.js.map +1 -1
  47. package/dist/tools/ens.d.ts +6 -6
  48. package/dist/tools/ens.d.ts.map +1 -1
  49. package/dist/tools/ens.js +239 -297
  50. package/dist/tools/ens.js.map +1 -1
  51. package/dist/tools/gas.d.ts +4 -4
  52. package/dist/tools/gas.d.ts.map +1 -1
  53. package/dist/tools/gas.js +90 -138
  54. package/dist/tools/gas.js.map +1 -1
  55. package/dist/tools/index.d.ts +1 -1
  56. package/dist/tools/index.d.ts.map +1 -1
  57. package/dist/tools/logs.d.ts +1 -1
  58. package/dist/tools/logs.d.ts.map +1 -1
  59. package/dist/tools/logs.js +36 -37
  60. package/dist/tools/logs.js.map +1 -1
  61. package/dist/tools/signatures.d.ts.map +1 -1
  62. package/dist/tools/signatures.js +67 -89
  63. package/dist/tools/signatures.js.map +1 -1
  64. package/dist/tools/transactions.d.ts +35 -5
  65. package/dist/tools/transactions.d.ts.map +1 -1
  66. package/dist/tools/transactions.js +148 -74
  67. package/dist/tools/transactions.js.map +1 -1
  68. package/dist/types.d.ts +1 -1
  69. package/dist/types.d.ts.map +1 -1
  70. package/dist/utils.d.ts +1 -1
  71. package/dist/utils.d.ts.map +1 -1
  72. package/dist/utils.js +35 -98
  73. package/dist/utils.js.map +1 -1
  74. package/dist/wallet-client.d.ts +11 -1
  75. package/dist/wallet-client.d.ts.map +1 -1
  76. package/dist/wallet-client.js +27 -9
  77. package/dist/wallet-client.js.map +1 -1
  78. package/dist/walletconnect.d.ts +22 -1
  79. package/dist/walletconnect.d.ts.map +1 -1
  80. package/dist/walletconnect.js +101 -8
  81. package/dist/walletconnect.js.map +1 -1
  82. package/package.json +17 -9
  83. package/src/anvil.ts +15 -18
  84. package/src/chain-meta.ts +8 -4
  85. package/src/chains.ts +145 -0
  86. package/src/client.ts +39 -254
  87. package/src/http-server.ts +67 -44
  88. package/src/index.ts +77 -53
  89. package/src/oauth.ts +270 -0
  90. package/src/preview.ts +3 -12
  91. package/src/tools/advanced.ts +195 -213
  92. package/src/tools/balance.ts +103 -108
  93. package/src/tools/contract-info.ts +163 -184
  94. package/src/tools/contract.ts +123 -144
  95. package/src/tools/ens.ts +290 -345
  96. package/src/tools/gas.ts +122 -170
  97. package/src/tools/index.ts +2 -2
  98. package/src/tools/logs.ts +45 -43
  99. package/src/tools/signatures.ts +68 -86
  100. package/src/tools/transactions.ts +194 -87
  101. package/src/types.ts +1 -15
  102. package/src/utils.ts +52 -110
  103. package/src/wallet-client.ts +31 -9
  104. package/src/walletconnect.ts +119 -7
@@ -5,16 +5,15 @@ import { createTool, formatResponse } from '../utils.js';
5
5
  const BalanceQuerySchema = z.object({
6
6
  chain: z.enum(SUPPORTED_CHAINS).describe('The blockchain network to use'),
7
7
  address: z.string().describe('The address to check balance for'),
8
- tokenAddress: z
9
- .string()
10
- .optional()
11
- .describe('Token contract address (optional, if not provided returns native token balance)'),
8
+ tokenAddress: z.string().optional().describe('Token contract address (optional, if not provided returns native token balance)'),
12
9
  blockNumber: z.string().optional().describe('Block number to query (optional, defaults to latest)'),
13
10
  label: z.string().optional().describe('Optional label for batch results')
14
11
  });
15
12
  export default {
16
13
  get_balance: createTool('Get Token Balances', 'Retrieve native and ERC20 token balances for multiple addresses. BATCH OPTIMIZED - use for portfolio tracking, wallet monitoring.', z.object({
17
- queries: z.array(BalanceQuerySchema).describe('Array of balance queries. Omit tokenAddress for native balance, include for ERC20.')
14
+ queries: z
15
+ .array(BalanceQuerySchema)
16
+ .describe('Array of balance queries. Omit tokenAddress for native balance, include for ERC20.')
18
17
  }), async (args) => {
19
18
  // Group by chain and blockNumber for efficient processing
20
19
  const groupedQueries = new Map();
@@ -26,121 +25,116 @@ export default {
26
25
  groupedQueries.get(key).push(item);
27
26
  }
28
27
  const allResults = [];
29
- try {
30
- // Process each group
31
- for (const [key, queries] of groupedQueries) {
32
- const [chain, blockNum] = key.split(':');
33
- const clientManager = getClientManager();
34
- const client = clientManager.getClient(chain);
35
- const blockTag = blockNum === 'latest' ? 'latest' : BigInt(blockNum);
36
- // Process all queries in this group
37
- const results = await Promise.allSettled(queries.map(async (query) => {
38
- if (!isAddress(query.address)) {
39
- throw new Error(`Invalid address format: ${query.address}`);
40
- }
41
- const originalIndex = args.queries.indexOf(query);
42
- // Native token balance
43
- if (!query.tokenAddress) {
44
- const balance = await client.getBalance({
45
- address: query.address,
46
- blockNumber: blockTag === 'latest' ? undefined : blockTag
47
- });
48
- return {
49
- index: originalIndex,
50
- label: query.label,
51
- address: query.address,
52
- chain: query.chain,
53
- blockNumber: query.blockNumber || 'latest',
54
- success: true,
55
- balance,
56
- balanceFormatted: formatEther(balance)
57
- };
58
- }
59
- // ERC20 token balance
60
- if (!isAddress(query.tokenAddress)) {
61
- throw new Error(`Invalid token address format: ${query.tokenAddress}`);
62
- }
63
- const balance = await client.readContract({
28
+ // Process each group
29
+ for (const [key, queries] of groupedQueries) {
30
+ const [chain, blockNum] = key.split(':');
31
+ const clientManager = getClientManager();
32
+ const client = clientManager.getClient(chain);
33
+ const blockTag = blockNum === 'latest' ? 'latest' : BigInt(blockNum);
34
+ // Process all queries in this group
35
+ const results = await Promise.allSettled(queries.map(async (query) => {
36
+ if (!isAddress(query.address)) {
37
+ throw new Error(`Invalid address format: ${query.address}`);
38
+ }
39
+ const originalIndex = args.queries.indexOf(query);
40
+ // Native token balance
41
+ if (!query.tokenAddress) {
42
+ const balance = await client.getBalance({
43
+ address: query.address,
44
+ blockNumber: blockTag === 'latest' ? undefined : blockTag
45
+ });
46
+ return {
47
+ index: originalIndex,
48
+ label: query.label,
49
+ address: query.address,
50
+ chain: query.chain,
51
+ blockNumber: query.blockNumber || 'latest',
52
+ success: true,
53
+ balance,
54
+ balanceFormatted: formatEther(balance)
55
+ };
56
+ }
57
+ // ERC20 token balance
58
+ if (!isAddress(query.tokenAddress)) {
59
+ throw new Error(`Invalid token address format: ${query.tokenAddress}`);
60
+ }
61
+ const balance = await client.readContract({
62
+ address: query.tokenAddress,
63
+ abi: [
64
+ {
65
+ name: 'balanceOf',
66
+ type: 'function',
67
+ stateMutability: 'view',
68
+ inputs: [{ name: 'account', type: 'address' }],
69
+ outputs: [{ name: '', type: 'uint256' }]
70
+ }
71
+ ],
72
+ functionName: 'balanceOf',
73
+ args: [query.address],
74
+ blockNumber: blockTag === 'latest' ? undefined : blockTag
75
+ });
76
+ // Try to get decimals
77
+ let decimals = 18;
78
+ try {
79
+ decimals = (await client.readContract({
64
80
  address: query.tokenAddress,
65
81
  abi: [
66
82
  {
67
- name: 'balanceOf',
83
+ name: 'decimals',
68
84
  type: 'function',
69
85
  stateMutability: 'view',
70
- inputs: [{ name: 'account', type: 'address' }],
71
- outputs: [{ name: '', type: 'uint256' }]
86
+ inputs: [],
87
+ outputs: [{ name: '', type: 'uint8' }]
72
88
  }
73
89
  ],
74
- functionName: 'balanceOf',
75
- args: [query.address],
90
+ functionName: 'decimals',
76
91
  blockNumber: blockTag === 'latest' ? undefined : blockTag
77
- });
78
- // Try to get decimals
79
- let decimals = 18;
80
- try {
81
- decimals = (await client.readContract({
82
- address: query.tokenAddress,
83
- abi: [
84
- {
85
- name: 'decimals',
86
- type: 'function',
87
- stateMutability: 'view',
88
- inputs: [],
89
- outputs: [{ name: '', type: 'uint8' }]
90
- }
91
- ],
92
- functionName: 'decimals',
93
- blockNumber: blockTag === 'latest' ? undefined : blockTag
94
- }));
95
- }
96
- catch {
97
- // Use default decimals if call fails
98
- }
99
- return {
92
+ }));
93
+ }
94
+ catch {
95
+ // Use default decimals if call fails
96
+ }
97
+ return {
98
+ index: originalIndex,
99
+ label: query.label,
100
+ address: query.address,
101
+ tokenAddress: query.tokenAddress,
102
+ chain: query.chain,
103
+ blockNumber: query.blockNumber || 'latest',
104
+ success: true,
105
+ balance,
106
+ balanceFormatted: formatUnits(balance, decimals),
107
+ decimals
108
+ };
109
+ }));
110
+ // Process results
111
+ results.forEach((result, idx) => {
112
+ if (result.status === 'fulfilled') {
113
+ allResults[result.value.index] = result.value;
114
+ }
115
+ else {
116
+ const query = queries[idx];
117
+ const originalIndex = args.queries.indexOf(query);
118
+ allResults[originalIndex] = {
100
119
  index: originalIndex,
101
120
  label: query.label,
102
121
  address: query.address,
103
122
  tokenAddress: query.tokenAddress,
104
123
  chain: query.chain,
105
124
  blockNumber: query.blockNumber || 'latest',
106
- success: true,
107
- balance,
108
- balanceFormatted: formatUnits(balance, decimals),
109
- decimals
125
+ success: false,
126
+ error: result.reason instanceof Error ? result.reason.message : String(result.reason)
110
127
  };
111
- }));
112
- // Process results
113
- results.forEach((result, idx) => {
114
- if (result.status === 'fulfilled') {
115
- allResults[result.value.index] = result.value;
116
- }
117
- else {
118
- const query = queries[idx];
119
- const originalIndex = args.queries.indexOf(query);
120
- allResults[originalIndex] = {
121
- index: originalIndex,
122
- label: query.label,
123
- address: query.address,
124
- tokenAddress: query.tokenAddress,
125
- chain: query.chain,
126
- blockNumber: query.blockNumber || 'latest',
127
- success: false,
128
- error: result.reason instanceof Error ? result.reason.message : String(result.reason)
129
- };
130
- }
131
- });
132
- }
133
- return formatResponse({
134
- success: true,
135
- totalQueries: args.queries.length,
136
- successfulQueries: allResults.filter((r) => r.success).length,
137
- failedQueries: allResults.filter((r) => !r.success).length,
138
- results: allResults
128
+ }
139
129
  });
140
130
  }
141
- catch (error) {
142
- throw new Error(`Balance query failed: ${error}`);
143
- }
131
+ return formatResponse({
132
+ success: true,
133
+ totalQueries: args.queries.length,
134
+ successfulQueries: allResults.filter((r) => r.success).length,
135
+ failedQueries: allResults.filter((r) => !r.success).length,
136
+ results: allResults
137
+ });
144
138
  })
145
139
  };
146
140
  //# sourceMappingURL=balance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/tools/balance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../src/tools/balance.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ declare const _default: {
4
4
  title: string;
5
5
  description: string;
6
6
  schema: z.ZodObject<{
7
- chain: z.ZodEnum<["mainnet", "arbitrum", "avalanche", "base", "bnb", "gnosis", "sonic", "optimism", "polygon", "zksync", "linea", "unichain", "localhost"]>;
7
+ chain: z.ZodEnum<["arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost", ...("arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost")[]]>;
8
8
  address: z.ZodString;
9
9
  include: z.ZodOptional<z.ZodArray<z.ZodEnum<["abi", "implementationAbi", "metadata", "compilation", "creation", "stats"]>, "many">>;
10
10
  }, "strip", z.ZodTypeAny, {
@@ -26,7 +26,7 @@ declare const _default: {
26
26
  title: string;
27
27
  description: string;
28
28
  schema: z.ZodObject<{
29
- chain: z.ZodEnum<["mainnet", "arbitrum", "avalanche", "base", "bnb", "gnosis", "sonic", "optimism", "polygon", "zksync", "linea", "unichain", "localhost"]>;
29
+ chain: z.ZodEnum<["arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost", ...("arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost")[]]>;
30
30
  address: z.ZodString;
31
31
  includeImplementation: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
32
32
  includeSource: z.ZodDefault<z.ZodOptional<z.ZodEnum<["full", "summary", "none"]>>>;
@@ -52,7 +52,7 @@ declare const _default: {
52
52
  title: string;
53
53
  description: string;
54
54
  schema: z.ZodObject<{
55
- chain: z.ZodEnum<["mainnet", "arbitrum", "avalanche", "base", "bnb", "gnosis", "sonic", "optimism", "polygon", "zksync", "linea", "unichain", "localhost"]>;
55
+ chain: z.ZodEnum<["arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost", ...("arbitrum" | "mainnet" | "avalanche" | "base" | "bnb" | "gnosis" | "sonic" | "optimism" | "polygon" | "zksync" | "linea" | "unichain" | "localhost")[]]>;
56
56
  address: z.ZodString;
57
57
  filePath: z.ZodOptional<z.ZodString>;
58
58
  useImplementation: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
@@ -1 +1 @@
1
- {"version":3,"file":"contract-info.d.ts","sourceRoot":"","sources":["../../src/tools/contract-info.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2FvB,wBAyeC"}
1
+ {"version":3,"file":"contract-info.d.ts","sourceRoot":"","sources":["../../src/tools/contract-info.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFvB,wBAwdC"}