@continuumdao/ctm-mpc-defi 0.2.33 → 0.2.35

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 (83) hide show
  1. package/dist/agent/catalog.cjs +712 -44
  2. package/dist/agent/catalog.cjs.map +1 -1
  3. package/dist/agent/catalog.d.ts +1630 -244
  4. package/dist/agent/catalog.js +678 -45
  5. package/dist/agent/catalog.js.map +1 -1
  6. package/dist/agent/skills/aave-v4/SKILL.md +19 -4
  7. package/dist/agent/skills/aerodrome/SKILL.md +2 -2
  8. package/dist/agent/skills/compound-v3/SKILL.md +2 -2
  9. package/dist/agent/skills/curve-dao/SKILL.md +14 -0
  10. package/dist/agent/skills/ethena/SKILL.md +3 -1
  11. package/dist/agent/skills/euler-v2/SKILL.md +1 -1
  12. package/dist/agent/skills/gmx/SKILL.md +1 -1
  13. package/dist/agent/skills/hyperliquid/SKILL.md +7 -5
  14. package/dist/agent/skills/lido/SKILL.md +3 -0
  15. package/dist/agent/skills/maple-syrup/SKILL.md +35 -3
  16. package/dist/agent/skills/morpho/SKILL.md +1 -1
  17. package/dist/agent/skills/sky/SKILL.md +2 -0
  18. package/dist/agent/skills/yield-compare/SKILL.md +78 -0
  19. package/dist/index.cjs +129 -29
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.js +129 -27
  22. package/dist/index.js.map +1 -1
  23. package/dist/protocols/evm/aave-v4/index.cjs +170 -0
  24. package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
  25. package/dist/protocols/evm/aave-v4/index.d.ts +59 -1
  26. package/dist/protocols/evm/aave-v4/index.js +164 -1
  27. package/dist/protocols/evm/aave-v4/index.js.map +1 -1
  28. package/dist/protocols/evm/aerodrome/index.cjs +1308 -901
  29. package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
  30. package/dist/protocols/evm/aerodrome/index.d.ts +69 -2
  31. package/dist/protocols/evm/aerodrome/index.js +1217 -807
  32. package/dist/protocols/evm/aerodrome/index.js.map +1 -1
  33. package/dist/protocols/evm/compound-v3/index.cjs +82 -6
  34. package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
  35. package/dist/protocols/evm/compound-v3/index.d.ts +89 -1
  36. package/dist/protocols/evm/compound-v3/index.js +80 -7
  37. package/dist/protocols/evm/compound-v3/index.js.map +1 -1
  38. package/dist/protocols/evm/curve-dao/index.cjs +447 -18
  39. package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
  40. package/dist/protocols/evm/curve-dao/index.d.ts +108 -1
  41. package/dist/protocols/evm/curve-dao/index.js +440 -19
  42. package/dist/protocols/evm/curve-dao/index.js.map +1 -1
  43. package/dist/protocols/evm/ethena/index.cjs +89 -0
  44. package/dist/protocols/evm/ethena/index.cjs.map +1 -1
  45. package/dist/protocols/evm/ethena/index.d.ts +17 -1
  46. package/dist/protocols/evm/ethena/index.js +89 -2
  47. package/dist/protocols/evm/ethena/index.js.map +1 -1
  48. package/dist/protocols/evm/euler-v2/index.cjs +41 -6
  49. package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
  50. package/dist/protocols/evm/euler-v2/index.d.ts +21 -1
  51. package/dist/protocols/evm/euler-v2/index.js +41 -7
  52. package/dist/protocols/evm/euler-v2/index.js.map +1 -1
  53. package/dist/protocols/evm/gmx/index.cjs +83 -1
  54. package/dist/protocols/evm/gmx/index.cjs.map +1 -1
  55. package/dist/protocols/evm/gmx/index.d.ts +22 -2
  56. package/dist/protocols/evm/gmx/index.js +80 -2
  57. package/dist/protocols/evm/gmx/index.js.map +1 -1
  58. package/dist/protocols/evm/hyperliquid/index.cjs +67 -11
  59. package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
  60. package/dist/protocols/evm/hyperliquid/index.d.ts +39 -2
  61. package/dist/protocols/evm/hyperliquid/index.js +64 -12
  62. package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
  63. package/dist/protocols/evm/lido/index.cjs +13 -0
  64. package/dist/protocols/evm/lido/index.cjs.map +1 -1
  65. package/dist/protocols/evm/lido/index.d.ts +9 -1
  66. package/dist/protocols/evm/lido/index.js +13 -1
  67. package/dist/protocols/evm/lido/index.js.map +1 -1
  68. package/dist/protocols/evm/maple/index.cjs +129 -1
  69. package/dist/protocols/evm/maple/index.cjs.map +1 -1
  70. package/dist/protocols/evm/maple/index.d.ts +45 -1
  71. package/dist/protocols/evm/maple/index.js +124 -3
  72. package/dist/protocols/evm/maple/index.js.map +1 -1
  73. package/dist/protocols/evm/morpho/index.cjs +34 -7
  74. package/dist/protocols/evm/morpho/index.cjs.map +1 -1
  75. package/dist/protocols/evm/morpho/index.d.ts +23 -1
  76. package/dist/protocols/evm/morpho/index.js +34 -8
  77. package/dist/protocols/evm/morpho/index.js.map +1 -1
  78. package/dist/protocols/evm/sky/index.cjs +52 -0
  79. package/dist/protocols/evm/sky/index.cjs.map +1 -1
  80. package/dist/protocols/evm/sky/index.d.ts +16 -1
  81. package/dist/protocols/evm/sky/index.js +50 -1
  82. package/dist/protocols/evm/sky/index.js.map +1 -1
  83. package/package.json +1 -1
@@ -376,6 +376,98 @@ var init_midnightApi = __esm({
376
376
  init_midnightConstants();
377
377
  }
378
378
  });
379
+ function isAerodromeChainSupported(chainId) {
380
+ const n = typeof chainId === "number" ? chainId : Number.parseInt(String(chainId), 10);
381
+ return n === AERODROME_CHAIN_ID;
382
+ }
383
+ var AERODROME_PROTOCOL_ID, AERODROME_CHAIN_ID, AERODROME_WETH_BASE, AERODROME_USDC_BASE;
384
+ var init_support2 = __esm({
385
+ "src/protocols/evm/aerodrome/support.ts"() {
386
+ AERODROME_PROTOCOL_ID = "aerodrome";
387
+ AERODROME_CHAIN_ID = 8453;
388
+ AERODROME_WETH_BASE = "0x4200000000000000000000000000000000000006";
389
+ AERODROME_USDC_BASE = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
390
+ }
391
+ });
392
+ var AERODROME_BASE_ADDRESSES_FALLBACK;
393
+ var init_addresses = __esm({
394
+ "src/protocols/evm/aerodrome/addresses.ts"() {
395
+ init_support2();
396
+ AERODROME_BASE_ADDRESSES_FALLBACK = {
397
+ chainId: AERODROME_CHAIN_ID,
398
+ aero: "0x940181a94A35A4569E4529A3CDfB74e38FD98631",
399
+ router: "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43",
400
+ poolFactory: "0x420DD381b31aEf6683db6B902084cB0FFECe40Da",
401
+ factoryRegistry: "0x5C3F18F06CC09CA1910767A34a20F771039E37C0",
402
+ voter: "0x16613524e02ad97eDfeF371bC883F2F5d6C480A5",
403
+ votingEscrow: "0xeBf418Fe2512e7E6bd9b87a8F0f294aCDC67e6B4",
404
+ rewardsDistributor: "0x227f65131A261548b057215bB1D5Ab2997964C7d",
405
+ mixedQuoter: "0x0A5aA5D3a4d28014f967Bf0f29EAA3FF9807D5c6",
406
+ /** MixedRouteQuoterV3 — v2 + all three CL factories (bitmask path encoding). */
407
+ mixedQuoterV3: "0xCd2A7D98e82D6107eac1828ce8DeAA6acB65b555",
408
+ nfpm: "0x827922686190790b37229fd06084350E74485b72",
409
+ /** Oldest Slipstream CL factory (Gauges V1). Path bit 1<<20. */
410
+ clFactory: "0x5e7BB104d84c7CB9B682AaC2F3d509f5F406809A",
411
+ /** Slipstream CL factory 2 (gauge caps). Raw tickSpacing in MixedQuoterV3. */
412
+ clFactory2: "0xaDe65c38CD4849aDBA595a4323a8C7DdfE89716a",
413
+ /** Newest Slipstream CL factory (Gauges V3) — Coinbase B20 stock pools. Path bit 1<<19. */
414
+ clFactory3: "0xf8f2eB4940CFE7d13603DDDD87f123820Fc061Ef",
415
+ universalRouter: "0x6Cb442acF35158D5eDa88fe602221b67B400Be3E",
416
+ swapRouter: "0xBE6D8f0d05cC4be24d5167a3eF062215bE6D18a5",
417
+ swapRouter2: "0xcbBb8035cAc7D4B3Ca7aBb74cF7BdF900215Ce0D",
418
+ swapRouter3: "0x698Cb2b6dd822994581fEa6eA4Fc755d1363A92F",
419
+ pricesOracle: "0xee717411f6E44F9feE011835C8E6FAaC5dEfF166",
420
+ slipstreamHelper: "0x0AD09A66af0154a84e86F761313d02d0abB6edd5",
421
+ lpSugar: "0x69dD9db6d8f8E7d83887A704f447b1a584b599A1",
422
+ sugarSlipstreamHelper: "0x9c62ab10577fB3C20A22E231b7703Ed6D456CC7a",
423
+ swapper: "0x91616a7B9CF6D23f8C17845581051EBdC4BcB916",
424
+ weth: AERODROME_WETH_BASE
425
+ };
426
+ }
427
+ });
428
+ var AERODROME_COINBASE_STOCK_TOKENS, AERODROME_COINBASE_STOCK_DECIMALS;
429
+ var init_stockTokens = __esm({
430
+ "src/protocols/evm/aerodrome/stockTokens.ts"() {
431
+ AERODROME_COINBASE_STOCK_TOKENS = [
432
+ { symbol: "AAPLc", name: "Apple Inc.", address: "0xb200000000000000000000C2e324d24d7eEcd1fb" },
433
+ { symbol: "NVDAc", name: "NVIDIA Corporation", address: "0xb20000000000000000000078ee7ce2fE4908108C" },
434
+ { symbol: "METAc", name: "Meta Platforms Inc.", address: "0xb2000000000000000000008bC8786B856E61707C" },
435
+ { symbol: "GOOGLc", name: "Alphabet Inc.", address: "0xb2000000000000000000002D0BA3164cc74f58B7" },
436
+ { symbol: "AMZNc", name: "Amazon.com Inc.", address: "0xb200000000000000000000d9192b6B456483C2E8" },
437
+ { symbol: "TSLAc", name: "Tesla Inc.", address: "0xb2000000000000000000001e800a7f5189430cD0" },
438
+ { symbol: "MSFTc", name: "Microsoft Corporation", address: "0xB200000000000000000000Ab99cFa739E253872B" },
439
+ { symbol: "COINc", name: "Coinbase Global Inc.", address: "0xb200000000000000000000c85a31389D71F3ecfb" },
440
+ { symbol: "MSTRc", name: "Strategy Inc.", address: "0xb2000000000000000000004884b426556b92883d" },
441
+ { symbol: "CRCLc", name: "Circle Internet Group Inc.", address: "0xB20000000000000000000019f6E7C675b73C2e4D" },
442
+ { symbol: "INTCc", name: "Intel Corporation", address: "0xB2000000000000000000004AFF16039bA04bdFBc" },
443
+ { symbol: "SNDKc", name: "Sandisk Corporation", address: "0xb200000000000000000000397293Cb8cda9a10c5" },
444
+ { symbol: "SPCXc", name: "Space Exploration Technologies Corp.", address: "0xb2000000000000000000007b9fcbd005511aCBd5" }
445
+ ];
446
+ AERODROME_COINBASE_STOCK_DECIMALS = 8;
447
+ }
448
+ });
449
+ var init_discover = __esm({
450
+ "src/protocols/evm/aerodrome/discover.ts"() {
451
+ }
452
+ });
453
+ var init_yields = __esm({
454
+ "src/protocols/evm/aerodrome/yields.ts"() {
455
+ init_addresses();
456
+ init_support2();
457
+ new Set(
458
+ [
459
+ AERODROME_WETH_BASE,
460
+ AERODROME_USDC_BASE,
461
+ AERODROME_BASE_ADDRESSES_FALLBACK.aero,
462
+ "0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb",
463
+ "0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2",
464
+ "0x5d3a1Ff2b6BAb83b63cd9AD0787074081a52ef34",
465
+ "0x2Ae3F1Ec7F1F5012CFEab0185bfc7aa3cf0DEc22",
466
+ "0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452"
467
+ ].map((a) => a.toLowerCase())
468
+ );
469
+ }
470
+ });
379
471
 
380
472
  // src/core/registry.ts
381
473
  var modules = [];
@@ -743,6 +835,22 @@ var curveDaoProtocolModule = {
743
835
  amountHuman: { type: "string", required: true, description: "Human-readable input amount" },
744
836
  slippagePercent: { type: "number", required: true, description: "Slippage percent (0\u2013100 exclusive)" }
745
837
  }
838
+ },
839
+ {
840
+ id: "curve-dao.add-liquidity",
841
+ protocolId: CURVE_DAO_PROTOCOL_ID,
842
+ chainCategory: "evm",
843
+ description: "Add liquidity to an important Curve pool (optional gauge stake)",
844
+ commonParams: ["keyGen", "purposeText", "useCustomGas"],
845
+ params: {}
846
+ },
847
+ {
848
+ id: "curve-dao.remove-liquidity",
849
+ protocolId: CURVE_DAO_PROTOCOL_ID,
850
+ chainCategory: "evm",
851
+ description: "Remove liquidity from an important Curve pool",
852
+ commonParams: ["keyGen", "purposeText", "useCustomGas"],
853
+ params: {}
746
854
  }
