@continuumdao/ctm-mpc-defi 0.1.4 → 0.2.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 (55) hide show
  1. package/dist/agent/catalog.cjs +878 -141
  2. package/dist/agent/catalog.cjs.map +1 -1
  3. package/dist/agent/catalog.d.cts +756 -12
  4. package/dist/agent/catalog.d.ts +756 -12
  5. package/dist/agent/catalog.js +829 -142
  6. package/dist/agent/catalog.js.map +1 -1
  7. package/dist/chains/evm/index.cjs +13 -0
  8. package/dist/chains/evm/index.cjs.map +1 -1
  9. package/dist/chains/evm/index.d.cts +3 -1
  10. package/dist/chains/evm/index.d.ts +3 -1
  11. package/dist/chains/evm/index.js +13 -1
  12. package/dist/chains/evm/index.js.map +1 -1
  13. package/dist/index.cjs +825 -141
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.cts +2 -1
  16. package/dist/index.d.ts +2 -1
  17. package/dist/index.js +825 -142
  18. package/dist/index.js.map +1 -1
  19. package/dist/protocols/evm/aave-v4/index.cjs +1987 -0
  20. package/dist/protocols/evm/aave-v4/index.cjs.map +1 -0
  21. package/dist/protocols/evm/aave-v4/index.d.cts +500 -0
  22. package/dist/protocols/evm/aave-v4/index.d.ts +500 -0
  23. package/dist/protocols/evm/aave-v4/index.js +1943 -0
  24. package/dist/protocols/evm/aave-v4/index.js.map +1 -0
  25. package/dist/protocols/evm/ethena/index.cjs +965 -0
  26. package/dist/protocols/evm/ethena/index.cjs.map +1 -0
  27. package/dist/protocols/evm/ethena/index.d.cts +161 -0
  28. package/dist/protocols/evm/ethena/index.d.ts +161 -0
  29. package/dist/protocols/evm/ethena/index.js +943 -0
  30. package/dist/protocols/evm/ethena/index.js.map +1 -0
  31. package/dist/protocols/evm/euler-v2/index.cjs +2263 -0
  32. package/dist/protocols/evm/euler-v2/index.cjs.map +1 -0
  33. package/dist/protocols/evm/euler-v2/index.d.cts +317 -0
  34. package/dist/protocols/evm/euler-v2/index.d.ts +317 -0
  35. package/dist/protocols/evm/euler-v2/index.js +2238 -0
  36. package/dist/protocols/evm/euler-v2/index.js.map +1 -0
  37. package/dist/protocols/evm/lido/index.cjs +834 -0
  38. package/dist/protocols/evm/lido/index.cjs.map +1 -0
  39. package/dist/protocols/evm/lido/index.d.cts +120 -0
  40. package/dist/protocols/evm/lido/index.d.ts +120 -0
  41. package/dist/protocols/evm/lido/index.js +809 -0
  42. package/dist/protocols/evm/lido/index.js.map +1 -0
  43. package/dist/protocols/evm/maple/index.cjs +707 -0
  44. package/dist/protocols/evm/maple/index.cjs.map +1 -0
  45. package/dist/protocols/evm/maple/index.d.cts +109 -0
  46. package/dist/protocols/evm/maple/index.d.ts +109 -0
  47. package/dist/protocols/evm/maple/index.js +693 -0
  48. package/dist/protocols/evm/maple/index.js.map +1 -0
  49. package/dist/protocols/evm/sky/index.cjs +1254 -0
  50. package/dist/protocols/evm/sky/index.cjs.map +1 -0
  51. package/dist/protocols/evm/sky/index.d.cts +218 -0
  52. package/dist/protocols/evm/sky/index.d.ts +218 -0
  53. package/dist/protocols/evm/sky/index.js +1229 -0
  54. package/dist/protocols/evm/sky/index.js.map +1 -0
  55. package/package.json +37 -3
@@ -1,7 +1,9 @@
1
+ import * as zod from 'zod';
2
+ import { z } from 'zod';
1
3
  import { C as ChainCategory, d as ProtocolModule, P as ParamDoc, c as ProtocolActionDescriptor } from '../types-Ce2qNHai.js';
2
4
  export { g as getActionsByChainCategory, b as getProtocolModules } from '../registry-oMKlO_5z.js';
3
5
 
4
- /** JSON-schema-like object for MCP tool `inputSchema` / `outputSchema`. */
6
+ /** JSON-schema-like object for MCP tool `inputSchema` / `outputSchema` (derived from Zod). */
5
7
  type McpSchemaProperty = {
6
8
  type: string;
7
9
  description?: string;
@@ -20,30 +22,51 @@ type McpToolHandler = {
20
22
  /** Named export to invoke */
21
23
  exportName: string;
22
24
  };
23
- type McpToolDefinition = {
24
- /** Stable MCP tool name (snake_case). */
25
+ /**
26
+ * MCP tool definition. **Zod schemas are the source of truth** for types and runtime validation;
27
+ * `inputSchema` / `outputSchema` are JSON Schema snapshots for MCP server registration.
28
+ */
29
+ type McpToolDefinition<TInput = unknown, TOutput = unknown> = {
25
30
  name: string;
26
- /** Registry action id, e.g. uniswap-v4.quote */
27
31
  actionId: string;
28
32
  protocolId: string;
29
33
  chainCategory: ChainCategory;
30
- /** Long description for the LLM — what it does, when to use it, what it does NOT do. */
31
34
  description: string;
32
- /** Prerequisites (other tools or data that must exist first). */
33
35
  prerequisites: string[];
34
- /** Typical next tools after this one succeeds. */
35
36
  followUp: string[];
37
+ inputZod: z.ZodType<TInput>;
38
+ outputZod: z.ZodType<TOutput>;
36
39
  inputSchema: McpJsonSchema;
37
40
  outputSchema: McpJsonSchema;
38
41
  handler: McpToolHandler;
42
+ parseInput: (data: unknown) => TInput;
43
+ parseOutput: (data: unknown) => TOutput;
44
+ };
45
+
46
+ declare const MCP_TOOL_DEFINITIONS: readonly McpToolDefinition[];
47
+ /** Map tool name → input Zod schema (for typed dispatch in MCP servers). */
48
+ declare const MCP_TOOL_INPUT_SCHEMAS: Record<string, z.ZodType<any, z.ZodTypeDef, any>>;
49
+ /** Map tool name → output Zod schema. */
50
+ declare const MCP_TOOL_OUTPUT_SCHEMAS: Record<string, z.ZodType<any, z.ZodTypeDef, any>>;
51
+ /** Union of registered MCP tool names. */
52
+ type McpToolName = (typeof MCP_TOOL_DEFINITIONS)[number]['name'];
53
+ type McpToolInputMap = {
54
+ [K in McpToolName]: z.infer<(typeof MCP_TOOL_INPUT_SCHEMAS)[K]>;
55
+ };
56
+ type McpToolOutputMap = {
57
+ [K in McpToolName]: z.infer<(typeof MCP_TOOL_OUTPUT_SCHEMAS)[K]>;
39
58
  };
40
- /** Curated MCP tools with rich descriptions — use this to register MCP server tools. */
41
- declare const MCP_TOOL_DEFINITIONS: McpToolDefinition[];
42
59
  declare function getMcpToolDefinitions(): readonly McpToolDefinition[];
43
60
  declare function getMcpToolByName(name: string): McpToolDefinition | undefined;
61
+ declare function getMcpToolInputSchema(name: McpToolName): z.ZodType;
62
+ declare function getMcpToolOutputSchema(name: McpToolName): z.ZodType;
63
+ /** Parse and validate MCP tool arguments with the registered Zod schema. */
64
+ declare function parseMcpToolInput(name: McpToolName, data: unknown): unknown;
65
+ /** Parse and validate MCP tool handler output. */
66
+ declare function parseMcpToolOutput(name: McpToolName, data: unknown): unknown;
44
67
  /** Summary from protocol registry (shorter) plus full MCP tool list. */
45
68
  declare function getAgentCatalogForMcp(): {
46
- tools: McpToolDefinition[];
69
+ tools: readonly McpToolDefinition[];
47
70
  protocols: readonly ProtocolModule[];
48
71
  commonParams: Record<string, ParamDoc>;
49
72
  multisignOutput: {
@@ -84,6 +107,9 @@ declare function getAgentCatalogForMcp(): {
84
107
  readonly fetchManagementNonce: "GET nonce for Ed25519 or Ethereum management key.";
85
108
  };
86
109
  };
110
+ /** Zod schemas for MCP tool I/O — source of truth for continuum-mcp-server validation. */
111
+ inputSchemas: Record<string, z.ZodType<any, z.ZodTypeDef, any>>;
112
+ outputSchemas: Record<string, z.ZodType<any, z.ZodTypeDef, any>>;
87
113
  workflow: {
88
114
  evmSwapTypical: string[];
89
115
  managementPostTypical: string[];
@@ -132,6 +158,716 @@ declare const MANAGEMENT_SIG_DOC: {
132
158
  };
133
159
  };
134
160
 
161
+ /**
162
+ * Convert a Zod schema to MCP-compatible JSON Schema (`inputSchema` / `outputSchema`).
163
+ * Zod is the source of truth; JSON Schema is derived for MCP server registration only.
164
+ */
165
+ declare function zodSchemaToMcpJsonSchema(schema: z.ZodType): McpJsonSchema;
166
+
167
+ /** EVM address (0x + 40 hex). Handlers may normalize via viem `getAddress`. */
168
+ declare const evmAddressSchema: z.ZodString;
169
+ /** MPC key slice for POST /multiSignRequest (pubKey, keyList). */
170
+ declare const keyGenSchema: z.ZodObject<{
171
+ pubkeyhex: z.ZodString;
172
+ keylist: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
173
+ ClientKeys: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
174
+ }, "strip", z.ZodTypeAny, {
175
+ pubkeyhex: string;
176
+ keylist?: string[] | undefined;
177
+ ClientKeys?: Record<string, string> | undefined;
178
+ }, {
179
+ pubkeyhex: string;
180
+ keylist?: string[] | undefined;
181
+ ClientKeys?: Record<string, string> | undefined;
182
+ }>;
183
+ /** Chain gas config row from GET /getChainDetails (subset). */
184
+ declare const chainDetailSchema: z.ZodObject<{
185
+ legacy: z.ZodOptional<z.ZodBoolean>;
186
+ gasLimit: z.ZodOptional<z.ZodNumber>;
187
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
188
+ gasPrice: z.ZodOptional<z.ZodNumber>;
189
+ baseFee: z.ZodOptional<z.ZodNumber>;
190
+ priorityFee: z.ZodOptional<z.ZodNumber>;
191
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
192
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
193
+ legacy: z.ZodOptional<z.ZodBoolean>;
194
+ gasLimit: z.ZodOptional<z.ZodNumber>;
195
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
196
+ gasPrice: z.ZodOptional<z.ZodNumber>;
197
+ baseFee: z.ZodOptional<z.ZodNumber>;
198
+ priorityFee: z.ZodOptional<z.ZodNumber>;
199
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
200
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
201
+ legacy: z.ZodOptional<z.ZodBoolean>;
202
+ gasLimit: z.ZodOptional<z.ZodNumber>;
203
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
204
+ gasPrice: z.ZodOptional<z.ZodNumber>;
205
+ baseFee: z.ZodOptional<z.ZodNumber>;
206
+ priorityFee: z.ZodOptional<z.ZodNumber>;
207
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
208
+ }, z.ZodTypeAny, "passthrough">>;
209
+ /** Shared inputs for all EVM multisign MCP tools. */
210
+ declare const evmMultisignCommonInputSchema: z.ZodObject<{
211
+ keyGen: z.ZodObject<{
212
+ pubkeyhex: z.ZodString;
213
+ keylist: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
214
+ ClientKeys: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
215
+ }, "strip", z.ZodTypeAny, {
216
+ pubkeyhex: string;
217
+ keylist?: string[] | undefined;
218
+ ClientKeys?: Record<string, string> | undefined;
219
+ }, {
220
+ pubkeyhex: string;
221
+ keylist?: string[] | undefined;
222
+ ClientKeys?: Record<string, string> | undefined;
223
+ }>;
224
+ purposeText: z.ZodString;
225
+ useCustomGas: z.ZodBoolean;
226
+ chainId: z.ZodNumber;
227
+ rpcUrl: z.ZodString;
228
+ executorAddress: z.ZodString;
229
+ chainDetail: z.ZodObject<{
230
+ legacy: z.ZodOptional<z.ZodBoolean>;
231
+ gasLimit: z.ZodOptional<z.ZodNumber>;
232
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
233
+ gasPrice: z.ZodOptional<z.ZodNumber>;
234
+ baseFee: z.ZodOptional<z.ZodNumber>;
235
+ priorityFee: z.ZodOptional<z.ZodNumber>;
236
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
237
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
238
+ legacy: z.ZodOptional<z.ZodBoolean>;
239
+ gasLimit: z.ZodOptional<z.ZodNumber>;
240
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
241
+ gasPrice: z.ZodOptional<z.ZodNumber>;
242
+ baseFee: z.ZodOptional<z.ZodNumber>;
243
+ priorityFee: z.ZodOptional<z.ZodNumber>;
244
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
245
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
246
+ legacy: z.ZodOptional<z.ZodBoolean>;
247
+ gasLimit: z.ZodOptional<z.ZodNumber>;
248
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
249
+ gasPrice: z.ZodOptional<z.ZodNumber>;
250
+ baseFee: z.ZodOptional<z.ZodNumber>;
251
+ priorityFee: z.ZodOptional<z.ZodNumber>;
252
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
253
+ }, z.ZodTypeAny, "passthrough">>;
254
+ customGasChainDetails: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
255
+ }, "strip", z.ZodTypeAny, {
256
+ keyGen: {
257
+ pubkeyhex: string;
258
+ keylist?: string[] | undefined;
259
+ ClientKeys?: Record<string, string> | undefined;
260
+ };
261
+ purposeText: string;
262
+ useCustomGas: boolean;
263
+ chainId: number;
264
+ rpcUrl: string;
265
+ executorAddress: string;
266
+ chainDetail: {
267
+ legacy?: boolean | undefined;
268
+ gasLimit?: number | undefined;
269
+ gasPrice?: number | undefined;
270
+ gasMultiplier?: number | undefined;
271
+ baseFee?: number | undefined;
272
+ priorityFee?: number | undefined;
273
+ baseFeeMultiplier?: number | undefined;
274
+ } & {
275
+ [k: string]: unknown;
276
+ };
277
+ customGasChainDetails?: Record<string, unknown> | undefined;
278
+ }, {
279
+ keyGen: {
280
+ pubkeyhex: string;
281
+ keylist?: string[] | undefined;
282
+ ClientKeys?: Record<string, string> | undefined;
283
+ };
284
+ purposeText: string;
285
+ useCustomGas: boolean;
286
+ chainId: number;
287
+ rpcUrl: string;
288
+ executorAddress: string;
289
+ chainDetail: {
290
+ legacy?: boolean | undefined;
291
+ gasLimit?: number | undefined;
292
+ gasPrice?: number | undefined;
293
+ gasMultiplier?: number | undefined;
294
+ baseFee?: number | undefined;
295
+ priorityFee?: number | undefined;
296
+ baseFeeMultiplier?: number | undefined;
297
+ } & {
298
+ [k: string]: unknown;
299
+ };
300
+ customGasChainDetails?: Record<string, unknown> | undefined;
301
+ }>;
302
+ /** Standard output of all `build_*_multisign` MCP tools. */
303
+ declare const multisignOutputSchema: z.ZodObject<{
304
+ bodyForSign: z.ZodRecord<z.ZodString, z.ZodUnknown>;
305
+ messageToSign: z.ZodString;
306
+ }, "strip", z.ZodTypeAny, {
307
+ bodyForSign: Record<string, unknown>;
308
+ messageToSign: string;
309
+ }, {
310
+ bodyForSign: Record<string, unknown>;
311
+ messageToSign: string;
312
+ }>;
313
+ /** Loose JSON object for protocol API responses passed between MCP tools. */
314
+ declare const jsonObjectSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
315
+ type EvmMultisignCommonInput = z.infer<typeof evmMultisignCommonInputSchema>;
316
+ type MultisignOutput = z.infer<typeof multisignOutputSchema>;
317
+ type KeyGenMcpInput = z.infer<typeof keyGenSchema>;
318
+ type ChainDetailMcpInput = z.infer<typeof chainDetailSchema>;
319
+
320
+ declare const uniswapQuoteTradeTypeSchema: z.ZodEnum<["EXACT_INPUT", "EXACT_OUTPUT"]>;
321
+ /** Input for MCP tool `ctm_uniswap_v4_quote` → handler `uniswapTradeQuote`. */
322
+ declare const mcpUniswapV4QuoteInputSchema: z.ZodObject<{
323
+ type: z.ZodEnum<["EXACT_INPUT", "EXACT_OUTPUT"]>;
324
+ amount: z.ZodString;
325
+ tokenIn: z.ZodString;
326
+ tokenOut: z.ZodString;
327
+ chainId: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
328
+ uniswapApiKey: z.ZodString;
329
+ swapper: z.ZodOptional<z.ZodString>;
330
+ slippage: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
331
+ keyGen: z.ZodOptional<z.ZodString>;
332
+ managementNodeUrl: z.ZodOptional<z.ZodString>;
333
+ tokenInChainId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
334
+ tokenOutChainId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
335
+ permit2Disabled: z.ZodOptional<z.ZodBoolean>;
336
+ baseUrl: z.ZodOptional<z.ZodString>;
337
+ universalRouterVersion: z.ZodOptional<z.ZodString>;
338
+ }, "strip", z.ZodTypeAny, {
339
+ chainId: string | number;
340
+ type: "EXACT_INPUT" | "EXACT_OUTPUT";
341
+ amount: string;
342
+ tokenIn: string;
343
+ tokenOut: string;
344
+ uniswapApiKey: string;
345
+ keyGen?: string | undefined;
346
+ tokenInChainId?: string | number | undefined;
347
+ tokenOutChainId?: string | number | undefined;
348
+ slippage?: string | number | undefined;
349
+ permit2Disabled?: boolean | undefined;
350
+ swapper?: string | undefined;
351
+ managementNodeUrl?: string | undefined;
352
+ baseUrl?: string | undefined;
353
+ universalRouterVersion?: string | undefined;
354
+ }, {
355
+ chainId: string | number;
356
+ type: "EXACT_INPUT" | "EXACT_OUTPUT";
357
+ amount: string;
358
+ tokenIn: string;
359
+ tokenOut: string;
360
+ uniswapApiKey: string;
361
+ keyGen?: string | undefined;
362
+ tokenInChainId?: string | number | undefined;
363
+ tokenOutChainId?: string | number | undefined;
364
+ slippage?: string | number | undefined;
365
+ permit2Disabled?: boolean | undefined;
366
+ swapper?: string | undefined;
367
+ managementNodeUrl?: string | undefined;
368
+ baseUrl?: string | undefined;
369
+ universalRouterVersion?: string | undefined;
370
+ }>;
371
+ /** Output: full Uniswap POST /quote JSON (dynamic shape from Trade API). */
372
+ declare const mcpUniswapV4QuoteOutputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
373
+ /** Input for MCP tool `ctm_uniswap_v4_create_swap` → handler `uniswapCreateSwap`. */
374
+ declare const mcpUniswapV4CreateSwapInputSchema: z.ZodObject<{
375
+ uniswapApiKey: z.ZodString;
376
+ fullQuoteFromPermit: z.ZodRecord<z.ZodString, z.ZodUnknown>;
377
+ swapTransactionDeadlineUnix: z.ZodOptional<z.ZodNumber>;
378
+ useServerProxy: z.ZodOptional<z.ZodBoolean>;
379
+ baseUrl: z.ZodOptional<z.ZodString>;
380
+ universalRouterVersion: z.ZodOptional<z.ZodString>;
381
+ }, "strip", z.ZodTypeAny, {
382
+ uniswapApiKey: string;
383
+ fullQuoteFromPermit: Record<string, unknown>;
384
+ baseUrl?: string | undefined;
385
+ universalRouterVersion?: string | undefined;
386
+ useServerProxy?: boolean | undefined;
387
+ swapTransactionDeadlineUnix?: number | undefined;
388
+ }, {
389
+ uniswapApiKey: string;
390
+ fullQuoteFromPermit: Record<string, unknown>;
391
+ baseUrl?: string | undefined;
392
+ universalRouterVersion?: string | undefined;
393
+ useServerProxy?: boolean | undefined;
394
+ swapTransactionDeadlineUnix?: number | undefined;
395
+ }>;
396
+ declare const mcpUniswapV4CreateSwapOutputSchema: z.ZodObject<{
397
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
398
+ requestId: z.ZodOptional<z.ZodString>;
399
+ gasFee: z.ZodOptional<z.ZodString>;
400
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
401
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
402
+ requestId: z.ZodOptional<z.ZodString>;
403
+ gasFee: z.ZodOptional<z.ZodString>;
404
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
405
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
406
+ requestId: z.ZodOptional<z.ZodString>;
407
+ gasFee: z.ZodOptional<z.ZodString>;
408
+ }, z.ZodTypeAny, "passthrough">>;
409
+ /** Input for MCP tool `ctm_uniswap_v4_build_swap_multisign`. */
410
+ declare const mcpUniswapV4BuildSwapMultisignInputSchema: z.ZodObject<{
411
+ keyGen: z.ZodObject<{
412
+ pubkeyhex: z.ZodString;
413
+ keylist: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
414
+ ClientKeys: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
415
+ }, "strip", z.ZodTypeAny, {
416
+ pubkeyhex: string;
417
+ keylist?: string[] | undefined;
418
+ ClientKeys?: Record<string, string> | undefined;
419
+ }, {
420
+ pubkeyhex: string;
421
+ keylist?: string[] | undefined;
422
+ ClientKeys?: Record<string, string> | undefined;
423
+ }>;
424
+ purposeText: z.ZodString;
425
+ useCustomGas: z.ZodBoolean;
426
+ chainId: z.ZodNumber;
427
+ rpcUrl: z.ZodString;
428
+ executorAddress: z.ZodString;
429
+ chainDetail: z.ZodObject<{
430
+ legacy: z.ZodOptional<z.ZodBoolean>;
431
+ gasLimit: z.ZodOptional<z.ZodNumber>;
432
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
433
+ gasPrice: z.ZodOptional<z.ZodNumber>;
434
+ baseFee: z.ZodOptional<z.ZodNumber>;
435
+ priorityFee: z.ZodOptional<z.ZodNumber>;
436
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
437
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
438
+ legacy: z.ZodOptional<z.ZodBoolean>;
439
+ gasLimit: z.ZodOptional<z.ZodNumber>;
440
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
441
+ gasPrice: z.ZodOptional<z.ZodNumber>;
442
+ baseFee: z.ZodOptional<z.ZodNumber>;
443
+ priorityFee: z.ZodOptional<z.ZodNumber>;
444
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
445
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
446
+ legacy: z.ZodOptional<z.ZodBoolean>;
447
+ gasLimit: z.ZodOptional<z.ZodNumber>;
448
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
449
+ gasPrice: z.ZodOptional<z.ZodNumber>;
450
+ baseFee: z.ZodOptional<z.ZodNumber>;
451
+ priorityFee: z.ZodOptional<z.ZodNumber>;
452
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
453
+ }, z.ZodTypeAny, "passthrough">>;
454
+ customGasChainDetails: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
455
+ } & {
456
+ tokenIn: z.ZodString;
457
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
458
+ createSwapResponse: z.ZodObject<{
459
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
460
+ requestId: z.ZodOptional<z.ZodString>;
461
+ gasFee: z.ZodOptional<z.ZodString>;
462
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
463
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
464
+ requestId: z.ZodOptional<z.ZodString>;
465
+ gasFee: z.ZodOptional<z.ZodString>;
466
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
467
+ swap: z.ZodRecord<z.ZodString, z.ZodUnknown>;
468
+ requestId: z.ZodOptional<z.ZodString>;
469
+ gasFee: z.ZodOptional<z.ZodString>;
470
+ }, z.ZodTypeAny, "passthrough">>;
471
+ fullQuoteSnapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
472
+ swapDeadlineUnix: z.ZodNumber;
473
+ slippagePercent: z.ZodOptional<z.ZodNumber>;
474
+ }, "strip", z.ZodTypeAny, {
475
+ keyGen: {
476
+ pubkeyhex: string;
477
+ keylist?: string[] | undefined;
478
+ ClientKeys?: Record<string, string> | undefined;
479
+ };
480
+ purposeText: string;
481
+ useCustomGas: boolean;
482
+ chainId: number;
483
+ rpcUrl: string;
484
+ executorAddress: string;
485
+ chainDetail: {
486
+ legacy?: boolean | undefined;
487
+ gasLimit?: number | undefined;
488
+ gasPrice?: number | undefined;
489
+ gasMultiplier?: number | undefined;
490
+ baseFee?: number | undefined;
491
+ priorityFee?: number | undefined;
492
+ baseFeeMultiplier?: number | undefined;
493
+ } & {
494
+ [k: string]: unknown;
495
+ };
496
+ tokenIn: string;
497
+ swap: Record<string, unknown>;
498
+ createSwapResponse: {
499
+ swap: Record<string, unknown>;
500
+ requestId?: string | undefined;
501
+ gasFee?: string | undefined;
502
+ } & {
503
+ [k: string]: unknown;
504
+ };
505
+ fullQuoteSnapshot: Record<string, unknown>;
506
+ swapDeadlineUnix: number;
507
+ customGasChainDetails?: Record<string, unknown> | undefined;
508
+ slippagePercent?: number | undefined;
509
+ }, {
510
+ keyGen: {
511
+ pubkeyhex: string;
512
+ keylist?: string[] | undefined;
513
+ ClientKeys?: Record<string, string> | undefined;
514
+ };
515
+ purposeText: string;
516
+ useCustomGas: boolean;
517
+ chainId: number;
518
+ rpcUrl: string;
519
+ executorAddress: string;
520
+ chainDetail: {
521
+ legacy?: boolean | undefined;
522
+ gasLimit?: number | undefined;
523
+ gasPrice?: number | undefined;
524
+ gasMultiplier?: number | undefined;
525
+ baseFee?: number | undefined;
526
+ priorityFee?: number | undefined;
527
+ baseFeeMultiplier?: number | undefined;
528
+ } & {
529
+ [k: string]: unknown;
530
+ };
531
+ tokenIn: string;
532
+ swap: Record<string, unknown>;
533
+ createSwapResponse: {
534
+ swap: Record<string, unknown>;
535
+ requestId?: string | undefined;
536
+ gasFee?: string | undefined;
537
+ } & {
538
+ [k: string]: unknown;
539
+ };
540
+ fullQuoteSnapshot: Record<string, unknown>;
541
+ swapDeadlineUnix: number;
542
+ customGasChainDetails?: Record<string, unknown> | undefined;
543
+ slippagePercent?: number | undefined;
544
+ }>;
545
+ type McpUniswapV4QuoteInput = z.infer<typeof mcpUniswapV4QuoteInputSchema>;
546
+ type McpUniswapV4QuoteOutput = z.infer<typeof mcpUniswapV4QuoteOutputSchema>;
547
+ type McpUniswapV4CreateSwapInput = z.infer<typeof mcpUniswapV4CreateSwapInputSchema>;
548
+ type McpUniswapV4CreateSwapOutput = z.infer<typeof mcpUniswapV4CreateSwapOutputSchema>;
549
+ type McpUniswapV4BuildSwapMultisignInput = z.infer<typeof mcpUniswapV4BuildSwapMultisignInputSchema>;
550
+
551
+ /** Input for MCP tool `ctm_curve_dao_build_swap_multisign`. */
552
+ declare const mcpCurveDaoBuildSwapMultisignInputSchema: z.ZodObject<{
553
+ keyGen: z.ZodObject<{
554
+ pubkeyhex: z.ZodString;
555
+ keylist: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
556
+ ClientKeys: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
557
+ }, "strip", z.ZodTypeAny, {
558
+ pubkeyhex: string;
559
+ keylist?: string[] | undefined;
560
+ ClientKeys?: Record<string, string> | undefined;
561
+ }, {
562
+ pubkeyhex: string;
563
+ keylist?: string[] | undefined;
564
+ ClientKeys?: Record<string, string> | undefined;
565
+ }>;
566
+ purposeText: z.ZodString;
567
+ useCustomGas: z.ZodBoolean;
568
+ chainId: z.ZodNumber;
569
+ rpcUrl: z.ZodString;
570
+ executorAddress: z.ZodString;
571
+ chainDetail: z.ZodObject<{
572
+ legacy: z.ZodOptional<z.ZodBoolean>;
573
+ gasLimit: z.ZodOptional<z.ZodNumber>;
574
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
575
+ gasPrice: z.ZodOptional<z.ZodNumber>;
576
+ baseFee: z.ZodOptional<z.ZodNumber>;
577
+ priorityFee: z.ZodOptional<z.ZodNumber>;
578
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
579
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
580
+ legacy: z.ZodOptional<z.ZodBoolean>;
581
+ gasLimit: z.ZodOptional<z.ZodNumber>;
582
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
583
+ gasPrice: z.ZodOptional<z.ZodNumber>;
584
+ baseFee: z.ZodOptional<z.ZodNumber>;
585
+ priorityFee: z.ZodOptional<z.ZodNumber>;
586
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
587
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
588
+ legacy: z.ZodOptional<z.ZodBoolean>;
589
+ gasLimit: z.ZodOptional<z.ZodNumber>;
590
+ gasMultiplier: z.ZodOptional<z.ZodNumber>;
591
+ gasPrice: z.ZodOptional<z.ZodNumber>;
592
+ baseFee: z.ZodOptional<z.ZodNumber>;
593
+ priorityFee: z.ZodOptional<z.ZodNumber>;
594
+ baseFeeMultiplier: z.ZodOptional<z.ZodNumber>;
595
+ }, z.ZodTypeAny, "passthrough">>;
596
+ customGasChainDetails: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
597
+ } & {
598
+ tokenIn: z.ZodString;
599
+ tokenOut: z.ZodString;
600
+ amountHuman: z.ZodString;
601
+ slippagePercent: z.ZodNumber;
602
+ }, "strip", z.ZodTypeAny, {
603
+ keyGen: {
604
+ pubkeyhex: string;
605
+ keylist?: string[] | undefined;
606
+ ClientKeys?: Record<string, string> | undefined;
607
+ };
608
+ purposeText: string;
609
+ useCustomGas: boolean;
610
+ chainId: number;
611
+ rpcUrl: string;
612
+ executorAddress: string;
613
+ chainDetail: {
614
+ legacy?: boolean | undefined;
615
+ gasLimit?: number | undefined;
616
+ gasPrice?: number | undefined;
617
+ gasMultiplier?: number | undefined;
618
+ baseFee?: number | undefined;
619
+ priorityFee?: number | undefined;
620
+ baseFeeMultiplier?: number | undefined;
621
+ } & {
622
+ [k: string]: unknown;
623
+ };
624
+ tokenIn: string;
625
+ tokenOut: string;
626
+ slippagePercent: number;
627
+ amountHuman: string;
628
+ customGasChainDetails?: Record<string, unknown> | undefined;
629
+ }, {
630
+ keyGen: {
631
+ pubkeyhex: string;
632
+ keylist?: string[] | undefined;
633
+ ClientKeys?: Record<string, string> | undefined;
634
+ };
635
+ purposeText: string;
636
+ useCustomGas: boolean;
637
+ chainId: number;
638
+ rpcUrl: string;
639
+ executorAddress: string;
640
+ chainDetail: {
641
+ legacy?: boolean | undefined;
642
+ gasLimit?: number | undefined;
643
+ gasPrice?: number | undefined;
644
+ gasMultiplier?: number | undefined;
645
+ baseFee?: number | undefined;
646
+ priorityFee?: number | undefined;
647
+ baseFeeMultiplier?: number | undefined;
648
+ } & {
649
+ [k: string]: unknown;
650
+ };
651
+ tokenIn: string;
652
+ tokenOut: string;
653
+ slippagePercent: number;
654
+ amountHuman: string;
655
+ customGasChainDetails?: Record<string, unknown> | undefined;
656
+ }>;
657
+ type McpCurveDaoBuildSwapMultisignInput = z.infer<typeof mcpCurveDaoBuildSwapMultisignInputSchema>;
658
+
659
+ /** Extend common multisign inputs with protocol-specific fields. */
660
+ declare function mcpMultisignInput(fields: z.ZodRawShape): z.ZodObject<{} & {
661
+ [x: string]: z.ZodTypeAny;
662
+ }, "strip", z.ZodTypeAny, {
663
+ [x: string]: any;
664
+ }, {
665
+ [x: string]: any;
666
+ }>;
667
+
668
+ declare const mcpLidoSubmitInputSchema: z.ZodObject<{} & {
669
+ [x: string]: z.ZodTypeAny;
670
+ }, "strip", z.ZodTypeAny, {
671
+ [x: string]: any;
672
+ }, {
673
+ [x: string]: any;
674
+ }>;
675
+ declare const mcpLidoRequestWithdrawalsInputSchema: z.ZodObject<{} & {
676
+ [x: string]: z.ZodTypeAny;
677
+ }, "strip", z.ZodTypeAny, {
678
+ [x: string]: any;
679
+ }, {
680
+ [x: string]: any;
681
+ }>;
682
+ declare const mcpLidoClaimWithdrawalInputSchema: z.ZodObject<{} & {
683
+ [x: string]: z.ZodTypeAny;
684
+ }, "strip", z.ZodTypeAny, {
685
+ [x: string]: any;
686
+ }, {
687
+ [x: string]: any;
688
+ }>;
689
+ declare const mcpLidoWrapStEthInputSchema: z.ZodObject<{} & {
690
+ [x: string]: z.ZodTypeAny;
691
+ }, "strip", z.ZodTypeAny, {
692
+ [x: string]: any;
693
+ }, {
694
+ [x: string]: any;
695
+ }>;
696
+ declare const mcpLidoUnwrapWstEthInputSchema: z.ZodObject<{} & {
697
+ [x: string]: z.ZodTypeAny;
698
+ }, "strip", z.ZodTypeAny, {
699
+ [x: string]: any;
700
+ }, {
701
+ [x: string]: any;
702
+ }>;
703
+ declare const mcpEthenaStakeInputSchema: z.ZodObject<{} & {
704
+ [x: string]: z.ZodTypeAny;
705
+ }, "strip", z.ZodTypeAny, {
706
+ [x: string]: any;
707
+ }, {
708
+ [x: string]: any;
709
+ }>;
710
+ declare const mcpEthenaRedeemInputSchema: z.ZodObject<{} & {
711
+ [x: string]: z.ZodTypeAny;
712
+ }, "strip", z.ZodTypeAny, {
713
+ [x: string]: any;
714
+ }, {
715
+ [x: string]: any;
716
+ }>;
717
+ declare const mcpEthenaCooldownInputSchema: z.ZodObject<{} & {
718
+ [x: string]: z.ZodTypeAny;
719
+ }, "strip", z.ZodTypeAny, {
720
+ [x: string]: any;
721
+ }, {
722
+ [x: string]: any;
723
+ }>;
724
+ declare const mcpEthenaClaimInputSchema: z.ZodObject<{} & {
725
+ [x: string]: z.ZodTypeAny;
726
+ }, "strip", z.ZodTypeAny, {
727
+ [x: string]: any;
728
+ }, {
729
+ [x: string]: any;
730
+ }>;
731
+ declare const mcpMapleDepositInputSchema: z.ZodObject<{} & {
732
+ [x: string]: z.ZodTypeAny;
733
+ }, "strip", z.ZodTypeAny, {
734
+ [x: string]: any;
735
+ }, {
736
+ [x: string]: any;
737
+ }>;
738
+ declare const mcpMapleRequestRedeemInputSchema: z.ZodObject<{} & {
739
+ [x: string]: z.ZodTypeAny;
740
+ }, "strip", z.ZodTypeAny, {
741
+ [x: string]: any;
742
+ }, {
743
+ [x: string]: any;
744
+ }>;
745
+ declare const mcpSkyLockstakeStakeInputSchema: z.ZodObject<{} & {
746
+ [x: string]: z.ZodTypeAny;
747
+ }, "strip", z.ZodTypeAny, {
748
+ [x: string]: any;
749
+ }, {
750
+ [x: string]: any;
751
+ }>;
752
+ declare const mcpSkyLockstakeDrawInputSchema: z.ZodObject<{} & {
753
+ [x: string]: z.ZodTypeAny;
754
+ }, "strip", z.ZodTypeAny, {
755
+ [x: string]: any;
756
+ }, {
757
+ [x: string]: any;
758
+ }>;
759
+ declare const mcpSkyLockstakeWipeInputSchema: z.ZodObject<{} & {
760
+ [x: string]: z.ZodTypeAny;
761
+ }, "strip", z.ZodTypeAny, {
762
+ [x: string]: any;
763
+ }, {
764
+ [x: string]: any;
765
+ }>;
766
+ declare const mcpSkyLockstakeCloseInputSchema: z.ZodObject<{} & {
767
+ [x: string]: z.ZodTypeAny;
768
+ }, "strip", z.ZodTypeAny, {
769
+ [x: string]: any;
770
+ }, {
771
+ [x: string]: any;
772
+ }>;
773
+ declare const mcpSkyLockstakeGetRewardInputSchema: z.ZodObject<{} & {
774
+ [x: string]: z.ZodTypeAny;
775
+ }, "strip", z.ZodTypeAny, {
776
+ [x: string]: any;
777
+ }, {
778
+ [x: string]: any;
779
+ }>;
780
+ declare const mcpSkySusdsDepositInputSchema: z.ZodObject<{} & {
781
+ [x: string]: z.ZodTypeAny;
782
+ }, "strip", z.ZodTypeAny, {
783
+ [x: string]: any;
784
+ }, {
785
+ [x: string]: any;
786
+ }>;
787
+ declare const mcpSkySusdsRedeemInputSchema: z.ZodObject<{} & {
788
+ [x: string]: z.ZodTypeAny;
789
+ }, "strip", z.ZodTypeAny, {
790
+ [x: string]: any;
791
+ }, {
792
+ [x: string]: any;
793
+ }>;
794
+ declare const mcpAaveV4DepositInputSchema: z.ZodObject<{} & {
795
+ [x: string]: z.ZodTypeAny;
796
+ }, "strip", z.ZodTypeAny, {
797
+ [x: string]: any;
798
+ }, {
799
+ [x: string]: any;
800
+ }>;
801
+ declare const mcpAaveV4WithdrawInputSchema: z.ZodObject<{} & {
802
+ [x: string]: z.ZodTypeAny;
803
+ }, "strip", z.ZodTypeAny, {
804
+ [x: string]: any;
805
+ }, {
806
+ [x: string]: any;
807
+ }>;
808
+ declare const mcpAaveV4BorrowInputSchema: z.ZodObject<{} & {
809
+ [x: string]: z.ZodTypeAny;
810
+ }, "strip", z.ZodTypeAny, {
811
+ [x: string]: any;
812
+ }, {
813
+ [x: string]: any;
814
+ }>;
815
+ declare const mcpAaveV4RepayInputSchema: z.ZodObject<{} & {
816
+ [x: string]: z.ZodTypeAny;
817
+ }, "strip", z.ZodTypeAny, {
818
+ [x: string]: any;
819
+ }, {
820
+ [x: string]: any;
821
+ }>;
822
+ declare const mcpEulerV2IsolatedLendInputSchema: z.ZodObject<{} & {
823
+ [x: string]: z.ZodTypeAny;
824
+ }, "strip", z.ZodTypeAny, {
825
+ [x: string]: any;
826
+ }, {
827
+ [x: string]: any;
828
+ }>;
829
+ declare const mcpEulerV2IsolatedBorrowInputSchema: z.ZodObject<{} & {
830
+ [x: string]: z.ZodTypeAny;
831
+ }, "strip", z.ZodTypeAny, {
832
+ [x: string]: any;
833
+ }, {
834
+ [x: string]: any;
835
+ }>;
836
+ declare const mcpEulerV2VaultWithdrawInputSchema: z.ZodObject<{} & {
837
+ [x: string]: z.ZodTypeAny;
838
+ }, "strip", z.ZodTypeAny, {
839
+ [x: string]: any;
840
+ }, {
841
+ [x: string]: any;
842
+ }>;
843
+ declare const mcpEulerV2BorrowRepayInputSchema: z.ZodObject<{} & {
844
+ [x: string]: z.ZodTypeAny;
845
+ }, "strip", z.ZodTypeAny, {
846
+ [x: string]: any;
847
+ }, {
848
+ [x: string]: any;
849
+ }>;
850
+ declare const mcpEulerV2CollateralDepositInputSchema: z.ZodObject<{} & {
851
+ [x: string]: z.ZodTypeAny;
852
+ }, "strip", z.ZodTypeAny, {
853
+ [x: string]: any;
854
+ }, {
855
+ [x: string]: any;
856
+ }>;
857
+ declare const mcpEulerV2CollateralWithdrawInputSchema: z.ZodObject<{} & {
858
+ [x: string]: z.ZodTypeAny;
859
+ }, "strip", z.ZodTypeAny, {
860
+ [x: string]: any;
861
+ }, {
862
+ [x: string]: any;
863
+ }>;
864
+ type McpLidoSubmitInput = z.infer<typeof mcpLidoSubmitInputSchema>;
865
+ type McpEthenaStakeInput = z.infer<typeof mcpEthenaStakeInputSchema>;
866
+ type McpMapleDepositInput = z.infer<typeof mcpMapleDepositInputSchema>;
867
+ type McpSkyLockstakeStakeInput = z.infer<typeof mcpSkyLockstakeStakeInputSchema>;
868
+ type McpAaveV4DepositInput = z.infer<typeof mcpAaveV4DepositInputSchema>;
869
+ type McpEulerV2IsolatedLendInput = z.infer<typeof mcpEulerV2IsolatedLendInputSchema>;
870
+
135
871
  /** Machine-readable catalog of protocol actions grouped by chain category. */
136
872
  declare function getAgentCatalog(): {
137
873
  protocols: readonly ProtocolModule[];
@@ -142,9 +878,15 @@ declare function getAgentCatalog(): {
142
878
  };
143
879
  uniswapV4: ProtocolModule;
144
880
  curveDao: ProtocolModule;
881
+ lido: ProtocolModule;
882
+ ethena: ProtocolModule;
883
+ maple: ProtocolModule;
884
+ sky: ProtocolModule;
885
+ aaveV4: ProtocolModule;
886
+ eulerV2: ProtocolModule;
145
887
  /** Prefer getAgentCatalogForMcp() or getMcpToolDefinitions() for MCP servers. */
146
888
  mcp: {
147
- tools: McpToolDefinition[];
889
+ tools: readonly McpToolDefinition[];
148
890
  protocols: readonly ProtocolModule[];
149
891
  commonParams: Record<string, ParamDoc>;
150
892
  multisignOutput: {
@@ -185,6 +927,8 @@ declare function getAgentCatalog(): {
185
927
  readonly fetchManagementNonce: "GET nonce for Ed25519 or Ethereum management key.";
186
928
  };
187
929
  };
930
+ inputSchemas: Record<string, zod.ZodType<any, zod.ZodTypeDef, any>>;
931
+ outputSchemas: Record<string, zod.ZodType<any, zod.ZodTypeDef, any>>;
188
932
  workflow: {
189
933
  evmSwapTypical: string[];
190
934
  managementPostTypical: string[];
@@ -192,4 +936,4 @@ declare function getAgentCatalog(): {
192
936
  };
193
937
  };
194
938
 
195
- export { EVM_COMMON_PARAM_DOCS, MANAGEMENT_SIG_DOC, MCP_TOOL_DEFINITIONS, MULTISIGN_OUTPUT_DOC, getAgentCatalog, getAgentCatalogForMcp, getMcpToolByName, getMcpToolDefinitions };
939
+ export { type ChainDetailMcpInput, EVM_COMMON_PARAM_DOCS, type EvmMultisignCommonInput, type KeyGenMcpInput, MANAGEMENT_SIG_DOC, MCP_TOOL_DEFINITIONS, MCP_TOOL_INPUT_SCHEMAS, MCP_TOOL_OUTPUT_SCHEMAS, MULTISIGN_OUTPUT_DOC, type McpAaveV4DepositInput, type McpCurveDaoBuildSwapMultisignInput, type McpEthenaStakeInput, type McpEulerV2IsolatedLendInput, type McpJsonSchema, type McpLidoSubmitInput, type McpMapleDepositInput, type McpSchemaProperty, type McpSkyLockstakeStakeInput, type McpToolDefinition, type McpToolHandler, type McpToolInputMap, type McpToolName, type McpToolOutputMap, type McpUniswapV4BuildSwapMultisignInput, type McpUniswapV4CreateSwapInput, type McpUniswapV4CreateSwapOutput, type McpUniswapV4QuoteInput, type McpUniswapV4QuoteOutput, type MultisignOutput, chainDetailSchema, evmAddressSchema, evmMultisignCommonInputSchema, getAgentCatalog, getAgentCatalogForMcp, getMcpToolByName, getMcpToolDefinitions, getMcpToolInputSchema, getMcpToolOutputSchema, jsonObjectSchema, keyGenSchema, mcpAaveV4BorrowInputSchema, mcpAaveV4DepositInputSchema, mcpAaveV4RepayInputSchema, mcpAaveV4WithdrawInputSchema, mcpCurveDaoBuildSwapMultisignInputSchema, mcpEthenaClaimInputSchema, mcpEthenaCooldownInputSchema, mcpEthenaRedeemInputSchema, mcpEthenaStakeInputSchema, mcpEulerV2BorrowRepayInputSchema, mcpEulerV2CollateralDepositInputSchema, mcpEulerV2CollateralWithdrawInputSchema, mcpEulerV2IsolatedBorrowInputSchema, mcpEulerV2IsolatedLendInputSchema, mcpEulerV2VaultWithdrawInputSchema, mcpLidoClaimWithdrawalInputSchema, mcpLidoRequestWithdrawalsInputSchema, mcpLidoSubmitInputSchema, mcpLidoUnwrapWstEthInputSchema, mcpLidoWrapStEthInputSchema, mcpMapleDepositInputSchema, mcpMapleRequestRedeemInputSchema, mcpMultisignInput, multisignOutputSchema as mcpMultisignOutputSchema, mcpSkyLockstakeCloseInputSchema, mcpSkyLockstakeDrawInputSchema, mcpSkyLockstakeGetRewardInputSchema, mcpSkyLockstakeStakeInputSchema, mcpSkyLockstakeWipeInputSchema, mcpSkySusdsDepositInputSchema, mcpSkySusdsRedeemInputSchema, mcpUniswapV4BuildSwapMultisignInputSchema, mcpUniswapV4CreateSwapInputSchema, mcpUniswapV4CreateSwapOutputSchema, mcpUniswapV4QuoteInputSchema, mcpUniswapV4QuoteOutputSchema, multisignOutputSchema, parseMcpToolInput, parseMcpToolOutput, uniswapQuoteTradeTypeSchema, zodSchemaToMcpJsonSchema };