747
855
  ]
748
856
  };
@@ -1723,6 +1831,54 @@ var mcpCurveDaoBuildSwapMultisignInputSchema = withMultisignKeySourceRefine(
1723
1831
  })
1724
1832
  )
1725
1833
  );
1834
+ var mcpCurveDaoFetchImportantPoolsInputSchema = z.object({
1835
+ chainId: agentEvmChainIdSchema,
1836
+ query: z.string().trim().min(1).optional().describe("Optional shrink filter on name, address, or coin symbol.")
1837
+ });
1838
+ var mcpCurveDaoFetchImportantPoolsOutputSchema = jsonObjectSchema.describe(
1839
+ "{ chainId, pools[] (id, address, name, coins, tvlUsd, baseApy, gaugeCrvApy, gaugeAddress), notes }. Hard cap ~100. Not a factory dump."
1840
+ );
1841
+ var mcpCurveDaoFetchLpYieldsInputSchema = mcpCurveDaoFetchImportantPoolsInputSchema.extend({
1842
+ pool: z.string().trim().min(1).optional().describe("Optional pool address or id to shrink the set.")
1843
+ });
1844
+ var mcpCurveDaoFetchLpYieldsOutputSchema = mcpCurveDaoFetchImportantPoolsOutputSchema;
1845
+ var mcpCurveDaoQuoteAddLiquidityInputSchema = z.object({
1846
+ chainId: agentEvmChainIdSchema,
1847
+ rpcUrl: z.string().min(1).optional(),
1848
+ pool: z.string().min(1).describe("Pool address or id from ctm_curve_dao_fetch_important_pools"),
1849
+ amountsHuman: z.array(z.string().min(1)).min(1).describe("Human amounts per underlying coin, same order as coins[]"),
1850
+ stakeInGauge: z.boolean().optional().describe("If true, quote assumes LP is staked for gauge_crv_apy")
1851
+ });
1852
+ var mcpCurveDaoQuoteAddLiquidityOutputSchema = jsonObjectSchema;
1853
+ var mcpCurveDaoQuoteRemoveLiquidityInputSchema = z.object({
1854
+ chainId: agentEvmChainIdSchema,
1855
+ rpcUrl: z.string().min(1).optional(),
1856
+ pool: z.string().min(1),
1857
+ lpAmountHuman: z.string().min(1)
1858
+ });
1859
+ var mcpCurveDaoQuoteRemoveLiquidityOutputSchema = jsonObjectSchema;
1860
+ var mcpCurveDaoBuildAddLiquidityMultisignInputSchema = withMultisignKeySourceRefine(
1861
+ evmMultisignCommonInputSchema.extend({
1862
+ pool: z.string().min(1),
1863
+ amountsHuman: z.array(z.string()).min(1),
1864
+ slippagePercent: z.number().gt(0).lt(100),
1865
+ stakeInGauge: z.boolean().optional()
1866
+ })
1867
+ );
1868
+ var mcpCurveDaoBuildRemoveLiquidityMultisignInputSchema = withMultisignKeySourceRefine(
1869
+ evmMultisignCommonInputSchema.extend({
1870
+ pool: z.string().min(1),
1871
+ lpAmountHuman: z.string().min(1),
1872
+ slippagePercent: z.number().gt(0).lt(100)
1873
+ })
1874
+ );
1875
+ var mcpCurveDaoBuildGaugeDepositMultisignInputSchema = withMultisignKeySourceRefine(
1876
+ evmMultisignCommonInputSchema.extend({
1877
+ pool: z.string().min(1),
1878
+ lpAmountHuman: z.string().min(1),
1879
+ withdraw: z.boolean().optional().describe("If true, withdraw LP from the gauge instead of deposit")
1880
+ })
1881
+ );
1726
1882
  var chain8453 = agentEvmChainIdSchema.describe("Must be 8453 (Base). Aerodrome is Base-only.");
1727
1883
  var rpcUrlOptional = z.string().min(1).optional().describe("JSON-RPC URL; continuum-mcp-server injects from chain registry \u2014 do not pass a public RPC URL");
1728
1884
  var mcpAerodromeDiscoverPoolsInputSchema = z.object({
@@ -1737,10 +1893,23 @@ var mcpAerodromeDiscoverPoolsOutputSchema = jsonObjectSchema.describe(
1737
1893
  var mcpAerodromeFetchPoolsInputSchema = z.object({
1738
1894
  chainId: chain8453,
1739
1895
  rpcUrl: rpcUrlOptional,
1740
- limit: z.number().int().positive().max(200).optional(),
1896
+ query: z.string().trim().min(1).optional().describe("Optional shrink filter. Does not expand beyond the ~100 important pools."),
1897
+ limit: z.number().int().positive().max(100).optional(),
1741
1898
  offset: z.number().int().min(0).optional()
1742
1899
  });
1743
- var mcpAerodromeFetchPoolsOutputSchema = jsonObjectSchema.describe("{ chainId, pools[] }");
1900
+ var mcpAerodromeFetchPoolsOutputSchema = jsonObjectSchema.describe(
1901
+ "{ chainId, pools[], notes }. At most ~100 important Base pairs \u2014 not an LpSugar.all dump."
1902
+ );
1903
+ var mcpAerodromeFetchLpYieldsInputSchema = z.object({
1904
+ chainId: chain8453,
1905
+ rpcUrl: rpcUrlOptional,
1906
+ query: z.string().trim().min(1).optional()
1907
+ });
1908
+ var mcpAerodromeFetchLpYieldsOutputSchema = jsonObjectSchema.describe(
1909
+ "{ chainId, pools[] (lp, feeApr, emissionsApr, totalApr, gauge, kind, tvlUsd), notes }"
1910
+ );
1911
+ var mcpAerodromeFetchStockLpYieldsInputSchema = mcpAerodromeFetchLpYieldsInputSchema;
1912
+ var mcpAerodromeFetchStockLpYieldsOutputSchema = mcpAerodromeFetchLpYieldsOutputSchema;
1744
1913
  var mcpAerodromeFetchPositionsInputSchema = z.object({
1745
1914
  chainId: chain8453,
1746
1915
  rpcUrl: rpcUrlOptional,
@@ -2018,7 +2187,13 @@ var mcpMorphoFetchEarnVaultsOutputSchema = z.object({
2018
2187
  managementFee: z.string().nullable(),
2019
2188
  totalDepositsUsd: z.string(),
2020
2189
  liquidityUsd: z.string(),
2021
- exposure: z.array(morphoExposureRowSchema)
2190
+ exposure: z.array(morphoExposureRowSchema),
2191
+ rewards: z.array(
2192
+ z.object({
2193
+ symbol: z.string(),
2194
+ supplyAprLabel: z.string()
2195
+ })
2196
+ ).describe("Extra vault incentive APR from Morpho GraphQL allRewards (variable).")
2022
2197
  })
2023
2198
  )
2024
2199
  });
@@ -2042,7 +2217,14 @@ var mcpMorphoFetchBlueMarketsOutputSchema = z.object({
2042
2217
  loanTokenSymbol: z.string(),
2043
2218
  loanTokenDecimals: z.number().int(),
2044
2219
  borrowApyLabel: z.string(),
2045
- supplyApyLabel: z.string()
2220
+ supplyApyLabel: z.string(),
2221
+ netSupplyApyLabel: z.string().describe("Blue net supply APY including incentives when Morpho publishes it."),
2222
+ rewards: z.array(
2223
+ z.object({
2224
+ symbol: z.string(),
2225
+ supplyAprLabel: z.string()
2226
+ })
2227
+ )
2046
2228
  })
2047
2229
  )
2048
2230
  });
@@ -3088,6 +3270,70 @@ var mcpContinuumDaoForumSignInInputSchema = mcpMultisignInput({
3088
3270
  username: z.string().min(2).max(16).optional().describe("Required on first login when there is no node key (2\u201316 letters, numbers, . _ -)."),
3089
3271
  forumUrl: z.string().optional()
3090
3272
  });
3273
+ var mcpMapleSyrupMarketSummarySchema = z.object({
3274
+ chainId: z.number(),
3275
+ name: z.string(),
3276
+ pool: z.string().describe("Copy as pool for ctm_maple_build_*_multisign"),
3277
+ syrupRouter: z.string().describe("Copy as syrupRouter for ctm_maple_build_deposit_multisign"),
3278
+ asset: z.string().describe("Copy as asset for ctm_maple_build_deposit_multisign"),
3279
+ assetSymbol: z.string(),
3280
+ assetDecimals: z.number(),
3281
+ weeklyApyPercent: z.string(),
3282
+ monthlyApyPercent: z.string(),
3283
+ totalAssets: z.string()
3284
+ });
3285
+ var mcpMapleFetchMarketsInputSchema = z.object({
3286
+ chainId: agentEvmChainIdSchema,
3287
+ underlying: z.string().trim().min(1).optional().describe("Optional filter: ERC-20 address or ticker (USDT, USDC). Omit to list all Syrup pools.")
3288
+ });
3289
+ var mcpMapleFetchMarketsOutputSchema = z.object({
3290
+ chainId: z.number(),
3291
+ markets: z.array(mcpMapleSyrupMarketSummarySchema),
3292
+ notes: z.string()
3293
+ });
3294
+ var mcpMapleFetchMarketInputSchema = z.object({
3295
+ chainId: agentEvmChainIdSchema,
3296
+ pool: evmAddressSchema.optional().describe("Syrup PoolV2 / share token from fetch_markets."),
3297
+ underlying: z.string().trim().min(1).optional().describe("Deposit asset address or ticker (USDC, USDT, USDG).")
3298
+ });
3299
+ var mcpMapleFetchMarketOutputSchema = mcpMapleFetchMarketsOutputSchema;
3300
+ var mcpAaveV4UiMarketIdSchema = z.enum(["main", "core", "bluechip"]).optional().describe("UI market segment: main (Plus), core, or bluechip (Prime). Omit to list all hubs.");
3301
+ var mcpAaveV4MarketSummarySchema = z.object({
3302
+ chainId: z.number(),
3303
+ hubName: z.string(),
3304
+ marketId: z.enum(["main", "core", "bluechip"]),
3305
+ hubAddress: z.string(),
3306
+ symbol: z.string(),
3307
+ name: z.string(),
3308
+ underlying: z.string().describe("Copy as underlying for ctm_aave_v4_build_*_multisign"),
3309
+ spoke: z.string().nullable(),
3310
+ canSupply: z.boolean(),
3311
+ canBorrow: z.boolean(),
3312
+ canUseAsCollateral: z.boolean(),
3313
+ supplyApyPercent: z.string(),
3314
+ borrowApyPercent: z.string(),
3315
+ supplied: z.string(),
3316
+ borrowed: z.string(),
3317
+ availableLiquidity: z.string(),
3318
+ utilizationPercent: z.string().nullable(),
3319
+ collateralFactorPercent: z.string()
3320
+ });
3321
+ var mcpAaveV4FetchMarketsInputSchema = z.object({
3322
+ chainId: agentEvmChainIdSchema,
3323
+ marketId: mcpAaveV4UiMarketIdSchema,
3324
+ underlying: z.string().trim().min(1).optional().describe("Optional filter: ERC-20 address or ticker (USDT, USDC). Omit to list all reserves.")
3325
+ });
3326
+ var mcpAaveV4FetchMarketsOutputSchema = z.object({
3327
+ chainId: z.number(),
3328
+ markets: z.array(mcpAaveV4MarketSummarySchema),
3329
+ notes: z.string()
3330
+ });
3331
+ var mcpAaveV4FetchMarketInputSchema = z.object({
3332
+ chainId: agentEvmChainIdSchema,
3333
+ underlying: z.string().trim().min(1).describe("Reserve underlying address or ticker (e.g. USDT). Prefer fetch_markets when listing rates."),
3334
+ marketId: mcpAaveV4UiMarketIdSchema
3335
+ });
3336
+ var mcpAaveV4FetchMarketOutputSchema = mcpAaveV4FetchMarketsOutputSchema;
3091
3337
  var mcpEulerV2FetchLendVaultsInputSchema = z.object({
3092
3338
  chainId: agentEvmChainIdSchema,
3093
3339
  underlyingAddress: evmAddressSchema.describe(
@@ -3110,6 +3356,64 @@ var mcpEulerV2FetchLendVaultsOutputSchema = z.object({
3110
3356
  })
3111
3357
  )
3112
3358
  });
3359
+ var mcpEulerV2FetchEarnVaultsInputSchema = z.object({
3360
+ chainId: agentEvmChainIdSchema,
3361
+ underlyingAddress: evmAddressSchema.describe(
3362
+ "Underlying asset address from get_defi_protocol_supported_tokens."
3363
+ ),
3364
+ limit: agentCoercedOptionalIntSchema(z.number().int().min(1).max(100)).describe("Max vault rows (default 30).")
3365
+ });
3366
+ var mcpEulerV2FetchEarnVaultsOutputSchema = z.object({
3367
+ vaults: z.array(
3368
+ z.object({
3369
+ evaultAddress: z.string().describe("Copy as vault for earn deposit multisign"),
3370
+ vaultName: z.string(),
3371
+ curatorDisplayName: z.string(),
3372
+ supplyApyPercentLabel: z.string(),
3373
+ totalAssetsHumanLabel: z.string(),
3374
+ availableLiquidityHumanLabel: z.string(),
3375
+ performanceFeePercentLabel: z.string(),
3376
+ underlyingAddress: z.string(),
3377
+ strategyCount: z.number().int()
3378
+ })
3379
+ )
3380
+ });
3381
+ var mcpLidoFetchStethAprInputSchema = z.object({}).strict();
3382
+ var mcpLidoFetchStethAprOutputSchema = z.object({
3383
+ aprPercent: z.string(),
3384
+ apr: z.number().nullable(),
3385
+ asset: z.string(),
3386
+ source: z.string(),
3387
+ notes: z.string()
3388
+ });
3389
+ var mcpSkyFetchSusdsRateInputSchema = z.object({
3390
+ rpcUrl: z.string().min(1).optional().describe("Server-filled from chain registry. Agents should omit.")
3391
+ }).strict();
3392
+ var mcpSkyFetchSusdsRateOutputSchema = z.object({
3393
+ chainId: z.number(),
3394
+ vault: z.string(),
3395
+ asset: z.string(),
3396
+ assetSymbol: z.string(),
3397
+ apyPercent: z.string(),
3398
+ apy: z.number().nullable(),
3399
+ usdsPerSusdsShare: z.string(),
3400
+ notes: z.string()
3401
+ });
3402
+ var mcpEthenaFetchSusdeApyInputSchema = z.object({
3403
+ rpcUrl: z.string().min(1).optional().describe("Server-filled from chain registry. Agents should omit.")
3404
+ }).strict();
3405
+ var mcpEthenaFetchSusdeApyOutputSchema = z.object({
3406
+ chainId: z.number(),
3407
+ product: z.string(),
3408
+ asset: z.string(),
3409
+ assetSymbol: z.string(),
3410
+ share: z.string(),
3411
+ apyPercent: z.string(),
3412
+ apy: z.number().nullable(),
3413
+ usdePerSusde: z.string(),
3414
+ cooldownDurationSec: z.number().nullable(),
3415
+ notes: z.string()
3416
+ });
3113
3417
  var mcpCompoundV3FetchMarketsInputSchema = z.object({
3114
3418
  chainId: agentEvmChainIdSchema,
3115
3419
  rpcUrl: z.string().min(1).optional().describe("Server-filled from chain registry. Agents should omit.")
@@ -3134,6 +3438,8 @@ var mcpCompoundV3MarketSummarySchema = z.object({
3134
3438
  utilization: z.number().nullable(),
3135
3439
  supplyAprPercent: z.string().nullable(),
3136
3440
  borrowAprPercent: z.string().nullable(),
3441
+ supplyRewardAprPercent: z.string().nullable().describe("Forward COMP (or reward-token) supply incentive APR. Extra and variable; null if unpriced."),
3442
+ borrowRewardAprPercent: z.string().nullable().describe("Forward COMP (or reward-token) borrow incentive APR. Extra and variable; null if unpriced."),
3137
3443
  assets: z.array(mcpCompoundV3MarketAssetSchema)
3138
3444
  });
3139
3445
  var mcpCompoundV3FetchMarketsOutputSchema = z.object({
@@ -3378,7 +3684,15 @@ var mcpGmxFetchMarketPricesOutputSchema = z.object({
3378
3684
  indexMarkUsd: z.string().nullable(),
3379
3685
  collateralUsd: z.string().nullable(),
3380
3686
  indexPerCollateral: z.string().nullable(),
3381
- fetchedAtMs: z.number()
3687
+ fetchedAtMs: z.number(),
3688
+ fundingFactorPerSecond: z.string().nullable(),
3689
+ longsPayShorts: z.boolean().nullable(),
3690
+ fundingHourlyPercentLabel: z.string().nullable(),
3691
+ fundingAprPercentLabel: z.string().nullable(),
3692
+ borrowingFactorPerSecondForLongs: z.string().nullable(),
3693
+ borrowingFactorPerSecondForShorts: z.string().nullable(),
3694
+ borrowingHourlyPercentLongLabel: z.string().nullable(),
3695
+ borrowingHourlyPercentShortLabel: z.string().nullable()
3382
3696
  });
3383
3697
  var mcpGmxFetchOhlcvInputSchema = z.object({
3384
3698
  chainId: agentEvmChainIdSchema,
@@ -3449,6 +3763,28 @@ var hyperliquidAccountSummarySchema = z.object({
3449
3763
  var mcpHyperliquidFetchMarketsInputSchema = hyperliquidFetchChainInputSchema.extend({
3450
3764
  dex: z.string().optional()
3451
3765
  });
3766
+ var mcpHyperliquidFetchStockMarketsInputSchema = hyperliquidFetchChainInputSchema;
3767
+ var mcpHyperliquidFetchStockMarketsOutputSchema = z.object({
3768
+ markets: z.array(
3769
+ z.object({
3770
+ name: z.string().describe("HIP-3 coin, e.g. xyz:AAPL"),
3771
+ asset: z.number(),
3772
+ szDecimals: z.number(),
3773
+ maxLeverage: z.number(),
3774
+ onlyIsolated: z.boolean().optional(),
3775
+ dex: z.string().optional(),
3776
+ displayName: z.string().optional(),
3777
+ category: z.string().optional(),
3778
+ keywords: z.array(z.string()).optional()
3779
+ })
3780
+ ),
3781
+ dexes: z.array(
3782
+ z.object({
3783
+ name: z.string(),
3784
+ fullName: z.string()
3785
+ })
3786
+ )
3787
+ });
3452
3788
  var mcpHyperliquidFetchMarketsOutputSchema = z.object({
3453
3789
  markets: z.array(
3454
3790
  z.object({
@@ -3553,6 +3889,7 @@ var mcpHyperliquidFetchMarketSnapshotOutputSchema = z.object({
3553
3889
  dex: z.string().nullable(),
3554
3890
  livePrice: hyperliquidLivePriceSchema,
3555
3891
  midUsd: z.string(),
3892
+ funding: z.string().nullable().describe("Official HyperCore hourly funding from metaAndAssetCtxs"),
3556
3893
  fetchedAtMs: z.number(),
3557
3894
  interval: hyperliquidOhlcvIntervalSchema,
3558
3895
  latestCandle: hyperliquidOhlcvCandleSchema.nullable(),
@@ -3609,6 +3946,10 @@ var mcpHyperliquidFetchVaultsOutputSchema = z.object({
3609
3946
  })
3610
3947
  )
3611
3948
  });
3949
+ var mcpHyperliquidFetchVaultApysInputSchema = mcpHyperliquidFetchVaultsInputSchema;
3950
+ var mcpHyperliquidFetchVaultApysOutputSchema = mcpHyperliquidFetchVaultsOutputSchema.extend({
3951
+ notes: z.string()
3952
+ });
3612
3953
  var mcpHyperliquidFetchUserVaultEquitiesInputSchema = hyperliquidFetchChainInputSchema.extend({
3613
3954
  executorAddress: evmAddressSchema
3614
3955
  });
@@ -5503,6 +5844,84 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5503
5844
  handler: { importPath: "protocols/evm/curve-dao", exportName: "buildEvmMultisignBodyCurveDaoBatch" },
5504
5845
  inputZod: mcpCurveDaoBuildSwapMultisignInputSchema
5505
5846
  }),
5847
+ defineMcpTool({
5848
+ name: "ctm_curve_dao_fetch_important_pools",
5849
+ actionId: "curve-dao.fetch-important-pools",
5850
+ protocolId: "curve-dao",
5851
+ chainCategory: "evm",
5852
+ description: "Official api.curve.fi catalog of ~100 important pools (TVL-ranked, dead/zero-TVL dropped). The only Curve list tool \u2014 do not dump factories or call fetchAllCurvePools. Optional query shrinks the set.",
5853
+ prerequisites: ["chainId"],
5854
+ followUp: ["ctm_curve_dao_fetch_lp_yields", "ctm_curve_dao_quote_add_liquidity"],
5855
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "curveDaoFetchImportantPools" },
5856
+ inputZod: mcpCurveDaoFetchImportantPoolsInputSchema,
5857
+ outputZod: mcpCurveDaoFetchImportantPoolsOutputSchema
5858
+ }),
5859
+ defineMcpTool({
5860
+ name: "ctm_curve_dao_fetch_lp_yields",
5861
+ actionId: "curve-dao.fetch-lp-yields",
5862
+ protocolId: "curve-dao",
5863
+ chainCategory: "evm",
5864
+ description: "LP yields for the same ~100 important Curve pools (baseApy + gauge_crv_apy + TVL). gauge_crv_apy requires staking LP in the gauge.",
5865
+ prerequisites: ["chainId"],
5866
+ followUp: ["ctm_curve_dao_quote_add_liquidity", "ctm_curve_dao_build_gauge_deposit_multisign"],
5867
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "curveDaoFetchLpYields" },
5868
+ inputZod: mcpCurveDaoFetchLpYieldsInputSchema,
5869
+ outputZod: mcpCurveDaoFetchLpYieldsOutputSchema
5870
+ }),
5871
+ defineMcpTool({
5872
+ name: "ctm_curve_dao_quote_add_liquidity",
5873
+ actionId: "curve-dao.quote-add-liquidity",
5874
+ protocolId: "curve-dao",
5875
+ chainCategory: "evm",
5876
+ description: "Quote Curve add_liquidity for an important pool. Copy pool + amountsHuman onto the build tool.",
5877
+ prerequisites: ["pool from ctm_curve_dao_fetch_important_pools"],
5878
+ followUp: ["ctm_curve_dao_build_add_liquidity_multisign"],
5879
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "curveDaoQuoteAddLiquidity" },
5880
+ inputZod: mcpCurveDaoQuoteAddLiquidityInputSchema,
5881
+ outputZod: mcpCurveDaoQuoteAddLiquidityOutputSchema
5882
+ }),
5883
+ defineMcpTool({
5884
+ name: "ctm_curve_dao_quote_remove_liquidity",
5885
+ actionId: "curve-dao.quote-remove-liquidity",
5886
+ protocolId: "curve-dao",
5887
+ chainCategory: "evm",
5888
+ description: "Quote balanced Curve remove_liquidity for an important pool.",
5889
+ prerequisites: ["pool from ctm_curve_dao_fetch_important_pools"],
5890
+ followUp: ["ctm_curve_dao_build_remove_liquidity_multisign"],
5891
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "curveDaoQuoteRemoveLiquidity" },
5892
+ inputZod: mcpCurveDaoQuoteRemoveLiquidityInputSchema,
5893
+ outputZod: mcpCurveDaoQuoteRemoveLiquidityOutputSchema
5894
+ }),
5895
+ defineMultisignSubmitMcpTool({
5896
+ name: "ctm_curve_dao_build_add_liquidity_multisign",
5897
+ actionId: "curve-dao.add-liquidity",
5898
+ protocolId: "curve-dao",
5899
+ chainCategory: "evm",
5900
+ description: "Create mpc-auth multiSignRequest for Curve add_liquidity (optional gauge.deposit when stakeInGauge). Pool must be from fetch_important_pools.",
5901
+ prerequisites: ["ctm_curve_dao_quote_add_liquidity"],
5902
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "buildEvmMultisignBodyCurveAddLiquidity" },
5903
+ inputZod: mcpCurveDaoBuildAddLiquidityMultisignInputSchema
5904
+ }),
5905
+ defineMultisignSubmitMcpTool({
5906
+ name: "ctm_curve_dao_build_remove_liquidity_multisign",
5907
+ actionId: "curve-dao.remove-liquidity",
5908
+ protocolId: "curve-dao",
5909
+ chainCategory: "evm",
5910
+ description: "Create mpc-auth multiSignRequest for Curve remove_liquidity. Unstake from the gauge first if LP is staked.",
5911
+ prerequisites: ["ctm_curve_dao_quote_remove_liquidity"],
5912
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "buildEvmMultisignBodyCurveRemoveLiquidity" },
5913
+ inputZod: mcpCurveDaoBuildRemoveLiquidityMultisignInputSchema
5914
+ }),
5915
+ defineMultisignSubmitMcpTool({
5916
+ name: "ctm_curve_dao_build_gauge_deposit_multisign",
5917
+ actionId: "curve-dao.gauge-deposit",
5918
+ protocolId: "curve-dao",
5919
+ chainCategory: "evm",
5920
+ description: "Stake or unstake Curve LP in the gauge (required for advertised gauge_crv_apy). Set withdraw:true to unstake.",
5921
+ prerequisites: ["pool with gaugeAddress from fetch_important_pools"],
5922
+ handler: { importPath: "protocols/evm/curve-dao", exportName: "buildEvmMultisignBodyCurveGaugeDeposit" },
5923
+ inputZod: mcpCurveDaoBuildGaugeDepositMultisignInputSchema
5924
+ }),
5506
5925
  defineMcpTool({
5507
5926
  name: "ctm_aerodrome_discover_pools",
5508
5927
  actionId: "aerodrome.discover-pools",
@@ -5520,13 +5939,37 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5520
5939
  actionId: "aerodrome.fetch-pools",
5521
5940
  protocolId: "aerodrome",
5522
5941
  chainCategory: "evm",
5523
- description: "Paginated LpSugar.all pool dump on Base. Heavy \u2014 can time out. Not required for swaps: ctm_aerodrome_quote discovers Slipstream 3 / v2 routes itself (including AAPLc/USDC). Use only when browsing LP inventory.",
5942
+ description: "At most ~100 important Aerodrome pools on Base (ETH/WETH, USDC, AERO, major stables; TVL-ranked). Not an LpSugar.all dump. Optional query only shrinks the set. For B20 stock LPs use ctm_aerodrome_fetch_stock_lp_yields.",
5524
5943
  prerequisites: ["chainId 8453"],
5525
5944
  followUp: ["ctm_aerodrome_quote_add_liquidity", "ctm_aerodrome_fetch_positions"],
5526
5945
  handler: { importPath: "protocols/evm/aerodrome", exportName: "aerodromeFetchPoolsSummary" },
5527
5946
  inputZod: mcpAerodromeFetchPoolsInputSchema,
5528
5947
  outputZod: mcpAerodromeFetchPoolsOutputSchema
5529
5948
  }),
5949
+ defineMcpTool({
5950
+ name: "ctm_aerodrome_fetch_lp_yields",
5951
+ actionId: "aerodrome.fetch-lp-yields",
5952
+ protocolId: "aerodrome",
5953
+ chainCategory: "evm",
5954
+ description: "Fee tier + AERO emissions APR for the same ~100 important Aerodrome pairs. feeApr is null (Sugar has no volume). Not a factory dump. B20 stocks: ctm_aerodrome_fetch_stock_lp_yields.",
5955
+ prerequisites: ["chainId 8453"],
5956
+ followUp: ["ctm_aerodrome_quote_add_liquidity", "ctm_aerodrome_build_gauge_stake_multisign"],
5957
+ handler: { importPath: "protocols/evm/aerodrome", exportName: "aerodromeFetchLpYieldsSummary" },
5958
+ inputZod: mcpAerodromeFetchLpYieldsInputSchema,
5959
+ outputZod: mcpAerodromeFetchLpYieldsOutputSchema
5960
+ }),
5961
+ defineMcpTool({
5962
+ name: "ctm_aerodrome_fetch_stock_lp_yields",
5963
+ actionId: "aerodrome.fetch-stock-lp-yields",
5964
+ protocolId: "aerodrome",
5965
+ chainCategory: "evm",
5966
+ description: "Coinbase B20 stock LP yields only (AAPLc/USDC, \u2026). Separate from main-pair fetch_lp_yields. Trading stocks is not this list.",
5967
+ prerequisites: ["chainId 8453"],
5968
+ followUp: ["ctm_aerodrome_quote_add_liquidity"],
5969
+ handler: { importPath: "protocols/evm/aerodrome", exportName: "aerodromeFetchStockLpYieldsSummary" },
5970
+ inputZod: mcpAerodromeFetchStockLpYieldsInputSchema,
5971
+ outputZod: mcpAerodromeFetchStockLpYieldsOutputSchema
5972
+ }),
5530
5973
  defineMcpTool({
5531
5974
  name: "ctm_aerodrome_fetch_positions",
5532
5975
  actionId: "aerodrome.fetch-positions",
@@ -5748,7 +6191,7 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5748
6191
  actionId: "gmx.fetch-market-prices",
5749
6192
  protocolId: "gmx",
5750
6193
  chainCategory: "evm",
5751
- description: "Latest GMX index mark and collateral USD prices for a perp market. Read-only via GMX HTTP API.",
6194
+ description: "Latest GMX index mark, collateral USD, and official funding (fundingFactorPerSecond, longsPayShorts, hourly/APR labels). Borrow-per-second is a cost caveat, not a second yield. Read-only via GMX HTTP API + MarketInfo.",
5752
6195
  prerequisites: ["chainId", "symbol from ctm_gmx_fetch_markets", "collateralSymbol e.g. USDC"],
5753
6196
  followUp: ["ctm_gmx_fetch_ohlcv", "ctm_gmx_build_increase_multisign"],
5754
6197
  handler: { importPath: "protocols/evm/gmx", exportName: "gmxFetchMarketPrices" },
@@ -5808,13 +6251,25 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5808
6251
  actionId: "hyperliquid.fetch-markets",
5809
6252
  protocolId: "hyperliquid",
5810
6253
  chainCategory: "evm",
5811
- description: "List Hyperliquid perp markets (native + all HIP-3 dexes when dex omitted). Each market has coin name, maxLeverage, szDecimals, and optional dex (e.g. xyz for xyz:AAPL). chainId 999 mainnet or 998 testnet.",
6254
+ description: "List native Hyperliquid crypto perp markets. HIP-3 stocks (xyz:AAPL) are ctm_hyperliquid_fetch_stock_markets. Pass dex to list one builder. chainId 999 mainnet or 998 testnet.",
5812
6255
  prerequisites: ["chainId 999 or 998"],
5813
6256
  followUp: ["ctm_hyperliquid_fetch_open_context", "ctm_hyperliquid_build_limit_order_multisign", "ctm_hyperliquid_build_update_leverage_multisign"],
5814
6257
  handler: { importPath: "protocols/evm/hyperliquid", exportName: "hyperliquidFetchMarketsSummary" },
5815
6258
  inputZod: mcpHyperliquidFetchMarketsInputSchema,
5816
6259
  outputZod: mcpHyperliquidFetchMarketsOutputSchema
5817
6260
  }),
6261
+ defineMcpTool({
6262
+ name: "ctm_hyperliquid_fetch_stock_markets",
6263
+ actionId: "hyperliquid.fetch-stock-markets",
6264
+ protocolId: "hyperliquid",
6265
+ chainCategory: "evm",
6266
+ description: "HIP-3 / equity stock perps (xyz:AAPL, TSLA, \u2026) with dex, displayName, and category. Trading only \u2014 not a savings APR. Native crypto: ctm_hyperliquid_fetch_markets.",
6267
+ prerequisites: ["chainId 999 or 998"],
6268
+ followUp: ["ctm_hyperliquid_search_markets", "ctm_hyperliquid_build_limit_order_multisign"],
6269
+ handler: { importPath: "protocols/evm/hyperliquid", exportName: "hyperliquidFetchStockMarketsSummary" },
6270
+ inputZod: mcpHyperliquidFetchStockMarketsInputSchema,
6271
+ outputZod: mcpHyperliquidFetchStockMarketsOutputSchema
6272
+ }),
5818
6273
  defineMcpTool({
5819
6274
  name: "ctm_hyperliquid_search_markets",
5820
6275
  actionId: "hyperliquid.search-markets",
@@ -5868,7 +6323,7 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5868
6323
  actionId: "hyperliquid.fetch-market-snapshot",
5869
6324
  protocolId: "hyperliquid",
5870
6325
  chainCategory: "evm",
5871
- description: "Live mark/mid price plus recent OHLCV candles for a Hyperliquid perp. Uses metaAndAssetCtxs for live prices (not stale candle close). Default interval 15m, 48 bars. Throws if live price unavailable.",
6326
+ description: "Live mark/mid price, official hourly funding, plus recent OHLCV candles for a Hyperliquid perp. Uses metaAndAssetCtxs for live prices and funding (not stale candle close). Default interval 15m, 48 bars. Throws if live price unavailable.",
5872
6327
  prerequisites: ["chainId", "coin"],
5873
6328
  followUp: ["ctm_hyperliquid_fetch_open_context", "ctm_hyperliquid_build_limit_order_multisign", "ctm_hyperliquid_build_update_leverage_multisign"],
5874
6329
  handler: { importPath: "protocols/evm/hyperliquid", exportName: "hyperliquidFetchMarketSnapshotSummary" },
@@ -5911,6 +6366,18 @@ var CORE_MCP_TOOL_DEFINITIONS = [
5911
6366
  inputZod: mcpHyperliquidFetchVaultsInputSchema,
5912
6367
  outputZod: mcpHyperliquidFetchVaultsOutputSchema
5913
6368
  }),
6369
+ defineMcpTool({
6370
+ name: "ctm_hyperliquid_fetch_vault_apys",
6371
+ actionId: "hyperliquid.fetch-vault-apys",
6372
+ protocolId: "hyperliquid",
6373
+ chainCategory: "evm",
6374
+ description: "Hyperliquid vault APRs sorted descending (HLP first). Use this for idle USDC yield compare \u2014 not HIP-3 stocks. Same catalog cap as fetch_vaults.",
6375
+ prerequisites: ["chainId 999 for catalog"],
6376
+ followUp: ["ctm_hyperliquid_build_vault_deposit_multisign"],
6377
+ handler: { importPath: "protocols/evm/hyperliquid", exportName: "hyperliquidFetchVaultApysSummary" },
6378
+ inputZod: mcpHyperliquidFetchVaultApysInputSchema,
6379
+ outputZod: mcpHyperliquidFetchVaultApysOutputSchema
6380
+ }),
5914
6381
  defineMcpTool({
5915
6382
  name: "ctm_hyperliquid_fetch_user_vault_equities",
5916
6383
  actionId: "hyperliquid.fetch-user-vault-equities",
@@ -6184,6 +6651,18 @@ var CORE_MCP_TOOL_DEFINITIONS = [
6184
6651
  inputZod: mcpEulerV2FetchLendVaultsInputSchema,
6185
6652
  outputZod: mcpEulerV2FetchLendVaultsOutputSchema
6186
6653
  }),
6654
+ defineMcpTool({
6655
+ name: "ctm_euler_v2_fetch_earn_vaults",
6656
+ actionId: "euler-v2.fetch-earn-vaults",
6657
+ protocolId: "euler-v2",
6658
+ chainCategory: "evm",
6659
+ description: "Euler Earn vaults (curated, not isolated lend) for an underlying with live supply APY. Use this (not web search) for Euler earn rates. Copy evaultAddress for deposit.",
6660
+ prerequisites: ["chainId", "underlyingAddress from get_defi_protocol_supported_tokens"],
6661
+ followUp: ["ctm_euler_v2_build_isolated_lend_multisign"],
6662
+ handler: { importPath: "protocols/evm/euler-v2", exportName: "eulerV2FetchEarnVaultsSummary" },
6663
+ inputZod: mcpEulerV2FetchEarnVaultsInputSchema,
6664
+ outputZod: mcpEulerV2FetchEarnVaultsOutputSchema
6665
+ }),
6187
6666
  defineMcpTool({
6188
6667
  name: "ctm_cctp_fetch_supported_routes",
6189
6668
  actionId: "circle-cctp.fetch-routes",
@@ -6635,6 +7114,103 @@ var CORE_MCP_TOOL_DEFINITIONS = [
6635
7114
  inputZod: mcpContinuumDaoForumSectionsInputSchema,
6636
7115
  outputZod: mcpContinuumDaoForumSectionsOutputSchema
6637
7116
  }),
7117
+ defineMcpTool({
7118
+ name: "ctm_maple_fetch_markets",
7119
+ actionId: "maple-syrup.fetch-markets",
7120
+ protocolId: "maple-syrup",
7121
+ chainCategory: "evm",
7122
+ description: "List Maple Syrup pools on a chain with live weekly/monthly APY and TVL. Use this (not web search) for Maple lending rates. Copy pool + syrupRouter + asset for build_deposit_multisign / build_request_redeem_multisign. Optional underlying filter.",
7123
+ prerequisites: ["chainId", "get_defi_protocol_supported_chains"],
7124
+ followUp: [
7125
+ "ctm_maple_fetch_market",
7126
+ "ctm_maple_build_deposit_multisign",
7127
+ "ctm_maple_build_request_redeem_multisign"
7128
+ ],
7129
+ handler: { importPath: "protocols/evm/maple", exportName: "mapleSyrupFetchMarketsSummary" },
7130
+ inputZod: mcpMapleFetchMarketsInputSchema,
7131
+ outputZod: mcpMapleFetchMarketsOutputSchema
7132
+ }),
7133
+ defineMcpTool({
7134
+ name: "ctm_maple_fetch_market",
7135
+ actionId: "maple-syrup.fetch-market",
7136
+ protocolId: "maple-syrup",
7137
+ chainCategory: "evm",
7138
+ description: "One Maple Syrup pool (by pool address or underlying) with weekly/monthly APY and TVL. Copy pool + syrupRouter + asset for deposit/redeem. Do not web-search Maple rates.",
7139
+ prerequisites: ["chainId", "pool or underlying from ctm_maple_fetch_markets"],
7140
+ followUp: ["ctm_maple_build_deposit_multisign", "ctm_maple_build_request_redeem_multisign"],
7141
+ handler: { importPath: "protocols/evm/maple", exportName: "mapleSyrupFetchMarketSummary" },
7142
+ inputZod: mcpMapleFetchMarketInputSchema,
7143
+ outputZod: mcpMapleFetchMarketOutputSchema
7144
+ }),
7145
+ defineMcpTool({
7146
+ name: "ctm_aave_v4_fetch_markets",
7147
+ actionId: "aave-v4.fetch-markets",
7148
+ protocolId: "aave-v4",
7149
+ chainCategory: "evm",
7150
+ description: "List Aave v4 hub reserves on a chain with live supply/borrow APY, liquidity, and collateral factor. Use this (not web search) to compare lending rates or pick an underlying + marketId for build_*_multisign. Optional marketId (main/core/bluechip) or underlying filter.",
7151
+ prerequisites: ["chainId", "get_defi_protocol_supported_chains"],
7152
+ followUp: [
7153
+ "ctm_aave_v4_fetch_market",
7154
+ "ctm_aave_v4_build_deposit_multisign",
7155
+ "ctm_aave_v4_build_borrow_multisign"
7156
+ ],
7157
+ handler: { importPath: "protocols/evm/aave-v4", exportName: "aaveV4FetchMarketsSummary" },
7158
+ inputZod: mcpAaveV4FetchMarketsInputSchema,
7159
+ outputZod: mcpAaveV4FetchMarketsOutputSchema
7160
+ }),
7161
+ defineMcpTool({
7162
+ name: "ctm_aave_v4_fetch_market",
7163
+ actionId: "aave-v4.fetch-market",
7164
+ protocolId: "aave-v4",
7165
+ chainCategory: "evm",
7166
+ description: "One Aave v4 reserve (or the same underlying across hubs) with supply/borrow APY and liquidity. Copy underlying + marketId for deposit/borrow/repay. Do not web-search Aave rates.",
7167
+ prerequisites: ["chainId", "underlying from ctm_aave_v4_fetch_markets or get_defi_protocol_supported_tokens"],
7168
+ followUp: [
7169
+ "ctm_aave_v4_build_deposit_multisign",
7170
+ "ctm_aave_v4_build_withdraw_multisign",
7171
+ "ctm_aave_v4_build_borrow_multisign",
7172
+ "ctm_aave_v4_build_repay_multisign"
7173
+ ],
7174
+ handler: { importPath: "protocols/evm/aave-v4", exportName: "aaveV4FetchMarketSummary" },
7175
+ inputZod: mcpAaveV4FetchMarketInputSchema,
7176
+ outputZod: mcpAaveV4FetchMarketOutputSchema
7177
+ }),
7178
+ defineMcpTool({
7179
+ name: "ctm_lido_fetch_steth_apr",
7180
+ actionId: "lido.fetch-steth-apr",
7181
+ protocolId: "lido",
7182
+ chainCategory: "evm",
7183
+ description: "Recent stETH staking APR from the official Lido API. Use this (not web search) when comparing ETH staking vs lending. Ethereum mainnet.",
7184
+ prerequisites: ["load_defi_protocol lido"],
7185
+ followUp: ["ctm_lido_build_submit_multisign"],
7186
+ handler: { importPath: "protocols/evm/lido", exportName: "lidoFetchStethAprSummary" },
7187
+ inputZod: mcpLidoFetchStethAprInputSchema,
7188
+ outputZod: mcpLidoFetchStethAprOutputSchema
7189
+ }),
7190
+ defineMcpTool({
7191
+ name: "ctm_sky_fetch_susds_rate",
7192
+ actionId: "sky.fetch-susds-rate",
7193
+ protocolId: "sky",
7194
+ chainCategory: "evm",
7195
+ description: "Sky Savings Rate (sUSDS APY) from on-chain ssr(). Use this (not web search) for USDS savings. Ethereum mainnet. rpcUrl is injected.",
7196
+ prerequisites: ["chainId 1", "get_chain_registry rpcGateway"],
7197
+ followUp: ["ctm_sky_build_susds_deposit_multisign"],
7198
+ handler: { importPath: "protocols/evm/sky", exportName: "skyFetchSusdsRateSummary" },
7199
+ inputZod: mcpSkyFetchSusdsRateInputSchema,
7200
+ outputZod: mcpSkyFetchSusdsRateOutputSchema
7201
+ }),
7202
+ defineMcpTool({
7203
+ name: "ctm_ethena_fetch_susde_apy",
7204
+ actionId: "ethena.fetch-susde-apy",
7205
+ protocolId: "ethena",
7206
+ chainCategory: "evm",
7207
+ description: "sUSDe staking APY plus USDe-per-share from the vault. Use this (not web search) for USDe yield. Ethereum mainnet. rpcUrl is injected.",
7208
+ prerequisites: ["chainId 1", "get_chain_registry rpcGateway"],
7209
+ followUp: ["ctm_ethena_build_stake_multisign"],
7210
+ handler: { importPath: "protocols/evm/ethena", exportName: "ethenaFetchSusdeApySummary" },
7211
+ inputZod: mcpEthenaFetchSusdeApyInputSchema,
7212
+ outputZod: mcpEthenaFetchSusdeApyOutputSchema
7213
+ }),
6638
7214
  defineMcpTool({
6639
7215
  name: "ctm_compound_v3_fetch_markets",
6640
7216
  actionId: "compound-v3.fetch-markets",
@@ -8292,34 +8868,14 @@ var veniceProtocolModule = {
8292
8868
  ]
8293
8869
  };
8294
8870
  registerProtocolModule(veniceProtocolModule);
8295
- var AERODROME_PROTOCOL_ID = "aerodrome";
8296
- var AERODROME_CHAIN_ID = 8453;
8297
- var AERODROME_WETH_BASE = "0x4200000000000000000000000000000000000006";
8298
- var AERODROME_USDC_BASE = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
8299
- function isAerodromeChainSupported(chainId) {
8300
- const n = typeof chainId === "number" ? chainId : Number.parseInt(String(chainId), 10);
8301
- return n === AERODROME_CHAIN_ID;
8302
- }
8303
- var AERODROME_BASE_ADDRESSES_FALLBACK = {
8304
- aero: "0x940181a94A35A4569E4529A3CDfB74e38FD98631"};
8305
- var AERODROME_COINBASE_STOCK_TOKENS = [
8306
- { symbol: "AAPLc", name: "Apple Inc.", address: "0xb200000000000000000000C2e324d24d7eEcd1fb" },
8307
- { symbol: "NVDAc", name: "NVIDIA Corporation", address: "0xb20000000000000000000078ee7ce2fE4908108C" },
8308
- { symbol: "METAc", name: "Meta Platforms Inc.", address: "0xb2000000000000000000008bC8786B856E61707C" },
8309
- { symbol: "GOOGLc", name: "Alphabet Inc.", address: "0xb2000000000000000000002D0BA3164cc74f58B7" },
8310
- { symbol: "AMZNc", name: "Amazon.com Inc.", address: "0xb200000000000000000000d9192b6B456483C2E8" },
8311
- { symbol: "TSLAc", name: "Tesla Inc.", address: "0xb2000000000000000000001e800a7f5189430cD0" },
8312
- { symbol: "MSFTc", name: "Microsoft Corporation", address: "0xB200000000000000000000Ab99cFa739E253872B" },
8313
- { symbol: "COINc", name: "Coinbase Global Inc.", address: "0xb200000000000000000000c85a31389D71F3ecfb" },
8314
- { symbol: "MSTRc", name: "Strategy Inc.", address: "0xb2000000000000000000004884b426556b92883d" },
8315
- { symbol: "CRCLc", name: "Circle Internet Group Inc.", address: "0xB20000000000000000000019f6E7C675b73C2e4D" },
8316
- { symbol: "INTCc", name: "Intel Corporation", address: "0xB2000000000000000000004AFF16039bA04bdFBc" },
8317
- { symbol: "SNDKc", name: "Sandisk Corporation", address: "0xb200000000000000000000397293Cb8cda9a10c5" },
8318
- { symbol: "SPCXc", name: "Space Exploration Technologies Corp.", address: "0xb2000000000000000000007b9fcbd005511aCBd5" }
8319
- ];
8320
- var AERODROME_COINBASE_STOCK_DECIMALS = 8;
8321
8871
 
8322
8872
  // src/protocols/evm/aerodrome/index.ts
8873
+ init_support2();
8874
+ init_support2();
8875
+ init_addresses();
8876
+ init_stockTokens();
8877
+ init_discover();
8878
+ init_yields();
8323
8879
  var aerodromeProtocolModule = {
8324
8880
  id: AERODROME_PROTOCOL_ID,
8325
8881
  chainCategory: "evm",
@@ -8864,11 +9420,18 @@ var cometInterfaceAbi = parseAbi([
8864
9420
  "function isBorrowCollateralized(address account) view returns (bool)",
8865
9421
  "function isLiquidatable(address account) view returns (bool)",
8866
9422
  "function getAssetInfo(uint8 i) view returns ((uint8 offset, address asset, address priceFeed, uint64 scale, uint64 borrowCollateralFactor, uint64 liquidateCollateralFactor, uint64 liquidationFactor, uint128 supplyCap))",
8867
- "function getAssetInfoByAddress(address asset) view returns ((uint8 offset, address asset, address priceFeed, uint64 scale, uint64 borrowCollateralFactor, uint64 liquidateCollateralFactor, uint64 liquidationFactor, uint128 supplyCap))"
9423
+ "function getAssetInfoByAddress(address asset) view returns ((uint8 offset, address asset, address priceFeed, uint64 scale, uint64 borrowCollateralFactor, uint64 liquidateCollateralFactor, uint64 liquidationFactor, uint128 supplyCap))",
9424
+ "function baseTrackingSupplySpeed() view returns (uint256)",
9425
+ "function baseTrackingBorrowSpeed() view returns (uint256)",
9426
+ "function baseIndexScale() view returns (uint64)",
9427
+ "function trackingIndexScale() view returns (uint256)",
9428
+ "function totalSupply() view returns (uint256)",
9429
+ "function totalBorrow() view returns (uint256)"
8868
9430
  ]);
8869
- parseAbi([
9431
+ var cometRewardsAbi = parseAbi([
8870
9432
  "function getRewardOwed(address comet, address account) view returns ((address token, uint256 owed))",
8871
- "function claim(address comet, address src, bool shouldAccrue)"
9433
+ "function claim(address comet, address src, bool shouldAccrue)",
9434
+ "function rewardConfig(address comet) view returns ((address token, uint64 rescaleFactor, bool shouldUpscale))"
8872
9435
  ]);
8873
9436
  parseAbi([
8874
9437
  "function invoke(bytes32[] actions, bytes[] data) payable"
@@ -8910,6 +9473,22 @@ function compoundV3UtilizationToDecimal(utilization) {
8910
9473
  function compoundV3FactorToPercent(factor) {
8911
9474
  return Number(factor) / 1e16;
8912
9475
  }
9476
+ var COMPOUND_V3_PRICE_SCALE = 1e8;
9477
+ var COMPOUND_V3_TRACKING_INDEX_SCALE = 1e15;
9478
+ function compoundV3TrackingSpeedToRewardAprPercent(args) {
9479
+ if (args.trackingSpeed <= 0n || args.totalBase <= 0n || args.basePrice <= 0n || args.rewardPrice <= 0n) {
9480
+ return null;
9481
+ }
9482
+ const scale = Number(args.trackingIndexScale > 0n ? args.trackingIndexScale : BigInt(COMPOUND_V3_TRACKING_INDEX_SCALE));
9483
+ if (!Number.isFinite(scale) || scale <= 0) return null;
9484
+ const tokensPerYear = Number(args.trackingSpeed) / scale * COMPOUND_V3_SECONDS_PER_YEAR;
9485
+ const rewardUsdPerYear = tokensPerYear * (Number(args.rewardPrice) / COMPOUND_V3_PRICE_SCALE);
9486
+ const totalUsd = Number(args.totalBase) / 10 ** args.baseDecimals * (Number(args.basePrice) / COMPOUND_V3_PRICE_SCALE);
9487
+ if (!Number.isFinite(rewardUsdPerYear) || !Number.isFinite(totalUsd) || totalUsd <= 0) return null;
9488
+ const pct = rewardUsdPerYear / totalUsd * 100;
9489
+ if (!Number.isFinite(pct) || pct < 0) return null;
9490
+ return pct;
9491
+ }
8913
9492
 
8914
9493
  // src/protocols/evm/compound-v3/subgraph.ts
8915
9494
  var COMPOUND_V3_SUBGRAPH_BY_CHAIN = {
@@ -8968,7 +9547,7 @@ async function enrichMarketOnChain(client, market) {
8968
9547
  client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "numAssets" }),
8969
9548
  client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "decimals" })
8970
9549
  ]);
8971
- const [supplyRate, borrowRate, baseMeta, baseFeed] = await Promise.all([
9550
+ const [supplyRate, borrowRate, baseMeta, baseFeed, supplySpeed, borrowSpeed, totalSupply, totalBorrow, trackingScale] = await Promise.all([
8972
9551
  client.readContract({
8973
9552
  address: comet,
8974
9553
  abi: cometInterfaceAbi,
@@ -8982,7 +9561,12 @@ async function enrichMarketOnChain(client, market) {
8982
9561
  args: [utilization]
8983
9562
  }),
8984
9563
  readTokenMeta(client, getAddress(baseToken)),
8985
- client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "baseTokenPriceFeed" })
9564
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "baseTokenPriceFeed" }),
9565
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "baseTrackingSupplySpeed" }).catch(() => 0n),
9566
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "baseTrackingBorrowSpeed" }).catch(() => 0n),
9567
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "totalSupply" }).catch(() => 0n),
9568
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "totalBorrow" }).catch(() => 0n),
9569
+ client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "trackingIndexScale" }).catch(() => BigInt(COMPOUND_V3_TRACKING_INDEX_SCALE))
8986
9570
  ]);
8987
9571
  const basePrice = await client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "getPrice", args: [baseFeed] }).catch(() => 0n);
8988
9572
  const assets = [
@@ -9017,6 +9601,47 @@ async function enrichMarketOnChain(client, market) {
9017
9601
  role: "collateral"
9018
9602
  });
9019
9603
  }
9604
+ let rewardPrice = 0n;
9605
+ try {
9606
+ const cfg = await client.readContract({
9607
+ address: getAddress(market.rewards),
9608
+ abi: cometRewardsAbi,
9609
+ functionName: "rewardConfig",
9610
+ args: [comet]
9611
+ });
9612
+ const rewardToken = getAddress(cfg.token);
9613
+ const listed = assets.find((a) => a.asset.toLowerCase() === rewardToken.toLowerCase());
9614
+ if (listed && listed.priceRaw !== "0") {
9615
+ rewardPrice = BigInt(listed.priceRaw);
9616
+ } else {
9617
+ const info = await client.readContract({
9618
+ address: comet,
9619
+ abi: cometInterfaceAbi,
9620
+ functionName: "getAssetInfoByAddress",
9621
+ args: [rewardToken]
9622
+ });
9623
+ rewardPrice = await client.readContract({ address: comet, abi: cometInterfaceAbi, functionName: "getPrice", args: [info.priceFeed] }).catch(() => 0n);
9624
+ }
9625
+ } catch {
9626
+ rewardPrice = 0n;
9627
+ }
9628
+ const baseDecimals = Number(decimals) || baseMeta.decimals;
9629
+ const supplyRewardApr = compoundV3TrackingSpeedToRewardAprPercent({
9630
+ trackingSpeed: supplySpeed,
9631
+ trackingIndexScale: trackingScale,
9632
+ totalBase: totalSupply,
9633
+ baseDecimals,
9634
+ basePrice,
9635
+ rewardPrice
9636
+ });
9637
+ const borrowRewardApr = compoundV3TrackingSpeedToRewardAprPercent({
9638
+ trackingSpeed: borrowSpeed,
9639
+ trackingIndexScale: trackingScale,
9640
+ totalBase: totalBorrow,
9641
+ baseDecimals,
9642
+ basePrice,
9643
+ rewardPrice
9644
+ });
9020
9645
  return {
9021
9646
  chainId: market.chainId,
9022
9647
  slug: market.slug,
@@ -9028,6 +9653,8 @@ async function enrichMarketOnChain(client, market) {
9028
9653
  utilization: compoundV3UtilizationToDecimal(utilization),
9029
9654
  supplyAprPercent: compoundV3AprToPercentLabel(compoundV3RatePerSecondToAprDecimal(supplyRate)),
9030
9655
  borrowAprPercent: compoundV3AprToPercentLabel(compoundV3RatePerSecondToAprDecimal(borrowRate)),
9656
+ supplyRewardAprPercent: supplyRewardApr == null ? null : compoundV3AprToPercentLabel(supplyRewardApr / 100),
9657
+ borrowRewardAprPercent: borrowRewardApr == null ? null : compoundV3AprToPercentLabel(borrowRewardApr / 100),
9031
9658
  assets
9032
9659
  };
9033
9660
  }
@@ -9043,6 +9670,8 @@ function registryMarketRow(market) {
9043
9670
  utilization: null,
9044
9671
  supplyAprPercent: null,
9045
9672
  borrowAprPercent: null,
9673
+ supplyRewardAprPercent: null,
9674
+ borrowRewardAprPercent: null,
9046
9675
  assets: market.baseToken ? [
9047
9676
  {
9048
9677
  asset: market.baseToken,
@@ -9069,7 +9698,7 @@ async function compoundV3FetchMarketsSummary(args) {
9069
9698
  if (!args.rpcUrl?.trim()) {
9070
9699
  return {
9071
9700
  markets: registry.map(registryMarketRow),
9072
- notes: "Registry from official comet deployments. Pass rpcUrl (MCP server injects it) to enrich APRs and collaterals." + subgraphNote
9701
+ notes: "Registry from official comet deployments. Pass rpcUrl (MCP server injects it) to enrich APRs, reward APRs, and collaterals." + subgraphNote
9073
9702
  };
9074
9703
  }
9075
9704
  const client = publicClient(args.rpcUrl, args.chainId);
@@ -9083,7 +9712,7 @@ async function compoundV3FetchMarketsSummary(args) {
9083
9712
  }
9084
9713
  return {
9085
9714
  markets,
9086
- notes: "Comet proxy addresses from official deployments; rates and collaterals from on-chain CometInterface." + subgraphNote
9715
+ notes: "Comet proxy addresses from official deployments; base supply/borrow APR and COMP incentive APR from on-chain CometInterface. Incentive APR is extra and variable; null when the reward token has no on-chain price feed." + subgraphNote
9087
9716
  };
9088
9717
  }
9089
9718
  var chainAssetCache2 = /* @__PURE__ */ new Map();
@@ -9187,7 +9816,8 @@ var SKILL_PROTOCOL_IDS = [
9187
9816
  "circle-cctp",
9188
9817
  "aerodrome",
9189
9818
  "continuum-dao",
9190
- "compound-v3"
9819
+ "compound-v3",
9820
+ "yield-compare"
9191
9821
  ];
9192
9822
  function getToolsForProtocol(protocolId) {
9193
9823
  return MCP_TOOL_DEFINITIONS.filter((t) => t.protocolId === protocolId);
@@ -9236,6 +9866,9 @@ function getProtocolDiscoverySummary(protocolId) {
9236
9866
  };
9237
9867
  }
9238
9868
  init_support();
9869
+ init_support2();
9870
+ init_addresses();
9871
+ init_stockTokens();
9239
9872
  function advisor(protocolId, tokenFilter, impl) {
9240
9873
  return { protocolId, tokenFilter, ...impl };
9241
9874
  }
@@ -9506,7 +10139,7 @@ var PROTOCOL_SUPPORT_ADVISORS = {
9506
10139
  async supportedTokens() {
9507
10140
  return {
9508
10141
  tokens: [],
9509
- notes: "Maple Syrup pools are discovered via GraphQL; pass syrupRouter, pool, and asset from Maple UI."
10142
+ notes: "Maple Syrup pools and APYs come from ctm_maple_fetch_markets. Copy syrupRouter, pool, and asset from the fetch row."
9510
10143
  };
9511
10144
  }
9512
10145
  }),
@@ -9729,6 +10362,6 @@ function getAgentCatalog() {
9729
10362
  };
9730
10363
  }
9731
10364
 
9732
- export { EVM_COMMON_PARAM_DOCS, MANAGEMENT_SIG_DOC, MCP_NON_SUBMIT_TOOL_NAMES, MCP_TOOL_DEFINITIONS, MCP_TOOL_INPUT_SCHEMAS, MCP_TOOL_OUTPUT_SCHEMAS, MULTISIGN_OUTPUT_DOC, MULTISIGN_SUBMIT_OUTPUT_DOC, PROTOCOL_SUPPORT_ADVISORS, chainDetailSchema, evmAddressSchema, evmMultisignCommonInputSchema, getActionsByChainCategory, getAgentCatalog, getAgentCatalogForMcp, getMcpToolByName, getMcpToolDefinitions, getMcpToolInputSchema, getMcpToolOutputSchema, getProtocolDiscoverySummary, getProtocolModules, getProtocolSkill, getProtocolSupportAdvisor, getToolsForProtocol, jsonObjectSchema, keyGenSchema, listProtocolSupportAdvisorIds, listProtocolsWithSkills, mcpAaveV4BorrowInputSchema, mcpAaveV4DepositInputSchema, mcpAaveV4RepayInputSchema, mcpAaveV4WithdrawInputSchema, mcpAerodromeBuildAddLiquidityMultisignInputSchema, mcpAerodromeBuildClBurnMultisignInputSchema, mcpAerodromeBuildClCollectFeesMultisignInputSchema, mcpAerodromeBuildClDecreaseMultisignInputSchema, mcpAerodromeBuildClIncreaseMultisignInputSchema, mcpAerodromeBuildClMintMultisignInputSchema, mcpAerodromeBuildClaimEmissionsMultisignInputSchema, mcpAerodromeBuildClaimFeesMultisignInputSchema, mcpAerodromeBuildGaugeStakeMultisignInputSchema, mcpAerodromeBuildGaugeUnstakeMultisignInputSchema, mcpAerodromeBuildRemoveLiquidityMultisignInputSchema, mcpAerodromeBuildSwapMultisignInputSchema, mcpAerodromeDiscoverPoolsInputSchema, mcpAerodromeDiscoverPoolsOutputSchema, mcpAerodromeFetchPoolsInputSchema, mcpAerodromeFetchPoolsOutputSchema, mcpAerodromeFetchPositionsInputSchema, mcpAerodromeFetchPositionsOutputSchema, mcpAerodromeQuoteAddLiquidityInputSchema, mcpAerodromeQuoteAddLiquidityOutputSchema, mcpAerodromeQuoteClDepositInputSchema, mcpAerodromeQuoteClDepositOutputSchema, mcpAerodromeQuoteInputSchema, mcpAerodromeQuoteOutputSchema, mcpArcusBuildCancelOrderMultisignInputSchema, mcpArcusBuildCloseMultisignInputSchema, mcpArcusBuildCreateApiKeyMultisignInputSchema, mcpArcusBuildDepositMultisignInputSchema, mcpArcusBuildPlaceOrderMultisignInputSchema, mcpArcusBuildSetLeverageMultisignInputSchema, mcpArcusBuildWithdrawMultisignInputSchema, mcpArcusFetchAccountInputSchema, mcpArcusFetchAccountOutputSchema, mcpArcusFetchMarketSnapshotInputSchema, mcpArcusFetchMarketSnapshotOutputSchema, mcpArcusFetchMarketsInputSchema, mcpArcusFetchMarketsOutputSchema, mcpArcusFetchOhlcvInputSchema, mcpArcusFetchOhlcvOutputSchema, mcpArcusFetchOpenContextInputSchema, mcpArcusFetchOpenContextOutputSchema, mcpArcusFetchOpenOrdersInputSchema, mcpArcusFetchOpenOrdersOutputSchema, mcpArcusFetchPositionsInputSchema, mcpArcusFetchPositionsOutputSchema, mcpArcusSearchMarketsInputSchema, mcpArcusSearchMarketsOutputSchema, mcpArcusSpotBuildRfqMultisignInputSchema, mcpArcusSpotFetchBalancesInputSchema, mcpArcusSpotFetchBalancesOutputSchema, mcpArcusSpotFetchMarketsInputSchema, mcpArcusSpotFetchMarketsOutputSchema, mcpArcusSpotFetchOhlcvInputSchema, mcpArcusSpotFetchOhlcvOutputSchema, mcpCompoundV3BulkerInputSchema, mcpCompoundV3ClaimRewardsInputSchema, mcpCompoundV3FetchAccountInputSchema, mcpCompoundV3FetchAccountOutputSchema, mcpCompoundV3FetchMarketInputSchema, mcpCompoundV3FetchMarketOutputSchema, mcpCompoundV3FetchMarketsInputSchema, mcpCompoundV3FetchMarketsOutputSchema, mcpCompoundV3RepayInputSchema, mcpCompoundV3SupplyInputSchema, mcpCompoundV3WithdrawInputSchema, mcpContinuumDaoAttachInputSchema, mcpContinuumDaoCastVoteBravoInputSchema, mcpContinuumDaoCastVoteDeltaInputSchema, mcpContinuumDaoCreateLockInputSchema, mcpContinuumDaoDelegateInputSchema, mcpContinuumDaoExplainProposalInputSchema, mcpContinuumDaoExplainProposalOutputSchema, mcpContinuumDaoFetchDelegatesInputSchema, mcpContinuumDaoFetchDelegatesOutputSchema, mcpContinuumDaoFetchLiveProposalsInputSchema, mcpContinuumDaoFetchLiveProposalsOutputSchema, mcpContinuumDaoFetchProposalInputSchema, mcpContinuumDaoFetchProposalOutputSchema, mcpContinuumDaoFetchProposalStateInputSchema, mcpContinuumDaoFetchProposalStateOutputSchema, mcpContinuumDaoFetchProposalsInputSchema, mcpContinuumDaoFetchProposalsOutputSchema, mcpContinuumDaoFetchVotingPowerInputSchema, mcpContinuumDaoFetchVotingPowerOutputSchema, mcpContinuumDaoForumCreateIdeaInputSchema, mcpContinuumDaoForumCreateIdeaOutputSchema, mcpContinuumDaoForumCreateTopicInputSchema, mcpContinuumDaoForumCreateTopicOutputSchema, mcpContinuumDaoForumDeleteInputSchema, mcpContinuumDaoForumDeleteOutputSchema, mcpContinuumDaoForumFetchPostInputSchema, mcpContinuumDaoForumFetchPostOutputSchema, mcpContinuumDaoForumFetchThreadInputSchema, mcpContinuumDaoForumFetchThreadOutputSchema, mcpContinuumDaoForumMarkReadInputSchema, mcpContinuumDaoForumMarkReadOutputSchema, mcpContinuumDaoForumMarkUnreadInputSchema, mcpContinuumDaoForumMarkUnreadOutputSchema, mcpContinuumDaoForumMeInputSchema, mcpContinuumDaoForumMeOutputSchema, mcpContinuumDaoForumReactInputSchema, mcpContinuumDaoForumReactOutputSchema, mcpContinuumDaoForumRecentInputSchema, mcpContinuumDaoForumRecentOutputSchema, mcpContinuumDaoForumReplyCountInputSchema, mcpContinuumDaoForumReplyCountOutputSchema, mcpContinuumDaoForumReplyInputSchema, mcpContinuumDaoForumReplyOutputSchema, mcpContinuumDaoForumResolveInputSchema, mcpContinuumDaoForumResolveOutputSchema, mcpContinuumDaoForumSearchInputSchema, mcpContinuumDaoForumSearchOutputSchema, mcpContinuumDaoForumSectionsInputSchema, mcpContinuumDaoForumSectionsOutputSchema, mcpContinuumDaoForumSignInEligibleInputSchema, mcpContinuumDaoForumSignInEligibleOutputSchema, mcpContinuumDaoForumSignInInputSchema, mcpContinuumDaoForumSignOutInputSchema, mcpContinuumDaoForumSignOutOutputSchema, mcpContinuumDaoForumUnreadInputSchema, mcpContinuumDaoForumUnreadOutputSchema, mcpContinuumDaoForumUserPostIdsInputSchema, mcpContinuumDaoForumUserPostIdsOutputSchema, mcpContinuumDaoIncreaseAmountInputSchema, mcpContinuumDaoIncreaseUnlockTimeInputSchema, mcpContinuumDaoMergeInputSchema, mcpContinuumDaoProposalIdInputSchema, mcpContinuumDaoProposeBravoInputSchema, mcpContinuumDaoProposeDeltaInputSchema, mcpContinuumDaoRegisterProposalInputSchema, mcpContinuumDaoRegisterProposalOutputSchema, mcpContinuumDaoRequestDetachInputSchema, mcpContinuumDaoSplitInputSchema, mcpContinuumDaoTokenIdInputSchema, mcpContinuumDaoTransferInputSchema, mcpContinuumDaoUndelegateInputSchema, mcpCurveDaoBuildSwapMultisignInputSchema, mcpCurveDaoQuoteInputSchema, mcpCurveDaoQuoteOutputSchema, mcpEthenaClaimInputSchema, mcpEthenaCooldownInputSchema, mcpEthenaRedeemInputSchema, mcpEthenaStakeInputSchema, mcpEulerV2BorrowRepayInputSchema, mcpEulerV2CollateralDepositInputSchema, mcpEulerV2CollateralWithdrawInputSchema, mcpEulerV2FetchLendVaultsInputSchema, mcpEulerV2FetchLendVaultsOutputSchema, mcpEulerV2IsolatedBorrowInputSchema, mcpEulerV2IsolatedLendInputSchema, mcpEulerV2VaultWithdrawInputSchema, mcpGmxCancelInputSchema, mcpGmxDecreaseInputSchema, mcpGmxFetchGmApyInputSchema, mcpGmxFetchGmApyOutputSchema, mcpGmxFetchGmMarketsInputSchema, mcpGmxFetchGmMarketsOutputSchema, mcpGmxFetchMarketPricesInputSchema, mcpGmxFetchMarketPricesOutputSchema, mcpGmxFetchMarketsInputSchema, mcpGmxFetchMarketsOutputSchema, mcpGmxFetchOhlcvInputSchema, mcpGmxFetchOhlcvOutputSchema, mcpGmxFetchOrdersInputSchema, mcpGmxFetchOrdersOutputSchema, mcpGmxFetchPositionsInputSchema, mcpGmxFetchPositionsOutputSchema, mcpGmxFetchStakingPowerInputSchema, mcpGmxFetchStakingPowerOutputSchema, mcpGmxGmDepositInputSchema, mcpGmxGmWithdrawInputSchema, mcpGmxIncreaseInputSchema, mcpServerSubmitOutputSchema as mcpGmxMultisignOutputSchema, mcpGmxStakeGmxInputSchema, mcpGmxUnstakeGmxInputSchema, mcpHyperliquidBridgeDepositInputSchema, mcpHyperliquidBridgeWithdrawInputSchema, mcpHyperliquidCancelInputSchema, mcpHyperliquidCloseInputSchema, mcpHyperliquidDelegateInputSchema, mcpHyperliquidFetchDelegationsInputSchema, mcpHyperliquidFetchDelegationsOutputSchema, mcpHyperliquidFetchMarketSnapshotInputSchema, mcpHyperliquidFetchMarketSnapshotOutputSchema, mcpHyperliquidFetchMarketsInputSchema, mcpHyperliquidFetchMarketsOutputSchema, mcpHyperliquidFetchOhlcvInputSchema, mcpHyperliquidFetchOhlcvOutputSchema, mcpHyperliquidFetchOpenContextInputSchema, mcpHyperliquidFetchOpenContextOutputSchema, mcpHyperliquidFetchOpenOrdersInputSchema, mcpHyperliquidFetchOpenOrdersOutputSchema, mcpHyperliquidFetchPositionsInputSchema, mcpHyperliquidFetchPositionsOutputSchema, mcpHyperliquidFetchStakingSummaryInputSchema, mcpHyperliquidFetchStakingSummaryOutputSchema, mcpHyperliquidFetchUsdClassBalancesInputSchema, mcpHyperliquidFetchUsdClassBalancesOutputSchema, mcpHyperliquidFetchUserVaultEquitiesInputSchema, mcpHyperliquidFetchUserVaultEquitiesOutputSchema, mcpHyperliquidFetchVaultsInputSchema, mcpHyperliquidFetchVaultsOutputSchema, mcpHyperliquidLimitOrderInputSchema, mcpHyperliquidSearchMarketsInputSchema, mcpHyperliquidSearchMarketsOutputSchema, mcpHyperliquidStakeInputSchema, mcpHyperliquidUndelegateInputSchema, mcpHyperliquidUnstakeInputSchema, mcpHyperliquidUpdateLeverageInputSchema, mcpHyperliquidUsdTransferInputSchema, mcpHyperliquidVaultDepositInputSchema, mcpHyperliquidVaultWithdrawInputSchema, mcpLidoClaimWithdrawalInputSchema, mcpLidoRequestWithdrawalsInputSchema, mcpLidoSubmitInputSchema, mcpLidoUnwrapWstEthInputSchema, mcpLidoWrapStEthInputSchema, mcpMapleDepositInputSchema, mcpMapleRequestRedeemInputSchema, mcpMorphoBlueBorrowInputSchema, mcpMorphoBlueCollateralDepositInputSchema, mcpMorphoBlueCollateralWithdrawInputSchema, mcpMorphoBlueRepayInputSchema, mcpMorphoFetchBlueMarketsInputSchema, mcpMorphoFetchBlueMarketsOutputSchema, mcpMorphoFetchEarnVaultsInputSchema, mcpMorphoFetchEarnVaultsOutputSchema, mcpMorphoFetchMidnightBooksInputSchema, mcpMorphoFetchMidnightBooksOutputSchema, mcpMorphoFetchMidnightOffersInputSchema, mcpMorphoFetchMidnightOffersOutputSchema, mcpMorphoFetchMidnightPositionsInputSchema, mcpMorphoFetchMidnightPositionsOutputSchema, mcpMorphoFetchMidnightQuoteInputSchema, mcpMorphoFetchMidnightQuoteOutputSchema, mcpMorphoMerklClaimInputSchema, mcpMorphoMidnightBorrowInputSchema, mcpMorphoMidnightCancelLendOfferInputSchema, mcpMorphoMidnightLendInputSchema, mcpMorphoMidnightLendOfferInputSchema, mcpMorphoMidnightRepayInputSchema, mcpMorphoVaultDepositInputSchema, mcpMorphoVaultWithdrawInputSchema, mcpMultisignInput, multisignOutputSchema as mcpMultisignOutputSchema, mcpServerSubmitOutputSchema as mcpMultisignSubmitOutputSchema, mcpServerCommonInputSchema, mcpServerMultisignInput, mcpServerSubmitOutputSchema, mcpSkyLockstakeCloseInputSchema, mcpSkyLockstakeDrawInputSchema, mcpSkyLockstakeGetRewardInputSchema, mcpSkyLockstakeStakeInputSchema, mcpSkyLockstakeWipeInputSchema, mcpSkySusdsDepositInputSchema, mcpSkySusdsRedeemInputSchema, mcpUniswapV4BuildAllowlistFinalizeMultisignInputSchema, mcpUniswapV4BuildCollectFeesMultisignInputSchema, mcpUniswapV4BuildDecreaseLiquidityMultisignInputSchema, mcpUniswapV4BuildIncreaseLiquidityMultisignInputSchema, mcpUniswapV4BuildLimitOrderMultisignInputSchema, mcpUniswapV4BuildMintLiquidityMultisignInputSchema, mcpUniswapV4BuildSwapMultisignInputSchema, mcpUniswapV4CheckPermissionsInputSchema, mcpUniswapV4CheckPermissionsOutputSchema, mcpUniswapV4CreateSwapInputSchema, mcpUniswapV4CreateSwapOutputSchema, mcpUniswapV4FetchLimitOrdersInputSchema, mcpUniswapV4FetchLimitOrdersOutputSchema, mcpUniswapV4FetchOhlcvInputSchema, mcpUniswapV4FetchOhlcvOutputSchema, mcpUniswapV4KycApplyLinkInputSchema, mcpUniswapV4KycApplyLinkOutputSchema, mcpUniswapV4LimitOrderQuoteInputSchema, mcpUniswapV4LimitOrderQuoteOutputSchema, mcpUniswapV4LpClaimInputSchema, mcpUniswapV4LpClaimOutputSchema, mcpUniswapV4LpCreatePositionInputSchema, mcpUniswapV4LpCreatePositionOutputSchema, mcpUniswapV4LpDecreaseInputSchema, mcpUniswapV4LpDecreaseOutputSchema, mcpUniswapV4LpIncreaseInputSchema, mcpUniswapV4LpIncreaseOutputSchema, mcpUniswapV4LpListPoolsInputSchema, mcpUniswapV4LpListPoolsOutputSchema, mcpUniswapV4LpListPositionsInputSchema, mcpUniswapV4LpListPositionsOutputSchema, mcpUniswapV4QuoteInputSchema, mcpUniswapV4QuoteOutputSchema, mcpUniswapV4RegisterPositionFromMintTxInputSchema, mcpUniswapV4RegisterPositionFromMintTxOutputSchema, mcpUniswapV4RegisterPositionNftInputSchema, mcpUniswapV4RegisterPositionNftOutputSchema, mcpVeniceBurnDiemInputSchema, mcpVeniceCompleteUnstakeDiemInputSchema, mcpVeniceCompleteUnstakeSvvvInputSchema, mcpVeniceInitiateUnstakeDiemInputSchema, mcpVeniceInitiateUnstakeSvvvInputSchema, mcpVeniceListModelsInputSchema, mcpVeniceListModelsOutputSchema, mcpVeniceMintDiemInputSchema, mcpVeniceReadMintDiemPreviewInputSchema, mcpVeniceReadMintDiemPreviewOutputSchema, mcpVeniceReadStakingStateInputSchema, mcpVeniceReadStakingStateOutputSchema, mcpVeniceStakeDiemInputSchema, mcpVeniceStakeVvvInputSchema, multisignOutputSchema, parseAgentBoolean, parseAgentEvmChainId, parseMcpToolInput, parseMcpToolOutput, parseMultisignBuilderOutput, uniswapQuoteTradeTypeSchema, zodSchemaToMcpJsonSchema };
10365
+ export { EVM_COMMON_PARAM_DOCS, MANAGEMENT_SIG_DOC, MCP_NON_SUBMIT_TOOL_NAMES, MCP_TOOL_DEFINITIONS, MCP_TOOL_INPUT_SCHEMAS, MCP_TOOL_OUTPUT_SCHEMAS, MULTISIGN_OUTPUT_DOC, MULTISIGN_SUBMIT_OUTPUT_DOC, PROTOCOL_SUPPORT_ADVISORS, chainDetailSchema, evmAddressSchema, evmMultisignCommonInputSchema, getActionsByChainCategory, getAgentCatalog, getAgentCatalogForMcp, getMcpToolByName, getMcpToolDefinitions, getMcpToolInputSchema, getMcpToolOutputSchema, getProtocolDiscoverySummary, getProtocolModules, getProtocolSkill, getProtocolSupportAdvisor, getToolsForProtocol, jsonObjectSchema, keyGenSchema, listProtocolSupportAdvisorIds, listProtocolsWithSkills, mcpAaveV4BorrowInputSchema, mcpAaveV4DepositInputSchema, mcpAaveV4FetchMarketInputSchema, mcpAaveV4FetchMarketOutputSchema, mcpAaveV4FetchMarketsInputSchema, mcpAaveV4FetchMarketsOutputSchema, mcpAaveV4RepayInputSchema, mcpAaveV4WithdrawInputSchema, mcpAerodromeBuildAddLiquidityMultisignInputSchema, mcpAerodromeBuildClBurnMultisignInputSchema, mcpAerodromeBuildClCollectFeesMultisignInputSchema, mcpAerodromeBuildClDecreaseMultisignInputSchema, mcpAerodromeBuildClIncreaseMultisignInputSchema, mcpAerodromeBuildClMintMultisignInputSchema, mcpAerodromeBuildClaimEmissionsMultisignInputSchema, mcpAerodromeBuildClaimFeesMultisignInputSchema, mcpAerodromeBuildGaugeStakeMultisignInputSchema, mcpAerodromeBuildGaugeUnstakeMultisignInputSchema, mcpAerodromeBuildRemoveLiquidityMultisignInputSchema, mcpAerodromeBuildSwapMultisignInputSchema, mcpAerodromeDiscoverPoolsInputSchema, mcpAerodromeDiscoverPoolsOutputSchema, mcpAerodromeFetchLpYieldsInputSchema, mcpAerodromeFetchLpYieldsOutputSchema, mcpAerodromeFetchPoolsInputSchema, mcpAerodromeFetchPoolsOutputSchema, mcpAerodromeFetchPositionsInputSchema, mcpAerodromeFetchPositionsOutputSchema, mcpAerodromeFetchStockLpYieldsInputSchema, mcpAerodromeFetchStockLpYieldsOutputSchema, mcpAerodromeQuoteAddLiquidityInputSchema, mcpAerodromeQuoteAddLiquidityOutputSchema, mcpAerodromeQuoteClDepositInputSchema, mcpAerodromeQuoteClDepositOutputSchema, mcpAerodromeQuoteInputSchema, mcpAerodromeQuoteOutputSchema, mcpArcusBuildCancelOrderMultisignInputSchema, mcpArcusBuildCloseMultisignInputSchema, mcpArcusBuildCreateApiKeyMultisignInputSchema, mcpArcusBuildDepositMultisignInputSchema, mcpArcusBuildPlaceOrderMultisignInputSchema, mcpArcusBuildSetLeverageMultisignInputSchema, mcpArcusBuildWithdrawMultisignInputSchema, mcpArcusFetchAccountInputSchema, mcpArcusFetchAccountOutputSchema, mcpArcusFetchMarketSnapshotInputSchema, mcpArcusFetchMarketSnapshotOutputSchema, mcpArcusFetchMarketsInputSchema, mcpArcusFetchMarketsOutputSchema, mcpArcusFetchOhlcvInputSchema, mcpArcusFetchOhlcvOutputSchema, mcpArcusFetchOpenContextInputSchema, mcpArcusFetchOpenContextOutputSchema, mcpArcusFetchOpenOrdersInputSchema, mcpArcusFetchOpenOrdersOutputSchema, mcpArcusFetchPositionsInputSchema, mcpArcusFetchPositionsOutputSchema, mcpArcusSearchMarketsInputSchema, mcpArcusSearchMarketsOutputSchema, mcpArcusSpotBuildRfqMultisignInputSchema, mcpArcusSpotFetchBalancesInputSchema, mcpArcusSpotFetchBalancesOutputSchema, mcpArcusSpotFetchMarketsInputSchema, mcpArcusSpotFetchMarketsOutputSchema, mcpArcusSpotFetchOhlcvInputSchema, mcpArcusSpotFetchOhlcvOutputSchema, mcpCompoundV3BulkerInputSchema, mcpCompoundV3ClaimRewardsInputSchema, mcpCompoundV3FetchAccountInputSchema, mcpCompoundV3FetchAccountOutputSchema, mcpCompoundV3FetchMarketInputSchema, mcpCompoundV3FetchMarketOutputSchema, mcpCompoundV3FetchMarketsInputSchema, mcpCompoundV3FetchMarketsOutputSchema, mcpCompoundV3RepayInputSchema, mcpCompoundV3SupplyInputSchema, mcpCompoundV3WithdrawInputSchema, mcpContinuumDaoAttachInputSchema, mcpContinuumDaoCastVoteBravoInputSchema, mcpContinuumDaoCastVoteDeltaInputSchema, mcpContinuumDaoCreateLockInputSchema, mcpContinuumDaoDelegateInputSchema, mcpContinuumDaoExplainProposalInputSchema, mcpContinuumDaoExplainProposalOutputSchema, mcpContinuumDaoFetchDelegatesInputSchema, mcpContinuumDaoFetchDelegatesOutputSchema, mcpContinuumDaoFetchLiveProposalsInputSchema, mcpContinuumDaoFetchLiveProposalsOutputSchema, mcpContinuumDaoFetchProposalInputSchema, mcpContinuumDaoFetchProposalOutputSchema, mcpContinuumDaoFetchProposalStateInputSchema, mcpContinuumDaoFetchProposalStateOutputSchema, mcpContinuumDaoFetchProposalsInputSchema, mcpContinuumDaoFetchProposalsOutputSchema, mcpContinuumDaoFetchVotingPowerInputSchema, mcpContinuumDaoFetchVotingPowerOutputSchema, mcpContinuumDaoForumCreateIdeaInputSchema, mcpContinuumDaoForumCreateIdeaOutputSchema, mcpContinuumDaoForumCreateTopicInputSchema, mcpContinuumDaoForumCreateTopicOutputSchema, mcpContinuumDaoForumDeleteInputSchema, mcpContinuumDaoForumDeleteOutputSchema, mcpContinuumDaoForumFetchPostInputSchema, mcpContinuumDaoForumFetchPostOutputSchema, mcpContinuumDaoForumFetchThreadInputSchema, mcpContinuumDaoForumFetchThreadOutputSchema, mcpContinuumDaoForumMarkReadInputSchema, mcpContinuumDaoForumMarkReadOutputSchema, mcpContinuumDaoForumMarkUnreadInputSchema, mcpContinuumDaoForumMarkUnreadOutputSchema, mcpContinuumDaoForumMeInputSchema, mcpContinuumDaoForumMeOutputSchema, mcpContinuumDaoForumReactInputSchema, mcpContinuumDaoForumReactOutputSchema, mcpContinuumDaoForumRecentInputSchema, mcpContinuumDaoForumRecentOutputSchema, mcpContinuumDaoForumReplyCountInputSchema, mcpContinuumDaoForumReplyCountOutputSchema, mcpContinuumDaoForumReplyInputSchema, mcpContinuumDaoForumReplyOutputSchema, mcpContinuumDaoForumResolveInputSchema, mcpContinuumDaoForumResolveOutputSchema, mcpContinuumDaoForumSearchInputSchema, mcpContinuumDaoForumSearchOutputSchema, mcpContinuumDaoForumSectionsInputSchema, mcpContinuumDaoForumSectionsOutputSchema, mcpContinuumDaoForumSignInEligibleInputSchema, mcpContinuumDaoForumSignInEligibleOutputSchema, mcpContinuumDaoForumSignInInputSchema, mcpContinuumDaoForumSignOutInputSchema, mcpContinuumDaoForumSignOutOutputSchema, mcpContinuumDaoForumUnreadInputSchema, mcpContinuumDaoForumUnreadOutputSchema, mcpContinuumDaoForumUserPostIdsInputSchema, mcpContinuumDaoForumUserPostIdsOutputSchema, mcpContinuumDaoIncreaseAmountInputSchema, mcpContinuumDaoIncreaseUnlockTimeInputSchema, mcpContinuumDaoMergeInputSchema, mcpContinuumDaoProposalIdInputSchema, mcpContinuumDaoProposeBravoInputSchema, mcpContinuumDaoProposeDeltaInputSchema, mcpContinuumDaoRegisterProposalInputSchema, mcpContinuumDaoRegisterProposalOutputSchema, mcpContinuumDaoRequestDetachInputSchema, mcpContinuumDaoSplitInputSchema, mcpContinuumDaoTokenIdInputSchema, mcpContinuumDaoTransferInputSchema, mcpContinuumDaoUndelegateInputSchema, mcpCurveDaoBuildAddLiquidityMultisignInputSchema, mcpCurveDaoBuildGaugeDepositMultisignInputSchema, mcpCurveDaoBuildRemoveLiquidityMultisignInputSchema, mcpCurveDaoBuildSwapMultisignInputSchema, mcpCurveDaoFetchImportantPoolsInputSchema, mcpCurveDaoFetchImportantPoolsOutputSchema, mcpCurveDaoFetchLpYieldsInputSchema, mcpCurveDaoFetchLpYieldsOutputSchema, mcpCurveDaoQuoteAddLiquidityInputSchema, mcpCurveDaoQuoteAddLiquidityOutputSchema, mcpCurveDaoQuoteInputSchema, mcpCurveDaoQuoteOutputSchema, mcpCurveDaoQuoteRemoveLiquidityInputSchema, mcpCurveDaoQuoteRemoveLiquidityOutputSchema, mcpEthenaClaimInputSchema, mcpEthenaCooldownInputSchema, mcpEthenaFetchSusdeApyInputSchema, mcpEthenaFetchSusdeApyOutputSchema, mcpEthenaRedeemInputSchema, mcpEthenaStakeInputSchema, mcpEulerV2BorrowRepayInputSchema, mcpEulerV2CollateralDepositInputSchema, mcpEulerV2CollateralWithdrawInputSchema, mcpEulerV2FetchEarnVaultsInputSchema, mcpEulerV2FetchEarnVaultsOutputSchema, mcpEulerV2FetchLendVaultsInputSchema, mcpEulerV2FetchLendVaultsOutputSchema, mcpEulerV2IsolatedBorrowInputSchema, mcpEulerV2IsolatedLendInputSchema, mcpEulerV2VaultWithdrawInputSchema, mcpGmxCancelInputSchema, mcpGmxDecreaseInputSchema, mcpGmxFetchGmApyInputSchema, mcpGmxFetchGmApyOutputSchema, mcpGmxFetchGmMarketsInputSchema, mcpGmxFetchGmMarketsOutputSchema, mcpGmxFetchMarketPricesInputSchema, mcpGmxFetchMarketPricesOutputSchema, mcpGmxFetchMarketsInputSchema, mcpGmxFetchMarketsOutputSchema, mcpGmxFetchOhlcvInputSchema, mcpGmxFetchOhlcvOutputSchema, mcpGmxFetchOrdersInputSchema, mcpGmxFetchOrdersOutputSchema, mcpGmxFetchPositionsInputSchema, mcpGmxFetchPositionsOutputSchema, mcpGmxFetchStakingPowerInputSchema, mcpGmxFetchStakingPowerOutputSchema, mcpGmxGmDepositInputSchema, mcpGmxGmWithdrawInputSchema, mcpGmxIncreaseInputSchema, mcpServerSubmitOutputSchema as mcpGmxMultisignOutputSchema, mcpGmxStakeGmxInputSchema, mcpGmxUnstakeGmxInputSchema, mcpHyperliquidBridgeDepositInputSchema, mcpHyperliquidBridgeWithdrawInputSchema, mcpHyperliquidCancelInputSchema, mcpHyperliquidCloseInputSchema, mcpHyperliquidDelegateInputSchema, mcpHyperliquidFetchDelegationsInputSchema, mcpHyperliquidFetchDelegationsOutputSchema, mcpHyperliquidFetchMarketSnapshotInputSchema, mcpHyperliquidFetchMarketSnapshotOutputSchema, mcpHyperliquidFetchMarketsInputSchema, mcpHyperliquidFetchMarketsOutputSchema, mcpHyperliquidFetchOhlcvInputSchema, mcpHyperliquidFetchOhlcvOutputSchema, mcpHyperliquidFetchOpenContextInputSchema, mcpHyperliquidFetchOpenContextOutputSchema, mcpHyperliquidFetchOpenOrdersInputSchema, mcpHyperliquidFetchOpenOrdersOutputSchema, mcpHyperliquidFetchPositionsInputSchema, mcpHyperliquidFetchPositionsOutputSchema, mcpHyperliquidFetchStakingSummaryInputSchema, mcpHyperliquidFetchStakingSummaryOutputSchema, mcpHyperliquidFetchStockMarketsInputSchema, mcpHyperliquidFetchStockMarketsOutputSchema, mcpHyperliquidFetchUsdClassBalancesInputSchema, mcpHyperliquidFetchUsdClassBalancesOutputSchema, mcpHyperliquidFetchUserVaultEquitiesInputSchema, mcpHyperliquidFetchUserVaultEquitiesOutputSchema, mcpHyperliquidFetchVaultApysInputSchema, mcpHyperliquidFetchVaultApysOutputSchema, mcpHyperliquidFetchVaultsInputSchema, mcpHyperliquidFetchVaultsOutputSchema, mcpHyperliquidLimitOrderInputSchema, mcpHyperliquidSearchMarketsInputSchema, mcpHyperliquidSearchMarketsOutputSchema, mcpHyperliquidStakeInputSchema, mcpHyperliquidUndelegateInputSchema, mcpHyperliquidUnstakeInputSchema, mcpHyperliquidUpdateLeverageInputSchema, mcpHyperliquidUsdTransferInputSchema, mcpHyperliquidVaultDepositInputSchema, mcpHyperliquidVaultWithdrawInputSchema, mcpLidoClaimWithdrawalInputSchema, mcpLidoFetchStethAprInputSchema, mcpLidoFetchStethAprOutputSchema, mcpLidoRequestWithdrawalsInputSchema, mcpLidoSubmitInputSchema, mcpLidoUnwrapWstEthInputSchema, mcpLidoWrapStEthInputSchema, mcpMapleDepositInputSchema, mcpMapleFetchMarketInputSchema, mcpMapleFetchMarketOutputSchema, mcpMapleFetchMarketsInputSchema, mcpMapleFetchMarketsOutputSchema, mcpMapleRequestRedeemInputSchema, mcpMorphoBlueBorrowInputSchema, mcpMorphoBlueCollateralDepositInputSchema, mcpMorphoBlueCollateralWithdrawInputSchema, mcpMorphoBlueRepayInputSchema, mcpMorphoFetchBlueMarketsInputSchema, mcpMorphoFetchBlueMarketsOutputSchema, mcpMorphoFetchEarnVaultsInputSchema, mcpMorphoFetchEarnVaultsOutputSchema, mcpMorphoFetchMidnightBooksInputSchema, mcpMorphoFetchMidnightBooksOutputSchema, mcpMorphoFetchMidnightOffersInputSchema, mcpMorphoFetchMidnightOffersOutputSchema, mcpMorphoFetchMidnightPositionsInputSchema, mcpMorphoFetchMidnightPositionsOutputSchema, mcpMorphoFetchMidnightQuoteInputSchema, mcpMorphoFetchMidnightQuoteOutputSchema, mcpMorphoMerklClaimInputSchema, mcpMorphoMidnightBorrowInputSchema, mcpMorphoMidnightCancelLendOfferInputSchema, mcpMorphoMidnightLendInputSchema, mcpMorphoMidnightLendOfferInputSchema, mcpMorphoMidnightRepayInputSchema, mcpMorphoVaultDepositInputSchema, mcpMorphoVaultWithdrawInputSchema, mcpMultisignInput, multisignOutputSchema as mcpMultisignOutputSchema, mcpServerSubmitOutputSchema as mcpMultisignSubmitOutputSchema, mcpServerCommonInputSchema, mcpServerMultisignInput, mcpServerSubmitOutputSchema, mcpSkyFetchSusdsRateInputSchema, mcpSkyFetchSusdsRateOutputSchema, mcpSkyLockstakeCloseInputSchema, mcpSkyLockstakeDrawInputSchema, mcpSkyLockstakeGetRewardInputSchema, mcpSkyLockstakeStakeInputSchema, mcpSkyLockstakeWipeInputSchema, mcpSkySusdsDepositInputSchema, mcpSkySusdsRedeemInputSchema, mcpUniswapV4BuildAllowlistFinalizeMultisignInputSchema, mcpUniswapV4BuildCollectFeesMultisignInputSchema, mcpUniswapV4BuildDecreaseLiquidityMultisignInputSchema, mcpUniswapV4BuildIncreaseLiquidityMultisignInputSchema, mcpUniswapV4BuildLimitOrderMultisignInputSchema, mcpUniswapV4BuildMintLiquidityMultisignInputSchema, mcpUniswapV4BuildSwapMultisignInputSchema, mcpUniswapV4CheckPermissionsInputSchema, mcpUniswapV4CheckPermissionsOutputSchema, mcpUniswapV4CreateSwapInputSchema, mcpUniswapV4CreateSwapOutputSchema, mcpUniswapV4FetchLimitOrdersInputSchema, mcpUniswapV4FetchLimitOrdersOutputSchema, mcpUniswapV4FetchOhlcvInputSchema, mcpUniswapV4FetchOhlcvOutputSchema, mcpUniswapV4KycApplyLinkInputSchema, mcpUniswapV4KycApplyLinkOutputSchema, mcpUniswapV4LimitOrderQuoteInputSchema, mcpUniswapV4LimitOrderQuoteOutputSchema, mcpUniswapV4LpClaimInputSchema, mcpUniswapV4LpClaimOutputSchema, mcpUniswapV4LpCreatePositionInputSchema, mcpUniswapV4LpCreatePositionOutputSchema, mcpUniswapV4LpDecreaseInputSchema, mcpUniswapV4LpDecreaseOutputSchema, mcpUniswapV4LpIncreaseInputSchema, mcpUniswapV4LpIncreaseOutputSchema, mcpUniswapV4LpListPoolsInputSchema, mcpUniswapV4LpListPoolsOutputSchema, mcpUniswapV4LpListPositionsInputSchema, mcpUniswapV4LpListPositionsOutputSchema, mcpUniswapV4QuoteInputSchema, mcpUniswapV4QuoteOutputSchema, mcpUniswapV4RegisterPositionFromMintTxInputSchema, mcpUniswapV4RegisterPositionFromMintTxOutputSchema, mcpUniswapV4RegisterPositionNftInputSchema, mcpUniswapV4RegisterPositionNftOutputSchema, mcpVeniceBurnDiemInputSchema, mcpVeniceCompleteUnstakeDiemInputSchema, mcpVeniceCompleteUnstakeSvvvInputSchema, mcpVeniceInitiateUnstakeDiemInputSchema, mcpVeniceInitiateUnstakeSvvvInputSchema, mcpVeniceListModelsInputSchema, mcpVeniceListModelsOutputSchema, mcpVeniceMintDiemInputSchema, mcpVeniceReadMintDiemPreviewInputSchema, mcpVeniceReadMintDiemPreviewOutputSchema, mcpVeniceReadStakingStateInputSchema, mcpVeniceReadStakingStateOutputSchema, mcpVeniceStakeDiemInputSchema, mcpVeniceStakeVvvInputSchema, multisignOutputSchema, parseAgentBoolean, parseAgentEvmChainId, parseMcpToolInput, parseMcpToolOutput, parseMultisignBuilderOutput, uniswapQuoteTradeTypeSchema, zodSchemaToMcpJsonSchema };
9733
10366
  //# sourceMappingURL=catalog.js.map
9734
10367
  //# sourceMappingURL=catalog.js.map