@continuumdao/ctm-mpc-defi 0.2.48 → 0.2.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/catalog.cjs +1664 -5
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +2705 -7
- package/dist/agent/catalog.js +1599 -6
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/derive/SKILL.md +112 -0
- package/dist/agent/skills/hyperliquid/SKILL.md +22 -2
- package/dist/agent/skills/trueo/SKILL.md +64 -0
- package/dist/chains/evm/index.d.ts +118 -6
- package/dist/chains/near/index.d.ts +7 -1
- package/dist/chains/solana/index.d.ts +7 -1
- package/dist/core/index.cjs +3 -1
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.ts +138 -7
- package/dist/core/index.js +3 -1
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +3 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +848 -16
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.d.ts +600 -6
- package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
- package/dist/protocols/evm/aerodrome/index.d.ts +125 -5
- package/dist/protocols/evm/aerodrome/index.js.map +1 -1
- package/dist/protocols/evm/arcus/index.d.ts +66 -2
- package/dist/protocols/evm/circle-cctp/index.d.ts +71 -2
- package/dist/protocols/evm/compound-v3/index.d.ts +52 -1
- package/dist/protocols/evm/continuum-dao/index.d.ts +56 -1
- package/dist/protocols/evm/curve-dao/index.d.ts +66 -2
- package/dist/protocols/evm/derive/index.cjs +2655 -0
- package/dist/protocols/evm/derive/index.cjs.map +1 -0
- package/dist/protocols/evm/derive/index.d.ts +859 -0
- package/dist/protocols/evm/derive/index.js +2536 -0
- package/dist/protocols/evm/derive/index.js.map +1 -0
- package/dist/protocols/evm/ethena/index.d.ts +52 -1
- package/dist/protocols/evm/euler-v2/index.d.ts +115 -16
- package/dist/protocols/evm/gmx/index.d.ts +66 -2
- package/dist/protocols/evm/hyperliquid/index.cjs +545 -267
- package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.d.ts +152 -7
- package/dist/protocols/evm/hyperliquid/index.js +535 -269
- package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.d.ts +52 -1
- package/dist/protocols/evm/maple/index.d.ts +52 -1
- package/dist/protocols/evm/morpho/index.d.ts +115 -4
- package/dist/protocols/evm/pendle/index.cjs +3 -1
- package/dist/protocols/evm/pendle/index.cjs.map +1 -1
- package/dist/protocols/evm/pendle/index.d.ts +125 -5
- package/dist/protocols/evm/pendle/index.js +3 -1
- package/dist/protocols/evm/pendle/index.js.map +1 -1
- package/dist/protocols/evm/permit2/index.d.ts +14 -1
- package/dist/protocols/evm/sky/index.d.ts +52 -1
- package/dist/protocols/evm/trueo/index.cjs +2308 -0
- package/dist/protocols/evm/trueo/index.cjs.map +1 -0
- package/dist/protocols/evm/trueo/index.d.ts +1254 -0
- package/dist/protocols/evm/trueo/index.js +2165 -0
- package/dist/protocols/evm/trueo/index.js.map +1 -0
- package/dist/protocols/evm/uniswap-v4/index.d.ts +78 -4
- package/dist/protocols/evm/venice/index.d.ts +52 -1
- package/package.json +12 -2
- package/dist/buildBatch-tsEUVn_a.d.ts +0 -45
- package/dist/eip712Multisign-6oNIlObj.d.ts +0 -39
- package/dist/envelope-Cm-llShH.d.ts +0 -37
- package/dist/merklDistributor-CdqtZC9N.d.ts +0 -65
- package/dist/multisign-Dr0j9fHm.d.ts +0 -489
- package/dist/registry-BvsXh0-r.d.ts +0 -8
- package/dist/types-RJpoU4Pc.d.ts +0 -34
- package/dist/types-lIfv59N1.d.ts +0 -63
package/dist/agent/catalog.js
CHANGED
|
@@ -2,6 +2,7 @@ import { getAddress, parseAbi, stringToHex, keccak256, toBytes, isAddress, zeroA
|
|
|
2
2
|
import { MidnightApi } from '@morpho-org/midnight-sdk/api';
|
|
3
3
|
import { zodToJsonSchema } from 'zod-to-json-schema';
|
|
4
4
|
import { z } from 'zod';
|
|
5
|
+
import '@msgpack/msgpack';
|
|
5
6
|
import { createRequire } from 'module';
|
|
6
7
|
import { fileURLToPath } from 'url';
|
|
7
8
|
import { readFileSync } from 'fs';
|
|
@@ -1299,6 +1300,14 @@ function aliasField(o, target, ...sources) {
|
|
|
1299
1300
|
const val = firstDefined(...sources.map((k) => o[k]));
|
|
1300
1301
|
if (val != null) o[target] = val;
|
|
1301
1302
|
}
|
|
1303
|
+
function normalizeHyperliquidTrailingOffsetType(o) {
|
|
1304
|
+
const raw = String(o.trailingOffsetType ?? "").trim().toLowerCase();
|
|
1305
|
+
if (!raw) return;
|
|
1306
|
+
if (raw === "price" || raw === "px" || raw === "distance") o.trailingOffsetType = "price";
|
|
1307
|
+
else if (raw === "percentage" || raw === "percent" || raw === "pct" || raw === "%") {
|
|
1308
|
+
o.trailingOffsetType = "percentage";
|
|
1309
|
+
}
|
|
1310
|
+
}
|
|
1302
1311
|
function derivePurposeIfMissing(o, build) {
|
|
1303
1312
|
const purposeText = String(o.purposeText ?? o.purpose ?? "").trim();
|
|
1304
1313
|
if (purposeText) {
|
|
@@ -1375,18 +1384,40 @@ function preprocessHyperliquidLimitOrderInput(raw) {
|
|
|
1375
1384
|
aliasField(o, "szHuman", "szHuman", "sz", "size");
|
|
1376
1385
|
aliasField(o, "takeProfitTriggerPxHuman", "takeProfitTriggerPxHuman", "takeProfitPxHuman", "tpTriggerPxHuman", "targetPxHuman");
|
|
1377
1386
|
aliasField(o, "stopLossTriggerPxHuman", "stopLossTriggerPxHuman", "stopLossPxHuman", "slTriggerPxHuman", "invalidationPxHuman");
|
|
1387
|
+
aliasField(o, "trailingOffsetHuman", "trailingOffsetHuman", "retracement", "trailingOffset");
|
|
1388
|
+
aliasField(o, "trailingOffsetType", "trailingOffsetType", "retracementUnit", "offsetType");
|
|
1389
|
+
aliasField(o, "trailingActivationPxHuman", "trailingActivationPxHuman", "activationPx", "activationPrice");
|
|
1390
|
+
normalizeHyperliquidTrailingOffsetType(o);
|
|
1378
1391
|
derivePurposeIfMissing(o, (x) => {
|
|
1379
1392
|
const coin = String(x.coin ?? "").trim();
|
|
1380
1393
|
const side = x.isBuy === true || x.isBuy === "true" ? "buy" : "sell";
|
|
1381
1394
|
const sz = String(x.szHuman ?? "").trim();
|
|
1382
1395
|
const tp = String(x.takeProfitTriggerPxHuman ?? "").trim();
|
|
1383
1396
|
const sl = String(x.stopLossTriggerPxHuman ?? "").trim();
|
|
1397
|
+
const trail = String(x.trailingOffsetHuman ?? "").trim();
|
|
1398
|
+
if (coin && sz && trail) return `HL trailing ${side} ${coin} ${sz}`;
|
|
1384
1399
|
if (coin && sz && (tp || sl)) return `HL bracket ${side} ${coin} ${sz}`;
|
|
1385
1400
|
if (coin && sz) return `HL limit ${side} ${coin} ${sz}`;
|
|
1386
1401
|
return void 0;
|
|
1387
1402
|
});
|
|
1388
1403
|
return o;
|
|
1389
1404
|
}
|
|
1405
|
+
function preprocessHyperliquidTrailingStopInput(raw) {
|
|
1406
|
+
const o = preprocessHyperliquidCoinInput(raw);
|
|
1407
|
+
if (!preprocessObject(o)) return raw;
|
|
1408
|
+
aliasField(o, "szHuman", "szHuman", "sz", "size");
|
|
1409
|
+
aliasField(o, "trailingOffsetHuman", "trailingOffsetHuman", "retracement", "trailingOffset");
|
|
1410
|
+
aliasField(o, "trailingOffsetType", "trailingOffsetType", "retracementUnit", "offsetType");
|
|
1411
|
+
aliasField(o, "trailingActivationPxHuman", "trailingActivationPxHuman", "activationPx", "activationPrice");
|
|
1412
|
+
normalizeHyperliquidTrailingOffsetType(o);
|
|
1413
|
+
derivePurposeIfMissing(o, (x) => {
|
|
1414
|
+
const coin = String(x.coin ?? "").trim();
|
|
1415
|
+
const offset = String(x.trailingOffsetHuman ?? "").trim();
|
|
1416
|
+
if (coin && offset) return `HL trailing stop ${coin} ${offset}`;
|
|
1417
|
+
return void 0;
|
|
1418
|
+
});
|
|
1419
|
+
return o;
|
|
1420
|
+
}
|
|
1390
1421
|
function preprocessHyperliquidCloseInput(raw) {
|
|
1391
1422
|
const o = preprocessHyperliquidCoinInput(raw);
|
|
1392
1423
|
if (!preprocessObject(o)) return raw;
|
|
@@ -2713,7 +2744,15 @@ var MCP_NON_SUBMIT_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
|
2713
2744
|
"ctm_uniswap_v4_limit_order_quote",
|
|
2714
2745
|
"ctm_uniswap_v4_fetch_limit_orders",
|
|
2715
2746
|
"ctm_uniswap_v4_check_permissions",
|
|
2716
|
-
"ctm_uniswap_v4_kyc_apply_link"
|
|
2747
|
+
"ctm_uniswap_v4_kyc_apply_link",
|
|
2748
|
+
"search_prediction_markets",
|
|
2749
|
+
"get_prediction_market",
|
|
2750
|
+
"ctm_trueo_fetch_categories",
|
|
2751
|
+
"ctm_trueo_fetch_trending",
|
|
2752
|
+
"ctm_trueo_search_markets",
|
|
2753
|
+
"ctm_trueo_fetch_market",
|
|
2754
|
+
"ctm_trueo_fetch_chance_series",
|
|
2755
|
+
"ctm_trueo_fetch_orderbook"
|
|
2717
2756
|
]);
|
|
2718
2757
|
|
|
2719
2758
|
// src/agent/schemas/protocols.ts
|
|
@@ -4569,6 +4608,34 @@ var mcpGmxFetchOhlcvOutputSchema = z.object({
|
|
|
4569
4608
|
candleCount: z.number().int().nonnegative(),
|
|
4570
4609
|
candles: z.array(gmxOhlcvCandleSchema)
|
|
4571
4610
|
});
|
|
4611
|
+
function hyperliquidFloatToWire(value) {
|
|
4612
|
+
const n = typeof value === "number" ? value : Number.parseFloat(String(value).trim());
|
|
4613
|
+
if (!Number.isFinite(n)) throw new Error("Invalid Hyperliquid wire number.");
|
|
4614
|
+
const rounded = n.toFixed(8);
|
|
4615
|
+
if (Math.abs(Number.parseFloat(rounded) - n) >= 1e-12) {
|
|
4616
|
+
throw new Error(`Hyperliquid wire value ${value} has too many decimal places.`);
|
|
4617
|
+
}
|
|
4618
|
+
const normalized = Number(rounded === "-0" ? "0" : rounded);
|
|
4619
|
+
return String(normalized);
|
|
4620
|
+
}
|
|
4621
|
+
var HYPERLIQUID_TRAILING_ACTIVATION_PX_ERROR = "Invalid trailing activation price.";
|
|
4622
|
+
var POSITIVE_DECIMAL_RE = /^\d+(\.\d+)?$/;
|
|
4623
|
+
function parseHyperliquidTrailingActivationPx(value) {
|
|
4624
|
+
if (value == null) return null;
|
|
4625
|
+
const raw = String(value).trim().replace(/,/g, "");
|
|
4626
|
+
if (!raw) return null;
|
|
4627
|
+
if (!POSITIVE_DECIMAL_RE.test(raw)) {
|
|
4628
|
+
throw new Error(HYPERLIQUID_TRAILING_ACTIVATION_PX_ERROR);
|
|
4629
|
+
}
|
|
4630
|
+
const px = Number.parseFloat(raw);
|
|
4631
|
+
if (!Number.isFinite(px) || px <= 0) {
|
|
4632
|
+
throw new Error(HYPERLIQUID_TRAILING_ACTIVATION_PX_ERROR);
|
|
4633
|
+
}
|
|
4634
|
+
hyperliquidFloatToWire(raw);
|
|
4635
|
+
return raw;
|
|
4636
|
+
}
|
|
4637
|
+
|
|
4638
|
+
// src/agent/schemas/hyperliquid.ts
|
|
4572
4639
|
function mcpHyperliquidMultisignInput(fields, preprocess) {
|
|
4573
4640
|
const inner = evmMultisignCommonInputSchema.extend(fields);
|
|
4574
4641
|
const shaped = preprocess ? z.preprocess(preprocess, inner) : inner;
|
|
@@ -4716,7 +4783,16 @@ var mcpHyperliquidFetchOpenOrdersOutputSchema = z.object({
|
|
|
4716
4783
|
sz: z.string(),
|
|
4717
4784
|
oid: z.number().describe("Pass to build_cancel_multisign as oid"),
|
|
4718
4785
|
timestamp: z.number(),
|
|
4719
|
-
reduceOnly: z.boolean().optional()
|
|
4786
|
+
reduceOnly: z.boolean().optional(),
|
|
4787
|
+
isTrigger: z.boolean().optional(),
|
|
4788
|
+
triggerPx: z.string().optional(),
|
|
4789
|
+
triggerCondition: z.string().optional(),
|
|
4790
|
+
orderType: z.string().optional(),
|
|
4791
|
+
trailingStop: z.object({
|
|
4792
|
+
retracement: z.string(),
|
|
4793
|
+
activationPx: z.string().nullable(),
|
|
4794
|
+
bestPx: z.string().nullable()
|
|
4795
|
+
}).nullable().optional()
|
|
4720
4796
|
})
|
|
4721
4797
|
)
|
|
4722
4798
|
});
|
|
@@ -4841,6 +4917,16 @@ var mcpHyperliquidFetchDelegationsOutputSchema = z.object({
|
|
|
4841
4917
|
)
|
|
4842
4918
|
});
|
|
4843
4919
|
var hyperliquidTpslExecModeSchema = z.enum(["limit_at_trigger", "market"]);
|
|
4920
|
+
var mcpHyperliquidTrailingActivationPxSchema = z.string().min(1).optional().superRefine((value, ctx) => {
|
|
4921
|
+
try {
|
|
4922
|
+
parseHyperliquidTrailingActivationPx(value);
|
|
4923
|
+
} catch (e) {
|
|
4924
|
+
ctx.addIssue({
|
|
4925
|
+
code: z.ZodIssueCode.custom,
|
|
4926
|
+
message: e instanceof Error ? e.message : "Invalid trailing activation price."
|
|
4927
|
+
});
|
|
4928
|
+
}
|
|
4929
|
+
}).describe("Optional mark price where trailing tracking begins. Omit to start immediately.");
|
|
4844
4930
|
var mcpHyperliquidLimitOrderInputSchema = mcpHyperliquidMultisignInput(
|
|
4845
4931
|
{
|
|
4846
4932
|
coin: z.string().min(1).describe("coin from fetch_markets (name) or search_markets"),
|
|
@@ -4852,10 +4938,30 @@ var mcpHyperliquidLimitOrderInputSchema = mcpHyperliquidMultisignInput(
|
|
|
4852
4938
|
dex: z.string().optional(),
|
|
4853
4939
|
takeProfitTriggerPxHuman: z.string().min(1).optional().describe("Take-profit trigger price \u2014 with SL enables L1 normalTpsl bracket (EIP-712, not CoreWriter)."),
|
|
4854
4940
|
stopLossTriggerPxHuman: z.string().min(1).optional().describe("Stop-loss trigger price \u2014 with TP enables L1 normalTpsl bracket (EIP-712, not CoreWriter)."),
|
|
4855
|
-
tpslExecMode: hyperliquidTpslExecModeSchema.optional().describe("Trigger execution: limit_at_trigger (default) or market.")
|
|
4941
|
+
tpslExecMode: hyperliquidTpslExecModeSchema.optional().describe("Trigger execution: limit_at_trigger (default) or market."),
|
|
4942
|
+
trailingOffsetHuman: z.string().min(1).optional().describe(
|
|
4943
|
+
"Trailing-stop retracement (price distance or percent). Cannot combine with stopLossTriggerPxHuman. Perp only \u2014 EIP-712 /exchange."
|
|
4944
|
+
),
|
|
4945
|
+
trailingOffsetType: z.enum(["price", "percentage"]).optional().describe("price = fixed distance; percentage = retracement rate (default)."),
|
|
4946
|
+
trailingActivationPxHuman: mcpHyperliquidTrailingActivationPxSchema
|
|
4856
4947
|
},
|
|
4857
4948
|
preprocessHyperliquidLimitOrderInput
|
|
4858
4949
|
);
|
|
4950
|
+
var mcpHyperliquidTrailingStopInputSchema = mcpHyperliquidMultisignInput(
|
|
4951
|
+
{
|
|
4952
|
+
coin: z.string().min(1).describe("perp coin from fetch_markets or fetch_positions"),
|
|
4953
|
+
isBuy: agentBooleanSchema().describe(
|
|
4954
|
+
"Execution side: false to close a long / open a short; true to close a short / open a long."
|
|
4955
|
+
),
|
|
4956
|
+
szHuman: z.string().min(1).describe("Size in coin units (use position size to close)."),
|
|
4957
|
+
reduceOnly: agentBooleanSchema().optional().describe("true (default) closes/reduces; false can open a position."),
|
|
4958
|
+
trailingOffsetHuman: z.string().min(1).describe("Retracement distance or percent (e.g. 2 or 2%)."),
|
|
4959
|
+
trailingOffsetType: z.enum(["price", "percentage"]).optional().describe("price = fixed distance; percentage = retracement rate (default)."),
|
|
4960
|
+
trailingActivationPxHuman: mcpHyperliquidTrailingActivationPxSchema,
|
|
4961
|
+
dex: z.string().optional()
|
|
4962
|
+
},
|
|
4963
|
+
preprocessHyperliquidTrailingStopInput
|
|
4964
|
+
);
|
|
4859
4965
|
var mcpHyperliquidCloseInputSchema = mcpHyperliquidMultisignInput(
|
|
4860
4966
|
{
|
|
4861
4967
|
coin: z.string().min(1),
|
|
@@ -5187,6 +5293,512 @@ var mcpArcusBuildWithdrawMultisignInputSchema = withMultisignKeySourceRefine(
|
|
|
5187
5293
|
product: arcusFundProductSchema
|
|
5188
5294
|
})
|
|
5189
5295
|
);
|
|
5296
|
+
var mcpTrueoFetchCategoriesInputSchema = z.object({}).passthrough();
|
|
5297
|
+
var mcpTrueoFetchCategoriesOutputSchema = z.object({
|
|
5298
|
+
categories: z.array(z.object({ id: z.number(), name: z.string() })),
|
|
5299
|
+
chainId: z.number()
|
|
5300
|
+
});
|
|
5301
|
+
var mcpTrueoMarketRowSchema = z.object({
|
|
5302
|
+
address: z.string(),
|
|
5303
|
+
question: z.string(),
|
|
5304
|
+
rules: z.string(),
|
|
5305
|
+
source: z.string(),
|
|
5306
|
+
categories: z.array(z.string()),
|
|
5307
|
+
size: z.string(),
|
|
5308
|
+
tvl: z.number().nullable(),
|
|
5309
|
+
yesTokenAddress: z.string(),
|
|
5310
|
+
noTokenAddress: z.string(),
|
|
5311
|
+
yesPoolAddress: z.string(),
|
|
5312
|
+
noPoolAddress: z.string(),
|
|
5313
|
+
paymentTokenAddress: z.string(),
|
|
5314
|
+
paymentTokenSymbol: z.string(),
|
|
5315
|
+
paymentTokenDecimals: z.number(),
|
|
5316
|
+
endOfTrading: z.number(),
|
|
5317
|
+
status: z.number(),
|
|
5318
|
+
outcome: z.number().optional(),
|
|
5319
|
+
statusUpdatedAt: z.string().nullable().optional(),
|
|
5320
|
+
imageUrl: z.string().nullable(),
|
|
5321
|
+
yesPoolTick: z.number().nullable(),
|
|
5322
|
+
noPoolTick: z.number().nullable(),
|
|
5323
|
+
yesPoolSqrtPriceX96: z.string().nullable(),
|
|
5324
|
+
noPoolSqrtPriceX96: z.string().nullable(),
|
|
5325
|
+
yesPrice: z.number().nullable(),
|
|
5326
|
+
noPrice: z.number().nullable(),
|
|
5327
|
+
yesPriceLabel: z.string().nullable(),
|
|
5328
|
+
noPriceLabel: z.string().nullable(),
|
|
5329
|
+
expiresAt: z.string().nullable(),
|
|
5330
|
+
expiresAtLabel: z.string().nullable(),
|
|
5331
|
+
chainId: z.number(),
|
|
5332
|
+
network: z.string()
|
|
5333
|
+
});
|
|
5334
|
+
var mcpTrueoFetchTrendingInputSchema = z.object({
|
|
5335
|
+
limit: z.number().int().positive().optional(),
|
|
5336
|
+
includeAll: agentOptionalBooleanSchema().describe(
|
|
5337
|
+
"If true, include older closed/resolved markets. Default: live and recently finished (14 days)."
|
|
5338
|
+
)
|
|
5339
|
+
});
|
|
5340
|
+
var mcpTrueoFetchTrendingOutputSchema = z.object({
|
|
5341
|
+
markets: z.array(mcpTrueoMarketRowSchema),
|
|
5342
|
+
notes: z.string(),
|
|
5343
|
+
hasMore: z.boolean().optional(),
|
|
5344
|
+
nextOffset: z.number().int().nonnegative().optional()
|
|
5345
|
+
});
|
|
5346
|
+
var mcpTrueoSearchMarketsInputSchema = z.object({
|
|
5347
|
+
query: z.string().optional().describe("Search haystack: question, rules, categories, address"),
|
|
5348
|
+
category: z.string().optional().describe("Category name from fetch_categories, e.g. Politics"),
|
|
5349
|
+
limit: z.number().int().positive().optional(),
|
|
5350
|
+
offset: z.number().int().nonnegative().optional(),
|
|
5351
|
+
includeAll: agentOptionalBooleanSchema().describe(
|
|
5352
|
+
"If true, include older closed/resolved markets. Default: live and recently finished (14 days)."
|
|
5353
|
+
),
|
|
5354
|
+
excludeAddresses: z.array(z.string()).optional().describe("Skip these market addresses (after trending, pass the listed addresses).")
|
|
5355
|
+
});
|
|
5356
|
+
var mcpTrueoSearchMarketsOutputSchema = mcpTrueoFetchTrendingOutputSchema;
|
|
5357
|
+
var mcpTrueoFetchMarketInputSchema = z.object({
|
|
5358
|
+
marketAddress: evmAddressSchema.describe("Trueo market address")
|
|
5359
|
+
});
|
|
5360
|
+
var mcpTrueoFetchMarketOutputSchema = mcpTrueoMarketRowSchema;
|
|
5361
|
+
var mcpTrueoFetchChanceSeriesInputSchema = z.object({
|
|
5362
|
+
poolId: z.string().min(1).describe("Yes or No pool id from fetch_market"),
|
|
5363
|
+
from: z.number().optional(),
|
|
5364
|
+
to: z.number().optional(),
|
|
5365
|
+
resolution: z.string().optional().describe("Sample step in seconds (3600 = hourly). 1H/1D/1W/All coerce to hourly \u2014 Trueo rejects calendar 1D/1W."),
|
|
5366
|
+
lookbackDays: z.number().optional()
|
|
5367
|
+
});
|
|
5368
|
+
var mcpTrueoFetchChanceSeriesOutputSchema = z.object({
|
|
5369
|
+
poolId: z.string(),
|
|
5370
|
+
bars: z.array(
|
|
5371
|
+
z.object({
|
|
5372
|
+
timestamp: z.number(),
|
|
5373
|
+
open: z.number(),
|
|
5374
|
+
high: z.number(),
|
|
5375
|
+
low: z.number(),
|
|
5376
|
+
close: z.number()
|
|
5377
|
+
})
|
|
5378
|
+
),
|
|
5379
|
+
from: z.number(),
|
|
5380
|
+
to: z.number(),
|
|
5381
|
+
resolution: z.string(),
|
|
5382
|
+
notes: z.string().optional()
|
|
5383
|
+
});
|
|
5384
|
+
var mcpTrueoFetchOrderbookInputSchema = z.object({
|
|
5385
|
+
marketAddress: evmAddressSchema,
|
|
5386
|
+
side: z.enum(["yes", "no"]).optional(),
|
|
5387
|
+
rpcUrl: z.string().min(1).optional().describe("Server-filled from chain registry. Agents should omit.")
|
|
5388
|
+
});
|
|
5389
|
+
var mcpTrueoFetchOrderbookOutputSchema = z.object({
|
|
5390
|
+
marketAddress: z.string(),
|
|
5391
|
+
side: z.enum(["yes", "no"]),
|
|
5392
|
+
poolId: z.string(),
|
|
5393
|
+
currentTick: z.number().nullable(),
|
|
5394
|
+
impliedPrice: z.number().nullable(),
|
|
5395
|
+
impliedPriceLabel: z.string().nullable(),
|
|
5396
|
+
levels: z.array(z.record(z.unknown())),
|
|
5397
|
+
recentTrades: z.array(z.record(z.unknown())),
|
|
5398
|
+
notes: z.string()
|
|
5399
|
+
});
|
|
5400
|
+
var mcpSearchPredictionMarketsInputSchema = z.object({
|
|
5401
|
+
query: z.string().optional().describe(
|
|
5402
|
+
"Pass the operator topic verbatim (case-insensitive title substring). Do not substitute a category name. Empty lists trending."
|
|
5403
|
+
),
|
|
5404
|
+
category: z.string().optional().describe("Venue category, e.g. Politics"),
|
|
5405
|
+
venues: z.array(z.string()).optional().describe("Optional venue filter. v1: trueo"),
|
|
5406
|
+
trending: agentOptionalBooleanSchema().describe(
|
|
5407
|
+
"Trending board only when query and category are empty. Ignored when query is set."
|
|
5408
|
+
),
|
|
5409
|
+
includeAll: agentOptionalBooleanSchema().describe(
|
|
5410
|
+
"If true, include older closed/resolved markets. Default: live and recently finished (14 days)."
|
|
5411
|
+
),
|
|
5412
|
+
limit: z.number().int().positive().optional().describe("Page size. Default 10 (trending API max)."),
|
|
5413
|
+
offset: z.number().int().nonnegative().optional().describe("Search offset for the next page. Trending is page 1 only."),
|
|
5414
|
+
indexBase: z.number().int().nonnegative().optional().describe("Start #N at indexBase+1 so pages continue 11, 12, \u2026"),
|
|
5415
|
+
excludeAddresses: z.array(z.string()).optional().describe("Skip these venueMarketIds (after trending, pass the listed ids).")
|
|
5416
|
+
});
|
|
5417
|
+
var mcpPredictionMarketRowSchema = z.object({
|
|
5418
|
+
venue: z.string(),
|
|
5419
|
+
venueMarketId: z.string(),
|
|
5420
|
+
question: z.string(),
|
|
5421
|
+
categories: z.array(z.string()),
|
|
5422
|
+
yesPrice: z.number().nullable(),
|
|
5423
|
+
noPrice: z.number().nullable(),
|
|
5424
|
+
yesPriceLabel: z.string().nullable(),
|
|
5425
|
+
noPriceLabel: z.string().nullable(),
|
|
5426
|
+
volume: z.string(),
|
|
5427
|
+
tvl: z.number().nullable(),
|
|
5428
|
+
expiresAt: z.string().nullable(),
|
|
5429
|
+
expiresAtLabel: z.string().nullable(),
|
|
5430
|
+
tradingEndsLabel: z.string().optional(),
|
|
5431
|
+
endOfTrading: z.number().optional(),
|
|
5432
|
+
status: z.string(),
|
|
5433
|
+
outcome: z.number().optional(),
|
|
5434
|
+
statusUpdatedAt: z.string().nullable().optional(),
|
|
5435
|
+
resolutionLabel: z.string().nullable().optional(),
|
|
5436
|
+
chainId: z.number(),
|
|
5437
|
+
paymentSymbol: z.string(),
|
|
5438
|
+
tradable: z.boolean(),
|
|
5439
|
+
index: z.number().int().positive().optional(),
|
|
5440
|
+
rules: z.string().optional(),
|
|
5441
|
+
source: z.string().optional(),
|
|
5442
|
+
imageUrl: z.string().nullable().optional(),
|
|
5443
|
+
ohlc: z.array(
|
|
5444
|
+
z.object({
|
|
5445
|
+
timestamp: z.number(),
|
|
5446
|
+
open: z.number(),
|
|
5447
|
+
high: z.number(),
|
|
5448
|
+
low: z.number(),
|
|
5449
|
+
close: z.number()
|
|
5450
|
+
})
|
|
5451
|
+
).optional().describe("Hourly Yes-chance samples for the Mini App graph (get_prediction_market).")
|
|
5452
|
+
});
|
|
5453
|
+
var mcpSearchPredictionMarketsOutputSchema = z.object({
|
|
5454
|
+
markets: z.array(mcpPredictionMarketRowSchema),
|
|
5455
|
+
notes: z.string(),
|
|
5456
|
+
hasMore: z.boolean().optional(),
|
|
5457
|
+
nextOffset: z.number().int().nonnegative().optional(),
|
|
5458
|
+
nextIndexBase: z.number().int().nonnegative().optional(),
|
|
5459
|
+
includeAll: z.boolean().optional()
|
|
5460
|
+
});
|
|
5461
|
+
var mcpListMyPredictionMarketsInputSchema = z.object({
|
|
5462
|
+
tokenAddresses: z.array(z.string()).optional().describe("YES/NO token addresses from get_token_registry (or added after a bet)."),
|
|
5463
|
+
marketAddresses: z.array(z.string()).optional().describe("Trueo market addresses from prior bets.")
|
|
5464
|
+
});
|
|
5465
|
+
var mcpListMyPredictionMarketsOutputSchema = mcpSearchPredictionMarketsOutputSchema;
|
|
5466
|
+
var mcpGetPredictionMarketInputSchema = z.object({
|
|
5467
|
+
venue: z.string().optional().describe("Default trueo"),
|
|
5468
|
+
venueMarketId: z.string().min(1).describe("Venue id (Trueo: market address)")
|
|
5469
|
+
});
|
|
5470
|
+
var mcpGetPredictionMarketOutputSchema = mcpPredictionMarketRowSchema.passthrough();
|
|
5471
|
+
var mcpTrueoWrapTydInputSchema = mcpMultisignInput({
|
|
5472
|
+
amountHuman: z.string().min(1).describe("USDC amount to deposit into the TYD vault")
|
|
5473
|
+
});
|
|
5474
|
+
var mcpTrueoUnwrapTydInputSchema = mcpMultisignInput({
|
|
5475
|
+
amountHuman: z.string().min(1).describe("TYD share amount to redeem for USDC")
|
|
5476
|
+
});
|
|
5477
|
+
var mcpTrueoMintInputSchema = mcpMultisignInput({
|
|
5478
|
+
marketAddress: evmAddressSchema,
|
|
5479
|
+
amountHuman: z.string().min(1).describe("TYD (or USDC when paymentKind=usdc) amount"),
|
|
5480
|
+
paymentKind: z.enum(["tyd", "usdc"]).optional()
|
|
5481
|
+
});
|
|
5482
|
+
var mcpTrueoBurnInputSchema = mcpTrueoMintInputSchema;
|
|
5483
|
+
var mcpTrueoRedeemInputSchema = mcpTrueoMintInputSchema;
|
|
5484
|
+
var mcpTrueoSwapInputSchema = mcpMultisignInput({
|
|
5485
|
+
marketAddress: evmAddressSchema,
|
|
5486
|
+
side: z.enum(["yes", "no"]),
|
|
5487
|
+
amountHuman: z.string().min(1).describe("TYD amount in"),
|
|
5488
|
+
amountOutMinimumHuman: z.string().optional()
|
|
5489
|
+
});
|
|
5490
|
+
var mcpTrueoCreateOrderInputSchema = mcpMultisignInput({
|
|
5491
|
+
marketAddress: evmAddressSchema,
|
|
5492
|
+
side: z.enum(["yes", "no"]),
|
|
5493
|
+
amountHuman: z.string().min(1),
|
|
5494
|
+
tickLower: z.number().int(),
|
|
5495
|
+
tickUpper: z.number().int(),
|
|
5496
|
+
enablePartialFill: agentOptionalBooleanSchema()
|
|
5497
|
+
});
|
|
5498
|
+
var mcpTrueoCancelOrderInputSchema = mcpMultisignInput({
|
|
5499
|
+
marketAddress: evmAddressSchema,
|
|
5500
|
+
side: z.enum(["yes", "no"]),
|
|
5501
|
+
orderId: z.number().int().nonnegative()
|
|
5502
|
+
});
|
|
5503
|
+
function mcpDeriveMultisignInput(fields) {
|
|
5504
|
+
return withMultisignKeySourceRefine(evmMultisignCommonInputSchema.extend(fields));
|
|
5505
|
+
}
|
|
5506
|
+
var deriveAuthSchema = z.object({
|
|
5507
|
+
wallet: z.string().min(1),
|
|
5508
|
+
timestamp: z.string().min(1),
|
|
5509
|
+
signature: z.string().min(1)
|
|
5510
|
+
}).optional().describe("Server-filled EIP-191 login (X-DeriveWallet / Timestamp / Signature). Agents must not pass auth.");
|
|
5511
|
+
var deriveNetworkSchema = z.enum(["mainnet", "testnet"]).optional();
|
|
5512
|
+
var deriveFetchBaseSchema = z.object({
|
|
5513
|
+
chainId: z.coerce.number().int().positive().optional().describe("Asset-row chain (dialog context). Trading is always Derive API."),
|
|
5514
|
+
network: deriveNetworkSchema
|
|
5515
|
+
});
|
|
5516
|
+
var deriveWalletSchema = deriveFetchBaseSchema.extend({
|
|
5517
|
+
wallet: evmAddressSchema.optional(),
|
|
5518
|
+
executorAddress: evmAddressSchema.optional().describe("MPC executor \u2014 same address is the Derive owner on every chain."),
|
|
5519
|
+
auth: deriveAuthSchema
|
|
5520
|
+
});
|
|
5521
|
+
var deriveOhlcvIntervalSchema = z.enum(["1m", "5m", "15m", "30m", "1h", "4h", "1d", "1w"]);
|
|
5522
|
+
var deriveOhlcvCandleSchema = z.object({
|
|
5523
|
+
timestampMs: z.number(),
|
|
5524
|
+
open: z.string(),
|
|
5525
|
+
high: z.string(),
|
|
5526
|
+
low: z.string(),
|
|
5527
|
+
close: z.string(),
|
|
5528
|
+
volume: z.string()
|
|
5529
|
+
});
|
|
5530
|
+
var mcpDeriveFetchCurrenciesInputSchema = deriveFetchBaseSchema;
|
|
5531
|
+
var mcpDeriveFetchCurrenciesOutputSchema = z.object({
|
|
5532
|
+
currencies: z.array(z.object({ currency: z.string() })),
|
|
5533
|
+
network: z.string().optional()
|
|
5534
|
+
});
|
|
5535
|
+
var mcpDeriveFetchOptionChainInputSchema = deriveFetchBaseSchema.extend({
|
|
5536
|
+
currency: z.string().min(1).describe("Underlying currency e.g. ETH"),
|
|
5537
|
+
expired: z.boolean().optional()
|
|
5538
|
+
});
|
|
5539
|
+
var mcpDeriveFetchOptionChainOutputSchema = z.object({
|
|
5540
|
+
currency: z.string(),
|
|
5541
|
+
instrumentCount: z.number(),
|
|
5542
|
+
callCount: z.number(),
|
|
5543
|
+
putCount: z.number(),
|
|
5544
|
+
expiries: z.array(
|
|
5545
|
+
z.object({
|
|
5546
|
+
expiryYmd: z.string(),
|
|
5547
|
+
expiryUnix: z.number().nullable(),
|
|
5548
|
+
callCount: z.number(),
|
|
5549
|
+
putCount: z.number(),
|
|
5550
|
+
minStrike: z.string().nullable(),
|
|
5551
|
+
maxStrike: z.string().nullable()
|
|
5552
|
+
})
|
|
5553
|
+
),
|
|
5554
|
+
notes: z.string(),
|
|
5555
|
+
network: z.string().optional()
|
|
5556
|
+
});
|
|
5557
|
+
var mcpDeriveFetchTickersInputSchema = deriveFetchBaseSchema.extend({
|
|
5558
|
+
currency: z.string().min(1).describe("Underlying e.g. ETH"),
|
|
5559
|
+
expiryDate: z.union([z.string().min(1), z.number().int().positive()]).describe("YYYYMMDD from fetch_option_chain. String or number (20260925). 2026-09-25 is ok."),
|
|
5560
|
+
optionType: z.enum(["C", "P"]).optional().describe("Calls only or puts only. Omit for both."),
|
|
5561
|
+
ladder: z.enum(["atm", "all"]).optional().describe("Default atm (~9 strikes around index). Use all only when the operator wants every strike.")
|
|
5562
|
+
});
|
|
5563
|
+
var mcpDeriveFetchTickersOutputSchema = z.object({
|
|
5564
|
+
currency: z.string(),
|
|
5565
|
+
expiryDate: z.string(),
|
|
5566
|
+
optionType: z.enum(["C", "P"]).nullable().optional(),
|
|
5567
|
+
ladder: z.enum(["atm", "all"]).optional(),
|
|
5568
|
+
indexPx: z.string().nullable().optional(),
|
|
5569
|
+
listedCount: z.number().optional(),
|
|
5570
|
+
tickerCount: z.number().optional(),
|
|
5571
|
+
callCount: z.number().optional(),
|
|
5572
|
+
putCount: z.number().optional(),
|
|
5573
|
+
tickers: z.array(
|
|
5574
|
+
z.object({
|
|
5575
|
+
instrumentName: z.string(),
|
|
5576
|
+
bidPx: z.string().nullable(),
|
|
5577
|
+
askPx: z.string().nullable(),
|
|
5578
|
+
markPx: z.string().nullable(),
|
|
5579
|
+
indexPx: z.string().nullable(),
|
|
5580
|
+
strike: z.string().nullable(),
|
|
5581
|
+
expiry: z.number().nullable(),
|
|
5582
|
+
expiryYmd: z.string().nullable(),
|
|
5583
|
+
optionType: z.enum(["C", "P"]).nullable(),
|
|
5584
|
+
greeks: z.unknown().nullable()
|
|
5585
|
+
})
|
|
5586
|
+
),
|
|
5587
|
+
notes: z.string().optional(),
|
|
5588
|
+
network: z.string().optional()
|
|
5589
|
+
});
|
|
5590
|
+
var mcpDeriveSearchInstrumentsInputSchema = deriveFetchBaseSchema.extend({
|
|
5591
|
+
currency: z.string().min(1),
|
|
5592
|
+
query: z.string().min(1).describe("Instrument name fragment e.g. 3000-C or 20260626"),
|
|
5593
|
+
limit: z.coerce.number().int().positive().max(50).optional()
|
|
5594
|
+
});
|
|
5595
|
+
var mcpDeriveSearchInstrumentsOutputSchema = z.object({
|
|
5596
|
+
instruments: z.array(z.object({ instrumentName: z.string() })),
|
|
5597
|
+
network: z.string().optional()
|
|
5598
|
+
});
|
|
5599
|
+
var mcpDeriveFetchMarketSnapshotInputSchema = deriveFetchBaseSchema.extend({
|
|
5600
|
+
instrumentName: z.string().min(1).describe("e.g. ETH-20260626-3000-C")
|
|
5601
|
+
});
|
|
5602
|
+
var mcpDeriveFetchMarketSnapshotOutputSchema = z.object({
|
|
5603
|
+
snapshot: z.object({
|
|
5604
|
+
instrumentName: z.string(),
|
|
5605
|
+
livePrice: z.object({
|
|
5606
|
+
markPx: z.string().nullable(),
|
|
5607
|
+
indexPx: z.string().nullable(),
|
|
5608
|
+
bidPx: z.string().nullable(),
|
|
5609
|
+
askPx: z.string().nullable(),
|
|
5610
|
+
midUsd: z.string(),
|
|
5611
|
+
source: z.string()
|
|
5612
|
+
}),
|
|
5613
|
+
greeks: z.unknown().nullable(),
|
|
5614
|
+
fetchedAtMs: z.number()
|
|
5615
|
+
}),
|
|
5616
|
+
network: z.string().optional()
|
|
5617
|
+
});
|
|
5618
|
+
var mcpDeriveFetchOhlcvInputSchema = deriveFetchBaseSchema.extend({
|
|
5619
|
+
instrumentName: z.string().optional().describe("Required for option candles"),
|
|
5620
|
+
currency: z.string().optional().describe("Required for index candles (underlying spot)"),
|
|
5621
|
+
marketKind: z.enum(["option", "index"]).optional(),
|
|
5622
|
+
interval: deriveOhlcvIntervalSchema.optional(),
|
|
5623
|
+
lookbackDays: z.coerce.number().positive().optional(),
|
|
5624
|
+
lookbackHours: z.coerce.number().positive().optional(),
|
|
5625
|
+
startTimeMs: z.coerce.number().int().positive().optional(),
|
|
5626
|
+
endTimeMs: z.coerce.number().int().positive().optional()
|
|
5627
|
+
});
|
|
5628
|
+
var mcpDeriveFetchOhlcvOutputSchema = z.object({
|
|
5629
|
+
ohlcv: z.object({
|
|
5630
|
+
market: z.string(),
|
|
5631
|
+
coin: z.string(),
|
|
5632
|
+
interval: z.string(),
|
|
5633
|
+
marketKind: z.enum(["option", "index"]),
|
|
5634
|
+
startTimeMs: z.number(),
|
|
5635
|
+
endTimeMs: z.number(),
|
|
5636
|
+
expectedBars: z.number(),
|
|
5637
|
+
candleCount: z.number(),
|
|
5638
|
+
latestCandle: deriveOhlcvCandleSchema.nullable(),
|
|
5639
|
+
candles: z.array(deriveOhlcvCandleSchema),
|
|
5640
|
+
fetchedAtMs: z.number(),
|
|
5641
|
+
dataSource: z.literal("derive")
|
|
5642
|
+
}),
|
|
5643
|
+
dataSource: z.literal("derive"),
|
|
5644
|
+
network: z.string().optional()
|
|
5645
|
+
});
|
|
5646
|
+
var mcpDeriveOrderQuoteInputSchema = deriveFetchBaseSchema.extend({
|
|
5647
|
+
instrumentName: z.string().min(1),
|
|
5648
|
+
direction: z.enum(["buy", "sell"]),
|
|
5649
|
+
amount: z.string().min(1),
|
|
5650
|
+
limitPrice: z.string().min(1),
|
|
5651
|
+
subaccountId: agentCoercedIntSchema(z.number().int().positive()).optional().describe("Required by v3 public/order_quote. From ctm_derive_fetch_subaccounts. Never 0.")
|
|
5652
|
+
});
|
|
5653
|
+
var mcpDeriveOrderQuoteOutputSchema = z.object({
|
|
5654
|
+
quote: jsonObjectSchema,
|
|
5655
|
+
instrumentName: z.string(),
|
|
5656
|
+
network: z.string().optional()
|
|
5657
|
+
});
|
|
5658
|
+
var mcpDeriveFetchRiskUniversesInputSchema = deriveFetchBaseSchema;
|
|
5659
|
+
var mcpDeriveFetchRiskUniversesOutputSchema = z.object({
|
|
5660
|
+
universes: z.array(z.unknown()),
|
|
5661
|
+
notes: z.string(),
|
|
5662
|
+
network: z.string().optional()
|
|
5663
|
+
});
|
|
5664
|
+
var mcpDeriveFetchPendingDepositsInputSchema = deriveWalletSchema;
|
|
5665
|
+
var mcpDeriveFetchPendingDepositsOutputSchema = z.object({
|
|
5666
|
+
pending: z.array(z.unknown()),
|
|
5667
|
+
credited: z.boolean(),
|
|
5668
|
+
notes: z.string(),
|
|
5669
|
+
network: z.string().optional()
|
|
5670
|
+
});
|
|
5671
|
+
var mcpDeriveFetchSubaccountsInputSchema = deriveWalletSchema;
|
|
5672
|
+
var mcpDeriveFetchSubaccountsOutputSchema = z.object({
|
|
5673
|
+
wallet: z.string(),
|
|
5674
|
+
subaccounts: z.array(z.number()),
|
|
5675
|
+
funded: z.boolean(),
|
|
5676
|
+
notes: z.string(),
|
|
5677
|
+
next: z.array(z.string()),
|
|
5678
|
+
network: z.string().optional()
|
|
5679
|
+
});
|
|
5680
|
+
var deriveSubaccountInput = deriveWalletSchema.extend({
|
|
5681
|
+
subaccountId: agentCoercedIntSchema(z.number().int().positive()).describe(
|
|
5682
|
+
"subaccountId from ctm_derive_fetch_subaccounts. Never 0. If that list is empty, deposit on Ethereum L1 first."
|
|
5683
|
+
)
|
|
5684
|
+
});
|
|
5685
|
+
var mcpDeriveFetchPortfolioInputSchema = deriveSubaccountInput;
|
|
5686
|
+
var mcpDeriveFetchPortfolioOutputSchema = z.object({
|
|
5687
|
+
portfolio: z.unknown(),
|
|
5688
|
+
subaccountId: z.number(),
|
|
5689
|
+
wallet: z.string(),
|
|
5690
|
+
network: z.string().optional()
|
|
5691
|
+
});
|
|
5692
|
+
var mcpDeriveFetchPositionsInputSchema = deriveSubaccountInput;
|
|
5693
|
+
var mcpDeriveFetchPositionsOutputSchema = z.object({
|
|
5694
|
+
positions: z.array(z.unknown()),
|
|
5695
|
+
subaccountId: z.number(),
|
|
5696
|
+
wallet: z.string(),
|
|
5697
|
+
network: z.string().optional()
|
|
5698
|
+
});
|
|
5699
|
+
var mcpDeriveFetchOpenOrdersInputSchema = deriveSubaccountInput;
|
|
5700
|
+
var mcpDeriveFetchOpenOrdersOutputSchema = z.object({
|
|
5701
|
+
orders: z.array(z.unknown()),
|
|
5702
|
+
subaccountId: z.number(),
|
|
5703
|
+
wallet: z.string(),
|
|
5704
|
+
network: z.string().optional()
|
|
5705
|
+
});
|
|
5706
|
+
var deriveSubaccountIdField = agentCoercedIntSchema(z.number().int().positive()).describe(
|
|
5707
|
+
"subaccountId from ctm_derive_fetch_subaccounts. Collateral lives on Ethereum L1; EIP-712 orders do not move the current-chain token. If none exist, deposit first."
|
|
5708
|
+
);
|
|
5709
|
+
var mcpDeriveDepositNewSubaccountInputSchema = mcpDeriveMultisignInput({
|
|
5710
|
+
protocolAsset: evmAddressSchema.describe("collaterals[].address from ctm_derive_fetch_risk_universes"),
|
|
5711
|
+
underlyingErc20: evmAddressSchema.describe("collaterals[].erc20.underlying_erc20 on Ethereum L1 (usually USDC)"),
|
|
5712
|
+
amountHuman: z.string().min(1).describe("Deposit amount in underlying token units"),
|
|
5713
|
+
managerId: agentCoercedIntSchema(z.number().int().positive()).describe("Risk-universe manager_id"),
|
|
5714
|
+
actionManager: evmAddressSchema.optional().describe("Override ACTION_MANAGER (required on mainnet until published)")
|
|
5715
|
+
});
|
|
5716
|
+
var mcpDeriveRegisterDepositAddressInputSchema = deriveFetchBaseSchema.extend({
|
|
5717
|
+
wallet: evmAddressSchema,
|
|
5718
|
+
managerId: agentCoercedIntSchema(z.number().int().positive()).optional(),
|
|
5719
|
+
subaccountId: agentCoercedIntSchema(z.number().int().nonnegative()).optional()
|
|
5720
|
+
});
|
|
5721
|
+
var mcpDeriveRegisterDepositAddressOutputSchema = z.object({
|
|
5722
|
+
depositAddress: evmAddressSchema,
|
|
5723
|
+
wallet: evmAddressSchema,
|
|
5724
|
+
managerId: z.number().int().nullable(),
|
|
5725
|
+
subaccountId: z.number().int().nullable(),
|
|
5726
|
+
network: z.string(),
|
|
5727
|
+
notes: z.string()
|
|
5728
|
+
});
|
|
5729
|
+
var mcpDeriveDepositAddressTransferInputSchema = mcpDeriveMultisignInput({
|
|
5730
|
+
underlyingErc20: evmAddressSchema.describe("Ethereum L1 token to send (usually USDC)"),
|
|
5731
|
+
amountHuman: z.string().min(1),
|
|
5732
|
+
depositAddress: evmAddressSchema.describe("From ctm_derive_register_deposit_address")
|
|
5733
|
+
});
|
|
5734
|
+
var mcpDeriveSocketDepositInputSchema = mcpDeriveMultisignInput({
|
|
5735
|
+
token: evmAddressSchema.describe("USDC / WETH / WBTC on this chain, or native 0x0 to wrap WETH"),
|
|
5736
|
+
amountHuman: z.string().min(1),
|
|
5737
|
+
receiver: evmAddressSchema.optional().describe("Derive Chain receiver; defaults to executor")
|
|
5738
|
+
});
|
|
5739
|
+
var mcpDeriveHypeVaultDepositInputSchema = mcpDeriveMultisignInput({
|
|
5740
|
+
amountHuman: z.string().min(1).describe("HYPE amount"),
|
|
5741
|
+
token: evmAddressSchema.optional().describe("Native 0x0 or WHYPE 0x555\u20265"),
|
|
5742
|
+
vault: evmAddressSchema.optional()
|
|
5743
|
+
});
|
|
5744
|
+
var mcpDerivePlaceOrderInputSchema = mcpDeriveMultisignInput({
|
|
5745
|
+
instrumentName: z.string().min(1).describe("e.g. ETH-20260626-3000-C"),
|
|
5746
|
+
direction: z.enum(["buy", "sell"]),
|
|
5747
|
+
amount: z.string().min(1),
|
|
5748
|
+
limitPrice: z.string().min(1),
|
|
5749
|
+
maxFee: z.string().min(1),
|
|
5750
|
+
subaccountId: deriveSubaccountIdField,
|
|
5751
|
+
orderType: z.enum(["limit", "market"]).optional(),
|
|
5752
|
+
timeInForce: z.enum(["gtc", "ioc", "fok", "post_only"]).optional(),
|
|
5753
|
+
reduceOnly: z.boolean().optional(),
|
|
5754
|
+
label: z.string().optional(),
|
|
5755
|
+
ticketKind: z.enum(["limit", "stop_limit", "twap"]).optional(),
|
|
5756
|
+
triggerPrice: z.string().optional().describe("Required for stop_limit"),
|
|
5757
|
+
triggerType: z.enum(["stoploss", "takeprofit"]).optional(),
|
|
5758
|
+
triggerPriceType: z.enum(["mark", "index"]).optional(),
|
|
5759
|
+
algoDurationSec: agentCoercedIntSchema(z.number().int().min(60)).optional().describe("Required for twap"),
|
|
5760
|
+
algoNumSlices: agentCoercedIntSchema(z.number().int().min(2)).optional().describe("Required for twap")
|
|
5761
|
+
});
|
|
5762
|
+
var mcpDeriveReplaceOrderInputSchema = mcpDeriveMultisignInput({
|
|
5763
|
+
instrumentName: z.string().min(1),
|
|
5764
|
+
direction: z.enum(["buy", "sell"]),
|
|
5765
|
+
amount: z.string().min(1),
|
|
5766
|
+
limitPrice: z.string().min(1),
|
|
5767
|
+
maxFee: z.string().min(1),
|
|
5768
|
+
subaccountId: deriveSubaccountIdField,
|
|
5769
|
+
orderType: z.enum(["limit", "market"]).optional(),
|
|
5770
|
+
timeInForce: z.enum(["gtc", "ioc", "fok", "post_only"]).optional(),
|
|
5771
|
+
reduceOnly: z.boolean().optional(),
|
|
5772
|
+
label: z.string().optional(),
|
|
5773
|
+
ticketKind: z.enum(["limit", "stop_limit", "twap"]).optional(),
|
|
5774
|
+
triggerPrice: z.string().optional(),
|
|
5775
|
+
triggerType: z.enum(["stoploss", "takeprofit"]).optional(),
|
|
5776
|
+
triggerPriceType: z.enum(["mark", "index"]).optional(),
|
|
5777
|
+
algoDurationSec: agentCoercedIntSchema(z.number().int().min(60)).optional(),
|
|
5778
|
+
algoNumSlices: agentCoercedIntSchema(z.number().int().min(2)).optional(),
|
|
5779
|
+
orderIdToCancel: z.string().min(1).optional(),
|
|
5780
|
+
nonceToCancel: z.string().min(1).optional()
|
|
5781
|
+
}).refine((d) => Boolean(d.orderIdToCancel) !== Boolean(d.nonceToCancel), {
|
|
5782
|
+
message: "Replace requires exactly one of orderIdToCancel or nonceToCancel."
|
|
5783
|
+
});
|
|
5784
|
+
var mcpDeriveCancelInputSchema = mcpDeriveMultisignInput({
|
|
5785
|
+
instrumentName: z.string().min(1),
|
|
5786
|
+
orderId: z.string().min(1).describe("order_id from ctm_derive_fetch_open_orders"),
|
|
5787
|
+
subaccountId: deriveSubaccountIdField
|
|
5788
|
+
});
|
|
5789
|
+
var mcpDeriveTransferSpotInputSchema = mcpDeriveMultisignInput({
|
|
5790
|
+
fromSubaccountId: deriveSubaccountIdField,
|
|
5791
|
+
toSubaccountId: agentCoercedIntSchema(z.number().int().nonnegative()).describe(
|
|
5792
|
+
"Existing destination, or 0 to create an extra subaccount (requires newSubaccountManager)."
|
|
5793
|
+
),
|
|
5794
|
+
newSubaccountManager: agentCoercedIntSchema(z.number().int().nonnegative()).describe(
|
|
5795
|
+
"Required when toSubaccountId is 0. Extra subaccounts only \u2014 first account is L1 deposit."
|
|
5796
|
+
),
|
|
5797
|
+
asset: evmAddressSchema.describe("Protocol asset address"),
|
|
5798
|
+
amount: z.string().min(1),
|
|
5799
|
+
maxFeeUsd: z.string().optional(),
|
|
5800
|
+
subId: agentCoercedIntSchema(z.number().int().nonnegative()).optional()
|
|
5801
|
+
});
|
|
5190
5802
|
var mcpCctpFeeFieldsSchema = z.object({
|
|
5191
5803
|
feeTierUsed: z.enum(["low", "med", "high"]),
|
|
5192
5804
|
maxFee: z.string().describe("Selected tier max fee in USDC base units (6 decimals)"),
|
|
@@ -5897,11 +6509,21 @@ var MCP_PROTOCOL_TOOL_DEFINITIONS = [
|
|
|
5897
6509
|
actionId: "hyperliquid.limitOrder",
|
|
5898
6510
|
protocolId: "hyperliquid",
|
|
5899
6511
|
chainCategory: "evm",
|
|
5900
|
-
description: "Create and submit mpc-auth multiSignRequest for a Hyperliquid limit/IoC order. Plain limit: CoreWriter (useCustomGas). When takeProfitTriggerPxHuman and/or
|
|
6512
|
+
description: "Create and submit mpc-auth multiSignRequest for a Hyperliquid limit/IoC order. Plain limit: CoreWriter (useCustomGas). When takeProfitTriggerPxHuman, stopLossTriggerPxHuman, and/or trailingOffsetHuman are set: L1 EIP-712 to /exchange (normalTpsl for TP/SL; trailingStop is a second signed action) \u2014 no useCustomGas. Trailing cannot combine with a fixed SL. Perp only for trailing.",
|
|
5901
6513
|
prerequisites: ["keyGenId", "chainId 999 or 998", "coin", "limitPxHuman", "szHuman"],
|
|
5902
6514
|
handler: { importPath: "protocols/evm/hyperliquid", exportName: "buildEvmMultisignBodyHyperliquidLimitOrderBatch" },
|
|
5903
6515
|
inputZod: mcpHyperliquidLimitOrderInputSchema
|
|
5904
6516
|
}),
|
|
6517
|
+
defineProtocolMcpTool({
|
|
6518
|
+
name: "ctm_hyperliquid_build_trailing_stop_multisign",
|
|
6519
|
+
actionId: "hyperliquid.trailingStop",
|
|
6520
|
+
protocolId: "hyperliquid",
|
|
6521
|
+
chainCategory: "evm",
|
|
6522
|
+
description: "Create and submit mpc-auth multiSignRequest for a Hyperliquid perp trailing stop (EIP-712 L1 trailingStop action to /exchange \u2014 no useCustomGas). Retracement is a price distance or percentage; optional activation price delays tracking. Typically reduce-only to close a position. isBuy false closes a long / opens a short.",
|
|
6523
|
+
prerequisites: ["keyGenId", "chainId 999 or 998", "coin", "szHuman", "trailingOffsetHuman"],
|
|
6524
|
+
handler: { importPath: "protocols/evm/hyperliquid", exportName: "buildHyperliquidTrailingStopMultisign" },
|
|
6525
|
+
inputZod: mcpHyperliquidTrailingStopInputSchema
|
|
6526
|
+
}),
|
|
5905
6527
|
defineProtocolMcpTool({
|
|
5906
6528
|
name: "ctm_hyperliquid_build_close_multisign",
|
|
5907
6529
|
actionId: "hyperliquid.close",
|
|
@@ -6443,6 +7065,188 @@ var MCP_PROTOCOL_TOOL_DEFINITIONS = [
|
|
|
6443
7065
|
prerequisites: ["keyGenId", "chainId", "comet", "steps"],
|
|
6444
7066
|
handler: { importPath: "protocols/evm/compound-v3", exportName: "buildEvmMultisignBodyCompoundV3Bulker" },
|
|
6445
7067
|
inputZod: mcpCompoundV3BulkerInputSchema
|
|
7068
|
+
}),
|
|
7069
|
+
defineProtocolMcpTool({
|
|
7070
|
+
name: "ctm_derive_build_deposit_new_subaccount_multisign",
|
|
7071
|
+
actionId: "derive.depositNewSubaccount",
|
|
7072
|
+
protocolId: "derive",
|
|
7073
|
+
chainCategory: "evm",
|
|
7074
|
+
description: "Ethereum L1 only (chainId 1 / 11155111): approve the underlying ERC-20 to ACTION_MANAGER, then depositToNewSubaccount. First credit creates the trading + fallback (manager 0) subaccounts. Arb/OP/Base: ctm_derive_build_socket_deposit_multisign. HyperEVM HYPE: ctm_derive_build_hype_vault_deposit_multisign. useCustomGas.",
|
|
7075
|
+
prerequisites: [
|
|
7076
|
+
"chainId 1 or 11155111",
|
|
7077
|
+
"managerId + protocolAsset + underlyingErc20 from ctm_derive_fetch_risk_universes",
|
|
7078
|
+
"Ethereum L1 collateral (usually USDC)"
|
|
7079
|
+
],
|
|
7080
|
+
followUp: ["ctm_derive_fetch_pending_deposits", "ctm_derive_fetch_subaccounts"],
|
|
7081
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveDepositNewSubaccountMultisign" },
|
|
7082
|
+
inputZod: mcpDeriveDepositNewSubaccountInputSchema
|
|
7083
|
+
}),
|
|
7084
|
+
defineProtocolMcpTool({
|
|
7085
|
+
name: "ctm_derive_build_deposit_address_transfer_multisign",
|
|
7086
|
+
actionId: "derive.depositAddressTransfer",
|
|
7087
|
+
protocolId: "derive",
|
|
7088
|
+
chainCategory: "evm",
|
|
7089
|
+
description: "Ethereum L1 ERC-20 transfer to a registered Derive deposit address (standard / keeper sweep). Call ctm_derive_register_deposit_address first. useCustomGas.",
|
|
7090
|
+
prerequisites: ["chainId 1 or 11155111", "depositAddress from ctm_derive_register_deposit_address"],
|
|
7091
|
+
followUp: ["ctm_derive_fetch_pending_deposits", "ctm_derive_fetch_subaccounts"],
|
|
7092
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveDepositAddressTransferMultisign" },
|
|
7093
|
+
inputZod: mcpDeriveDepositAddressTransferInputSchema
|
|
7094
|
+
}),
|
|
7095
|
+
defineProtocolMcpTool({
|
|
7096
|
+
name: "ctm_derive_build_socket_deposit_multisign",
|
|
7097
|
+
actionId: "derive.socketDeposit",
|
|
7098
|
+
protocolId: "derive",
|
|
7099
|
+
chainCategory: "evm",
|
|
7100
|
+
description: "Socket FAST deposit of USDC/WETH/WBTC on Ethereum, Optimism, Base, or Arbitrum. Native 0x0 wraps to WETH. Pays a small native bridge fee. useCustomGas.",
|
|
7101
|
+
prerequisites: ["chainId 1 / 10 / 8453 / 42161", "token + amountHuman"],
|
|
7102
|
+
followUp: ["ctm_derive_fetch_pending_deposits", "ctm_derive_fetch_subaccounts"],
|
|
7103
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveSocketDepositMultisign" },
|
|
7104
|
+
inputZod: mcpDeriveSocketDepositInputSchema
|
|
7105
|
+
}),
|
|
7106
|
+
defineProtocolMcpTool({
|
|
7107
|
+
name: "ctm_derive_build_hype_vault_deposit_multisign",
|
|
7108
|
+
actionId: "derive.hypeVaultDeposit",
|
|
7109
|
+
protocolId: "derive",
|
|
7110
|
+
chainCategory: "evm",
|
|
7111
|
+
description: "HyperEVM (999) HYPE vault: wrap native HYPE to WHYPE if needed, approve, deposit. First credit creates a Standard Margin subaccount. useCustomGas.",
|
|
7112
|
+
prerequisites: ["chainId 999", "amountHuman"],
|
|
7113
|
+
followUp: ["ctm_derive_fetch_pending_deposits", "ctm_derive_fetch_subaccounts"],
|
|
7114
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveHypeVaultDepositMultisign" },
|
|
7115
|
+
inputZod: mcpDeriveHypeVaultDepositInputSchema
|
|
7116
|
+
}),
|
|
7117
|
+
defineProtocolMcpTool({
|
|
7118
|
+
name: "ctm_derive_build_place_order_multisign",
|
|
7119
|
+
actionId: "derive.placeOrder",
|
|
7120
|
+
protocolId: "derive",
|
|
7121
|
+
chainCategory: "evm",
|
|
7122
|
+
description: "EIP-712 Derive options order (delivery derive_exchange). Requires subaccountId from ctm_derive_fetch_subaccounts. Does not move the current-chain token unless that row funded the account. No useCustomGas.",
|
|
7123
|
+
prerequisites: [
|
|
7124
|
+
"subaccountId from ctm_derive_fetch_subaccounts",
|
|
7125
|
+
"funded Derive collateral (L1 / Socket / HYPE vault)",
|
|
7126
|
+
"instrumentName, direction, amount, limitPrice, maxFee"
|
|
7127
|
+
],
|
|
7128
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDerivePlaceOrderMultisign" },
|
|
7129
|
+
inputZod: mcpDerivePlaceOrderInputSchema
|
|
7130
|
+
}),
|
|
7131
|
+
defineProtocolMcpTool({
|
|
7132
|
+
name: "ctm_derive_build_replace_order_multisign",
|
|
7133
|
+
actionId: "derive.replaceOrder",
|
|
7134
|
+
protocolId: "derive",
|
|
7135
|
+
chainCategory: "evm",
|
|
7136
|
+
description: "EIP-712 replace of a Derive open order. Requires subaccountId from ctm_derive_fetch_subaccounts and exactly one of orderIdToCancel or nonceToCancel. EIP-712 orders do not move the current-chain token.",
|
|
7137
|
+
prerequisites: [
|
|
7138
|
+
"subaccountId from ctm_derive_fetch_subaccounts",
|
|
7139
|
+
"funded Derive collateral (L1 / Socket / HYPE vault)",
|
|
7140
|
+
"orderIdToCancel or nonceToCancel"
|
|
7141
|
+
],
|
|
7142
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveReplaceOrderMultisign" },
|
|
7143
|
+
inputZod: mcpDeriveReplaceOrderInputSchema
|
|
7144
|
+
}),
|
|
7145
|
+
defineProtocolMcpTool({
|
|
7146
|
+
name: "ctm_derive_build_cancel_multisign",
|
|
7147
|
+
actionId: "derive.cancel",
|
|
7148
|
+
protocolId: "derive",
|
|
7149
|
+
chainCategory: "evm",
|
|
7150
|
+
description: "Cancel a Derive open order (v3 private/cancel via EIP-191 login delivery). Requires subaccountId from ctm_derive_fetch_subaccounts. Does not move the current-chain token.",
|
|
7151
|
+
prerequisites: [
|
|
7152
|
+
"subaccountId from ctm_derive_fetch_subaccounts",
|
|
7153
|
+
"orderId from ctm_derive_fetch_open_orders"
|
|
7154
|
+
],
|
|
7155
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveCancelMultisign" },
|
|
7156
|
+
inputZod: mcpDeriveCancelInputSchema
|
|
7157
|
+
}),
|
|
7158
|
+
defineProtocolMcpTool({
|
|
7159
|
+
name: "ctm_derive_build_transfer_spot_multisign",
|
|
7160
|
+
actionId: "derive.transferSpot",
|
|
7161
|
+
protocolId: "derive",
|
|
7162
|
+
chainCategory: "evm",
|
|
7163
|
+
description: "EIP-712 transfer_spot. Use toSubaccountId 0 + newSubaccountManager to create an extra subaccount after the first funded one. First account is a deposit (L1 / Socket / HYPE), not this tool.",
|
|
7164
|
+
prerequisites: [
|
|
7165
|
+
"fromSubaccountId from ctm_derive_fetch_subaccounts",
|
|
7166
|
+
"funded Derive collateral (L1 / Socket / HYPE vault)"
|
|
7167
|
+
],
|
|
7168
|
+
handler: { importPath: "protocols/evm/derive", exportName: "buildDeriveTransferSpotMultisign" },
|
|
7169
|
+
inputZod: mcpDeriveTransferSpotInputSchema
|
|
7170
|
+
}),
|
|
7171
|
+
defineProtocolMcpTool({
|
|
7172
|
+
name: "ctm_trueo_build_wrap_tyd_multisign",
|
|
7173
|
+
actionId: "trueo.wrap-tyd",
|
|
7174
|
+
protocolId: "trueo",
|
|
7175
|
+
chainCategory: "evm",
|
|
7176
|
+
description: "Mint TYD by depositing Base USDC into the Yearn ERC-4626 vault. Not a market bet. No marketAddress. 30-minute expiry.",
|
|
7177
|
+
prerequisites: ["keyGenId", "chainId 8453", "amountHuman (USDC)"],
|
|
7178
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoWrapTyd" },
|
|
7179
|
+
inputZod: mcpTrueoWrapTydInputSchema
|
|
7180
|
+
}),
|
|
7181
|
+
defineProtocolMcpTool({
|
|
7182
|
+
name: "ctm_trueo_build_unwrap_tyd_multisign",
|
|
7183
|
+
actionId: "trueo.unwrap-tyd",
|
|
7184
|
+
protocolId: "trueo",
|
|
7185
|
+
chainCategory: "evm",
|
|
7186
|
+
description: "Redeem TYD shares back to Base USDC via the Yearn ERC-4626 vault. Not a market bet. No marketAddress. 30-minute expiry.",
|
|
7187
|
+
prerequisites: ["keyGenId", "chainId 8453", "amountHuman (TYD)"],
|
|
7188
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoUnwrapTyd" },
|
|
7189
|
+
inputZod: mcpTrueoUnwrapTydInputSchema
|
|
7190
|
+
}),
|
|
7191
|
+
defineProtocolMcpTool({
|
|
7192
|
+
name: "ctm_trueo_build_mint_multisign",
|
|
7193
|
+
actionId: "trueo.mint",
|
|
7194
|
+
protocolId: "trueo",
|
|
7195
|
+
chainCategory: "evm",
|
|
7196
|
+
description: "Mint YES+NO from TYD (default) or USDC via TruthMarketAdapter. Base 8453. Not a bet \u2014 allowed near market close. 30-minute multiSign expiry.",
|
|
7197
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress from ctm_trueo_fetch_market", "amountHuman"],
|
|
7198
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoMint" },
|
|
7199
|
+
inputZod: mcpTrueoMintInputSchema
|
|
7200
|
+
}),
|
|
7201
|
+
defineProtocolMcpTool({
|
|
7202
|
+
name: "ctm_trueo_build_burn_multisign",
|
|
7203
|
+
actionId: "trueo.burn",
|
|
7204
|
+
protocolId: "trueo",
|
|
7205
|
+
chainCategory: "evm",
|
|
7206
|
+
description: "Burn equal YES+NO back to TYD (or USDC via adapter). Not a bet. 30-minute expiry.",
|
|
7207
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress", "amountHuman"],
|
|
7208
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoBurn" },
|
|
7209
|
+
inputZod: mcpTrueoBurnInputSchema
|
|
7210
|
+
}),
|
|
7211
|
+
defineProtocolMcpTool({
|
|
7212
|
+
name: "ctm_trueo_build_redeem_multisign",
|
|
7213
|
+
actionId: "trueo.redeem",
|
|
7214
|
+
protocolId: "trueo",
|
|
7215
|
+
chainCategory: "evm",
|
|
7216
|
+
description: "Redeem winning outcome tokens after resolution. Not a bet. 30-minute expiry.",
|
|
7217
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress", "amountHuman"],
|
|
7218
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoRedeem" },
|
|
7219
|
+
inputZod: mcpTrueoRedeemInputSchema
|
|
7220
|
+
}),
|
|
7221
|
+
defineProtocolMcpTool({
|
|
7222
|
+
name: "ctm_trueo_build_swap_multisign",
|
|
7223
|
+
actionId: "trueo.swap",
|
|
7224
|
+
protocolId: "trueo",
|
|
7225
|
+
chainCategory: "evm",
|
|
7226
|
+
description: "Buy Yes or No with TYD via UniversalRouterAdapter V4 swap. Refuses if the market closes within 5 minutes. extraJSON stores endOfTrading for Get Sig/Execute. 30-minute expiry.",
|
|
7227
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress", "side", "amountHuman"],
|
|
7228
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoSwap" },
|
|
7229
|
+
inputZod: mcpTrueoSwapInputSchema
|
|
7230
|
+
}),
|
|
7231
|
+
defineProtocolMcpTool({
|
|
7232
|
+
name: "ctm_trueo_build_create_order_multisign",
|
|
7233
|
+
actionId: "trueo.create-order",
|
|
7234
|
+
protocolId: "trueo",
|
|
7235
|
+
chainCategory: "evm",
|
|
7236
|
+
description: "Create an OrderManager limit order (Yes or No). Refuses if the market closes within 5 minutes. 30-minute expiry.",
|
|
7237
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress", "side", "amountHuman", "tickLower", "tickUpper"],
|
|
7238
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoCreateOrder" },
|
|
7239
|
+
inputZod: mcpTrueoCreateOrderInputSchema
|
|
7240
|
+
}),
|
|
7241
|
+
defineProtocolMcpTool({
|
|
7242
|
+
name: "ctm_trueo_build_cancel_order_multisign",
|
|
7243
|
+
actionId: "trueo.cancel-order",
|
|
7244
|
+
protocolId: "trueo",
|
|
7245
|
+
chainCategory: "evm",
|
|
7246
|
+
description: "Cancel an OrderManager order. Not a bet \u2014 allowed after close. 30-minute expiry.",
|
|
7247
|
+
prerequisites: ["keyGenId", "chainId 8453", "marketAddress", "side", "orderId"],
|
|
7248
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "buildEvmMultisignBodyTrueoCancelOrder" },
|
|
7249
|
+
inputZod: mcpTrueoCancelOrderInputSchema
|
|
6446
7250
|
})
|
|
6447
7251
|
];
|
|
6448
7252
|
|
|
@@ -8723,6 +9527,310 @@ var CORE_MCP_TOOL_DEFINITIONS = [
|
|
|
8723
9527
|
],
|
|
8724
9528
|
handler: { importPath: "protocols/evm/pendle", exportName: "buildEvmMultisignBodyPendleRedeemRewardsBatch" },
|
|
8725
9529
|
inputZod: mcpPendleBuildRedeemRewardsMultisignInputSchema
|
|
9530
|
+
}),
|
|
9531
|
+
defineMcpTool({
|
|
9532
|
+
name: "ctm_derive_fetch_currencies",
|
|
9533
|
+
actionId: "derive.fetch-currencies",
|
|
9534
|
+
protocolId: "derive",
|
|
9535
|
+
chainCategory: "evm",
|
|
9536
|
+
description: "List Derive currencies from public/get_all_currencies. Used to map asset-row symbols (ETH, USDC, BTC, \u2026). load_defi_protocol derive activates defi:derive:market-data.",
|
|
9537
|
+
prerequisites: ["load_defi_protocol derive"],
|
|
9538
|
+
followUp: ["ctm_derive_fetch_option_chain", "ctm_derive_fetch_tickers", "ctm_derive_search_instruments"],
|
|
9539
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchCurrenciesSummary" },
|
|
9540
|
+
inputZod: mcpDeriveFetchCurrenciesInputSchema,
|
|
9541
|
+
outputZod: mcpDeriveFetchCurrenciesOutputSchema
|
|
9542
|
+
}),
|
|
9543
|
+
defineMcpTool({
|
|
9544
|
+
name: "ctm_derive_fetch_option_chain",
|
|
9545
|
+
actionId: "derive.fetch-option-chain",
|
|
9546
|
+
protocolId: "derive",
|
|
9547
|
+
chainCategory: "evm",
|
|
9548
|
+
description: "Compact Derive expiry ladder for a currency (counts + min/max strike per YYYYMMDD). Does not dump every instrument. Then ctm_derive_fetch_tickers for that expiry.",
|
|
9549
|
+
prerequisites: ["currency e.g. ETH"],
|
|
9550
|
+
followUp: ["ctm_derive_fetch_tickers", "ctm_derive_search_instruments", "ctm_derive_fetch_market_snapshot"],
|
|
9551
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchOptionChainAgentSummary" },
|
|
9552
|
+
inputZod: mcpDeriveFetchOptionChainInputSchema,
|
|
9553
|
+
outputZod: mcpDeriveFetchOptionChainOutputSchema
|
|
9554
|
+
}),
|
|
9555
|
+
defineMcpTool({
|
|
9556
|
+
name: "ctm_derive_fetch_tickers",
|
|
9557
|
+
actionId: "derive.fetch-tickers",
|
|
9558
|
+
protocolId: "derive",
|
|
9559
|
+
chainCategory: "evm",
|
|
9560
|
+
description: 'ATM strike/premium ladder for one Derive expiry (bid/ask/mark). expiryDate is YYYYMMDD \u2014 string or number. Default ~9 strikes around index; pass ladder:"all" for every strike.',
|
|
9561
|
+
prerequisites: ["currency", "expiryDate YYYYMMDD (string or number)"],
|
|
9562
|
+
followUp: ["ctm_derive_fetch_market_snapshot", "ctm_derive_order_quote", "ctm_derive_build_place_order_multisign"],
|
|
9563
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchTickersSummary" },
|
|
9564
|
+
inputZod: mcpDeriveFetchTickersInputSchema,
|
|
9565
|
+
outputZod: mcpDeriveFetchTickersOutputSchema
|
|
9566
|
+
}),
|
|
9567
|
+
defineMcpTool({
|
|
9568
|
+
name: "ctm_derive_search_instruments",
|
|
9569
|
+
actionId: "derive.search-instruments",
|
|
9570
|
+
protocolId: "derive",
|
|
9571
|
+
chainCategory: "evm",
|
|
9572
|
+
description: "Search Derive option instrument names by strike, expiry, or C/P suffix.",
|
|
9573
|
+
prerequisites: ["currency", "query"],
|
|
9574
|
+
followUp: ["ctm_derive_fetch_market_snapshot", "ctm_derive_build_place_order_multisign"],
|
|
9575
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveSearchInstrumentsSummary" },
|
|
9576
|
+
inputZod: mcpDeriveSearchInstrumentsInputSchema,
|
|
9577
|
+
outputZod: mcpDeriveSearchInstrumentsOutputSchema
|
|
9578
|
+
}),
|
|
9579
|
+
defineMcpTool({
|
|
9580
|
+
name: "ctm_derive_fetch_market_snapshot",
|
|
9581
|
+
actionId: "derive.fetch-market-snapshot",
|
|
9582
|
+
protocolId: "derive",
|
|
9583
|
+
chainCategory: "evm",
|
|
9584
|
+
description: "Live Derive ticker: mark, index, bid/ask, greeks. Throws if no live price.",
|
|
9585
|
+
prerequisites: ["instrumentName from fetch_option_chain"],
|
|
9586
|
+
followUp: ["ctm_derive_fetch_ohlcv", "ctm_derive_order_quote", "ctm_derive_build_place_order_multisign"],
|
|
9587
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchMarketSnapshotSummary" },
|
|
9588
|
+
inputZod: mcpDeriveFetchMarketSnapshotInputSchema,
|
|
9589
|
+
outputZod: mcpDeriveFetchMarketSnapshotOutputSchema
|
|
9590
|
+
}),
|
|
9591
|
+
defineMcpTool({
|
|
9592
|
+
name: "ctm_derive_fetch_ohlcv",
|
|
9593
|
+
actionId: "derive.fetch-ohlcv",
|
|
9594
|
+
protocolId: "derive",
|
|
9595
|
+
chainCategory: "evm",
|
|
9596
|
+
description: 'OHLCV for a Derive option (instrumentName) or underlying index (currency + marketKind index). Default is ~96 bars for the interval (not a 14-day dump). Envelope { ohlcv, dataSource: "derive" }. Then continuum__prepare_chart_from_rows if the user wants a chart.',
|
|
9597
|
+
prerequisites: ["instrumentName or currency"],
|
|
9598
|
+
followUp: ["continuum__prepare_chart_from_rows", "ctm_derive_fetch_market_snapshot"],
|
|
9599
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchOhlcvSummary" },
|
|
9600
|
+
inputZod: mcpDeriveFetchOhlcvInputSchema,
|
|
9601
|
+
outputZod: mcpDeriveFetchOhlcvOutputSchema
|
|
9602
|
+
}),
|
|
9603
|
+
defineMcpTool({
|
|
9604
|
+
name: "ctm_derive_order_quote",
|
|
9605
|
+
actionId: "derive.order-quote",
|
|
9606
|
+
protocolId: "derive",
|
|
9607
|
+
chainCategory: "evm",
|
|
9608
|
+
description: "Dry-run Derive fill / margin preview (public/order_quote).",
|
|
9609
|
+
prerequisites: ["instrumentName", "direction", "amount", "limitPrice"],
|
|
9610
|
+
followUp: ["ctm_derive_build_place_order_multisign"],
|
|
9611
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveOrderQuoteSummary" },
|
|
9612
|
+
inputZod: mcpDeriveOrderQuoteInputSchema,
|
|
9613
|
+
outputZod: mcpDeriveOrderQuoteOutputSchema
|
|
9614
|
+
}),
|
|
9615
|
+
defineMcpTool({
|
|
9616
|
+
name: "ctm_derive_fetch_risk_universes",
|
|
9617
|
+
actionId: "derive.fetch-risk-universes",
|
|
9618
|
+
protocolId: "derive",
|
|
9619
|
+
chainCategory: "evm",
|
|
9620
|
+
description: "List Derive risk universes (manager_id + collaterals). Required before the first deposit. Pick a manager that lists ETH options and USDC (or the row currency).",
|
|
9621
|
+
prerequisites: ["activate_tool_group defi:derive:options"],
|
|
9622
|
+
followUp: [
|
|
9623
|
+
"ctm_derive_build_deposit_new_subaccount_multisign",
|
|
9624
|
+
"ctm_derive_register_deposit_address",
|
|
9625
|
+
"ctm_derive_build_socket_deposit_multisign",
|
|
9626
|
+
"ctm_derive_build_hype_vault_deposit_multisign"
|
|
9627
|
+
],
|
|
9628
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchRiskUniversesSummary" },
|
|
9629
|
+
inputZod: mcpDeriveFetchRiskUniversesInputSchema,
|
|
9630
|
+
outputZod: mcpDeriveFetchRiskUniversesOutputSchema
|
|
9631
|
+
}),
|
|
9632
|
+
defineMcpTool({
|
|
9633
|
+
name: "ctm_derive_fetch_pending_deposits",
|
|
9634
|
+
actionId: "derive.fetch-pending-deposits",
|
|
9635
|
+
protocolId: "derive",
|
|
9636
|
+
chainCategory: "evm",
|
|
9637
|
+
description: "Poll public/get_pending_deposits for the KeyGen wallet. credited:false means wait; then call fetch_subaccounts. First deposit is L1, Socket (ETH/OP/Base/Arb), or HyperEVM HYPE.",
|
|
9638
|
+
prerequisites: ["wallet / executorAddress"],
|
|
9639
|
+
followUp: ["ctm_derive_fetch_subaccounts"],
|
|
9640
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchPendingDepositsSummary" },
|
|
9641
|
+
inputZod: mcpDeriveFetchPendingDepositsInputSchema,
|
|
9642
|
+
outputZod: mcpDeriveFetchPendingDepositsOutputSchema
|
|
9643
|
+
}),
|
|
9644
|
+
defineMcpTool({
|
|
9645
|
+
name: "ctm_derive_register_deposit_address",
|
|
9646
|
+
actionId: "derive.register-deposit-address",
|
|
9647
|
+
protocolId: "derive",
|
|
9648
|
+
chainCategory: "evm",
|
|
9649
|
+
description: "public/register_deposit_address \u2014 deterministic Ethereum L1 deposit address for this wallet. Then transfer the token with ctm_derive_build_deposit_address_transfer_multisign. Do not send from Base/Arb to this address.",
|
|
9650
|
+
prerequisites: ["wallet", "managerId (new subaccount) or subaccountId (existing)"],
|
|
9651
|
+
followUp: ["ctm_derive_build_deposit_address_transfer_multisign", "ctm_derive_fetch_pending_deposits"],
|
|
9652
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveRegisterDepositAddress" },
|
|
9653
|
+
inputZod: mcpDeriveRegisterDepositAddressInputSchema,
|
|
9654
|
+
outputZod: mcpDeriveRegisterDepositAddressOutputSchema
|
|
9655
|
+
}),
|
|
9656
|
+
defineMcpTool({
|
|
9657
|
+
name: "ctm_derive_fetch_subaccounts",
|
|
9658
|
+
actionId: "derive.fetch-subaccounts",
|
|
9659
|
+
protocolId: "derive",
|
|
9660
|
+
chainCategory: "evm",
|
|
9661
|
+
description: "List Derive subaccount ids for the KeyGen executor. Empty list returns funded:false and notes to deposit from a fundable logo row (L1 / Socket / HYPE vault). Two ids after first credit is normal (trading + fallback manager 0).",
|
|
9662
|
+
prerequisites: ["wallet / executorAddress", "node-cached EIP-191 login"],
|
|
9663
|
+
followUp: ["ctm_derive_fetch_portfolio", "ctm_derive_build_place_order_multisign"],
|
|
9664
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchSubaccountsSummary" },
|
|
9665
|
+
inputZod: mcpDeriveFetchSubaccountsInputSchema,
|
|
9666
|
+
outputZod: mcpDeriveFetchSubaccountsOutputSchema
|
|
9667
|
+
}),
|
|
9668
|
+
defineMcpTool({
|
|
9669
|
+
name: "ctm_derive_fetch_portfolio",
|
|
9670
|
+
actionId: "derive.fetch-portfolio",
|
|
9671
|
+
protocolId: "derive",
|
|
9672
|
+
chainCategory: "evm",
|
|
9673
|
+
description: "Derive private/get_subaccount portfolio for a funded subaccountId.",
|
|
9674
|
+
prerequisites: ["subaccountId from ctm_derive_fetch_subaccounts"],
|
|
9675
|
+
followUp: ["ctm_derive_fetch_positions", "ctm_derive_build_place_order_multisign"],
|
|
9676
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchPortfolioSummary" },
|
|
9677
|
+
inputZod: mcpDeriveFetchPortfolioInputSchema,
|
|
9678
|
+
outputZod: mcpDeriveFetchPortfolioOutputSchema
|
|
9679
|
+
}),
|
|
9680
|
+
defineMcpTool({
|
|
9681
|
+
name: "ctm_derive_fetch_positions",
|
|
9682
|
+
actionId: "derive.fetch-positions",
|
|
9683
|
+
protocolId: "derive",
|
|
9684
|
+
chainCategory: "evm",
|
|
9685
|
+
description: "Open Derive option positions for a subaccountId from fetch_subaccounts.",
|
|
9686
|
+
prerequisites: ["subaccountId from ctm_derive_fetch_subaccounts"],
|
|
9687
|
+
followUp: ["ctm_derive_build_place_order_multisign"],
|
|
9688
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchPositionsSummary" },
|
|
9689
|
+
inputZod: mcpDeriveFetchPositionsInputSchema,
|
|
9690
|
+
outputZod: mcpDeriveFetchPositionsOutputSchema
|
|
9691
|
+
}),
|
|
9692
|
+
defineMcpTool({
|
|
9693
|
+
name: "ctm_derive_fetch_open_orders",
|
|
9694
|
+
actionId: "derive.fetch-open-orders",
|
|
9695
|
+
protocolId: "derive",
|
|
9696
|
+
chainCategory: "evm",
|
|
9697
|
+
description: "Open Derive orders for a subaccountId. Follow with cancel/replace.",
|
|
9698
|
+
prerequisites: ["subaccountId from ctm_derive_fetch_subaccounts"],
|
|
9699
|
+
followUp: ["ctm_derive_build_cancel_multisign", "ctm_derive_build_replace_order_multisign"],
|
|
9700
|
+
handler: { importPath: "protocols/evm/derive", exportName: "deriveFetchOpenOrdersSummary" },
|
|
9701
|
+
inputZod: mcpDeriveFetchOpenOrdersInputSchema,
|
|
9702
|
+
outputZod: mcpDeriveFetchOpenOrdersOutputSchema
|
|
9703
|
+
}),
|
|
9704
|
+
defineMcpTool({
|
|
9705
|
+
name: "search_prediction_markets",
|
|
9706
|
+
actionId: "prediction-markets.search",
|
|
9707
|
+
protocolId: "prediction-markets",
|
|
9708
|
+
chainCategory: "evm",
|
|
9709
|
+
description: 'Venue-agnostic prediction market search for MPA chat. v1 adapter is Trueo on Base. Pass the operator topic verbatim as query (case-insensitive title substring). Do not substitute a category or synonym. Do not set trending when query is set. Empty query lists trending (max 10; cannot page). If hasMore, call again with offset/nextOffset, trending=false, indexBase=nextIndexBase, excludeAddresses of listed venueMarketIds. Default: live and recently finished (14 days) \u2014 do not pass includeAll unless the operator asked for closed or historical markets. If the live board is empty, say so. After a pick, get_prediction_market. Writes (mint / limit / burn / redeem / Yes-No swap) are not in the opening catalog \u2014 load_defi_protocol({ protocolId: "trueo" }) then get_defi_protocol_skill or search_continuum_tools for ctm_trueo_build_*.',
|
|
9710
|
+
prerequisites: [],
|
|
9711
|
+
followUp: ["get_prediction_market", "load_defi_protocol", "get_defi_protocol_skill"],
|
|
9712
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "searchPredictionMarketsSummary" },
|
|
9713
|
+
inputZod: mcpSearchPredictionMarketsInputSchema,
|
|
9714
|
+
outputZod: mcpSearchPredictionMarketsOutputSchema
|
|
9715
|
+
}),
|
|
9716
|
+
defineMcpTool({
|
|
9717
|
+
name: "get_prediction_market",
|
|
9718
|
+
actionId: "prediction-markets.get",
|
|
9719
|
+
protocolId: "prediction-markets",
|
|
9720
|
+
chainCategory: "evm",
|
|
9721
|
+
description: 'Full selected prediction market (rules, Yes/No, volume, TVL, expiry). Use after search_prediction_markets pick #N. Does not require load_defi_protocol. Writes stay behind load_defi_protocol({ protocolId: "trueo" }): ctm_trueo_build_wrap_tyd_multisign, ctm_trueo_build_unwrap_tyd_multisign, ctm_trueo_build_mint_multisign, ctm_trueo_build_create_order_multisign, ctm_trueo_build_burn_multisign, ctm_trueo_build_redeem_multisign, ctm_trueo_build_swap_multisign. Discover via get_defi_protocol_skill or search_continuum_tools \u2014 they are not on the opening chat catalog.',
|
|
9722
|
+
prerequisites: ["venueMarketId from search_prediction_markets"],
|
|
9723
|
+
followUp: [
|
|
9724
|
+
"load_defi_protocol",
|
|
9725
|
+
"get_defi_protocol_skill",
|
|
9726
|
+
"ctm_trueo_build_wrap_tyd_multisign",
|
|
9727
|
+
"ctm_trueo_build_mint_multisign",
|
|
9728
|
+
"ctm_trueo_build_create_order_multisign",
|
|
9729
|
+
"ctm_trueo_build_swap_multisign",
|
|
9730
|
+
"ctm_trueo_build_burn_multisign",
|
|
9731
|
+
"ctm_trueo_build_redeem_multisign"
|
|
9732
|
+
],
|
|
9733
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "getPredictionMarketSummary" },
|
|
9734
|
+
inputZod: mcpGetPredictionMarketInputSchema,
|
|
9735
|
+
outputZod: mcpGetPredictionMarketOutputSchema
|
|
9736
|
+
}),
|
|
9737
|
+
defineMcpTool({
|
|
9738
|
+
name: "list_my_prediction_markets",
|
|
9739
|
+
actionId: "prediction-markets.my-holdings",
|
|
9740
|
+
protocolId: "prediction-markets",
|
|
9741
|
+
chainCategory: "evm",
|
|
9742
|
+
description: "Live Yes/No, trading window, and resolution for markets the user has bet on. Pass YES/NO tokenAddresses from get_token_registry and/or marketAddresses from prior bets. Does not require load_defi_protocol. After a bet, add_to_token_registry for the YES or NO token so it shows here. Exit: load_defi_protocol trueo then ctm_trueo_build_burn_multisign or ctm_trueo_build_redeem_multisign.",
|
|
9743
|
+
prerequisites: [],
|
|
9744
|
+
followUp: [
|
|
9745
|
+
"get_prediction_market",
|
|
9746
|
+
"add_to_token_registry",
|
|
9747
|
+
"load_defi_protocol",
|
|
9748
|
+
"ctm_trueo_build_burn_multisign",
|
|
9749
|
+
"ctm_trueo_build_redeem_multisign"
|
|
9750
|
+
],
|
|
9751
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "listMyPredictionMarketsSummary" },
|
|
9752
|
+
inputZod: mcpListMyPredictionMarketsInputSchema,
|
|
9753
|
+
outputZod: mcpListMyPredictionMarketsOutputSchema
|
|
9754
|
+
}),
|
|
9755
|
+
defineMcpTool({
|
|
9756
|
+
name: "ctm_trueo_fetch_categories",
|
|
9757
|
+
actionId: "trueo.fetch-categories",
|
|
9758
|
+
protocolId: "trueo",
|
|
9759
|
+
chainCategory: "evm",
|
|
9760
|
+
description: "Trueo category chips (Politics, Crypto, Sports, \u2026). Use as category on search.",
|
|
9761
|
+
prerequisites: ["load_defi_protocol trueo"],
|
|
9762
|
+
followUp: ["ctm_trueo_search_markets", "ctm_trueo_fetch_trending"],
|
|
9763
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoFetchCategoriesSummary" },
|
|
9764
|
+
inputZod: mcpTrueoFetchCategoriesInputSchema,
|
|
9765
|
+
outputZod: mcpTrueoFetchCategoriesOutputSchema
|
|
9766
|
+
}),
|
|
9767
|
+
defineMcpTool({
|
|
9768
|
+
name: "ctm_trueo_fetch_trending",
|
|
9769
|
+
actionId: "trueo.fetch-trending",
|
|
9770
|
+
protocolId: "trueo",
|
|
9771
|
+
chainCategory: "evm",
|
|
9772
|
+
description: "Trueo trending on Base (max 10; API does not page). More markets: ctm_trueo_search_markets with offset=0. Default: live and recently finished (14 days).",
|
|
9773
|
+
prerequisites: ["load_defi_protocol trueo"],
|
|
9774
|
+
followUp: ["ctm_trueo_fetch_market"],
|
|
9775
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoFetchTrendingSummary" },
|
|
9776
|
+
inputZod: mcpTrueoFetchTrendingInputSchema,
|
|
9777
|
+
outputZod: mcpTrueoFetchTrendingOutputSchema
|
|
9778
|
+
}),
|
|
9779
|
+
defineMcpTool({
|
|
9780
|
+
name: "ctm_trueo_search_markets",
|
|
9781
|
+
actionId: "trueo.search-markets",
|
|
9782
|
+
protocolId: "trueo",
|
|
9783
|
+
chainCategory: "evm",
|
|
9784
|
+
description: "Trueo-only search (query + category), pages of 10. Same rows as search_prediction_markets. If hasMore, pass nextOffset and excludeAddresses of listed addresses. Default: live and recently finished (14 days).",
|
|
9785
|
+
prerequisites: ["load_defi_protocol trueo"],
|
|
9786
|
+
followUp: ["ctm_trueo_fetch_market"],
|
|
9787
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoSearchMarketsSummary" },
|
|
9788
|
+
inputZod: mcpTrueoSearchMarketsInputSchema,
|
|
9789
|
+
outputZod: mcpTrueoSearchMarketsOutputSchema
|
|
9790
|
+
}),
|
|
9791
|
+
defineMcpTool({
|
|
9792
|
+
name: "ctm_trueo_fetch_market",
|
|
9793
|
+
actionId: "trueo.fetch-market",
|
|
9794
|
+
protocolId: "trueo",
|
|
9795
|
+
chainCategory: "evm",
|
|
9796
|
+
description: "Selected Trueo market: rules, source, Yes/No %, TVL, size, tokens, pools, endOfTrading. Copy address for build_*. Writes: ctm_trueo_build_mint_multisign, ctm_trueo_build_create_order_multisign, ctm_trueo_build_swap_multisign, ctm_trueo_build_burn_multisign, ctm_trueo_build_redeem_multisign (after load_defi_protocol trueo).",
|
|
9797
|
+
prerequisites: ["marketAddress from search or trending"],
|
|
9798
|
+
followUp: [
|
|
9799
|
+
"ctm_trueo_fetch_chance_series",
|
|
9800
|
+
"ctm_trueo_fetch_orderbook",
|
|
9801
|
+
"ctm_trueo_build_mint_multisign",
|
|
9802
|
+
"ctm_trueo_build_create_order_multisign",
|
|
9803
|
+
"ctm_trueo_build_swap_multisign",
|
|
9804
|
+
"ctm_trueo_build_burn_multisign",
|
|
9805
|
+
"ctm_trueo_build_redeem_multisign"
|
|
9806
|
+
],
|
|
9807
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoFetchMarketSummary" },
|
|
9808
|
+
inputZod: mcpTrueoFetchMarketInputSchema,
|
|
9809
|
+
outputZod: mcpTrueoFetchMarketOutputSchema
|
|
9810
|
+
}),
|
|
9811
|
+
defineMcpTool({
|
|
9812
|
+
name: "ctm_trueo_fetch_chance_series",
|
|
9813
|
+
actionId: "trueo.fetch-chance-series",
|
|
9814
|
+
protocolId: "trueo",
|
|
9815
|
+
chainCategory: "evm",
|
|
9816
|
+
description: "Yes/No chance samples for a pool id from fetch_market. Not candlesticks. Default hourly (3600s) over 14 days. 1H/1D/1W/All coerce to hourly.",
|
|
9817
|
+
prerequisites: ["poolId from ctm_trueo_fetch_market"],
|
|
9818
|
+
followUp: ["ctm_trueo_build_swap_multisign"],
|
|
9819
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoFetchChanceSeriesSummary" },
|
|
9820
|
+
inputZod: mcpTrueoFetchChanceSeriesInputSchema,
|
|
9821
|
+
outputZod: mcpTrueoFetchChanceSeriesOutputSchema
|
|
9822
|
+
}),
|
|
9823
|
+
defineMcpTool({
|
|
9824
|
+
name: "ctm_trueo_fetch_orderbook",
|
|
9825
|
+
actionId: "trueo.fetch-orderbook",
|
|
9826
|
+
protocolId: "trueo",
|
|
9827
|
+
chainCategory: "evm",
|
|
9828
|
+
description: "Yes/No depth: live tick, implied price, OrderManager pending rows when rpcUrl is set, recent trades.",
|
|
9829
|
+
prerequisites: ["marketAddress from ctm_trueo_fetch_market"],
|
|
9830
|
+
followUp: ["ctm_trueo_build_swap_multisign", "ctm_trueo_build_create_order_multisign"],
|
|
9831
|
+
handler: { importPath: "protocols/evm/trueo", exportName: "trueoFetchOrderbookSummary" },
|
|
9832
|
+
inputZod: mcpTrueoFetchOrderbookInputSchema,
|
|
9833
|
+
outputZod: mcpTrueoFetchOrderbookOutputSchema
|
|
8726
9834
|
})
|
|
8727
9835
|
];
|
|
8728
9836
|
var MCP_TOOL_DEFINITIONS = [
|
|
@@ -9616,7 +10724,26 @@ var hyperliquidProtocolModule = {
|
|
|
9616
10724
|
dex: { type: "string", required: false, description: "HIP-3 dex name when applicable" },
|
|
9617
10725
|
takeProfitTriggerPxHuman: { type: "string", required: false, description: "TP trigger \u2014 enables L1 bracket with SL" },
|
|
9618
10726
|
stopLossTriggerPxHuman: { type: "string", required: false, description: "SL trigger \u2014 enables L1 bracket with TP" },
|
|
9619
|
-
tpslExecMode: { type: "string", required: false, description: "limit_at_trigger (default) or market" }
|
|
10727
|
+
tpslExecMode: { type: "string", required: false, description: "limit_at_trigger (default) or market" },
|
|
10728
|
+
trailingOffsetHuman: { type: "string", required: false, description: "Trailing retracement \u2014 EIP-712 trailingStop (cannot combine with SL)" },
|
|
10729
|
+
trailingOffsetType: { type: "string", required: false, description: "price or percentage" },
|
|
10730
|
+
trailingActivationPxHuman: { type: "string", required: false, description: "Optional activation mark price" }
|
|
10731
|
+
}
|
|
10732
|
+
},
|
|
10733
|
+
{
|
|
10734
|
+
id: "hyperliquid.trailingStop",
|
|
10735
|
+
protocolId: HYPERLIQUID_PROTOCOL_ID,
|
|
10736
|
+
chainCategory: "evm",
|
|
10737
|
+
description: "Place a Hyperliquid perp trailing stop via L1 trailingStop action (EIP-712 /exchange)",
|
|
10738
|
+
commonParams: ["keyGen", "purposeText"],
|
|
10739
|
+
params: {
|
|
10740
|
+
coin: { type: "string", required: true, description: "Perp coin" },
|
|
10741
|
+
isBuy: { type: "boolean", required: true, description: "false closes a long / opens a short" },
|
|
10742
|
+
szHuman: { type: "string", required: true, description: "Size in coin units" },
|
|
10743
|
+
trailingOffsetHuman: { type: "string", required: true, description: "Retracement distance or percent" },
|
|
10744
|
+
trailingOffsetType: { type: "string", required: false, description: "price or percentage (default)" },
|
|
10745
|
+
trailingActivationPxHuman: { type: "string", required: false, description: "Optional activation mark price" },
|
|
10746
|
+
reduceOnly: { type: "boolean", required: false, description: "true (default) reduces a position" }
|
|
9620
10747
|
}
|
|
9621
10748
|
},
|
|
9622
10749
|
{
|
|
@@ -11613,6 +12740,400 @@ var pendleProtocolModule = {
|
|
|
11613
12740
|
]
|
|
11614
12741
|
};
|
|
11615
12742
|
registerProtocolModule(pendleProtocolModule);
|
|
12743
|
+
|
|
12744
|
+
// src/protocols/evm/derive/constants.ts
|
|
12745
|
+
var DERIVE_PROTOCOL_ID = "derive";
|
|
12746
|
+
var DERIVE_MAINNET_API = "https://api.derive.xyz/v3";
|
|
12747
|
+
var DERIVE_TESTNET_API = "https://testnet.api.derive.xyz/v3";
|
|
12748
|
+
var DERIVE_MAINNET_API_V2 = "https://api.lyra.finance";
|
|
12749
|
+
var DERIVE_TESTNET_API_V2 = "https://api-demo.lyra.finance";
|
|
12750
|
+
function deriveNetworkFromChainId(chainId) {
|
|
12751
|
+
return chainId === 11155111 ? "testnet" : "mainnet";
|
|
12752
|
+
}
|
|
12753
|
+
function deriveApiBaseUrl(network = "mainnet") {
|
|
12754
|
+
return network === "testnet" ? DERIVE_TESTNET_API : DERIVE_MAINNET_API;
|
|
12755
|
+
}
|
|
12756
|
+
function deriveApiFallbackBaseUrl(network = "mainnet") {
|
|
12757
|
+
return network === "testnet" ? DERIVE_TESTNET_API_V2 : DERIVE_MAINNET_API_V2;
|
|
12758
|
+
}
|
|
12759
|
+
var DERIVE_ASSET_ROW_CHAIN_IDS = [1, 10, 8453, 42161, 999, 11155111];
|
|
12760
|
+
function isDeriveAssetRowChainId(chainId) {
|
|
12761
|
+
return DERIVE_ASSET_ROW_CHAIN_IDS.includes(chainId);
|
|
12762
|
+
}
|
|
12763
|
+
function isDeriveChainSupported(chainId) {
|
|
12764
|
+
return isDeriveAssetRowChainId(chainId);
|
|
12765
|
+
}
|
|
12766
|
+
var NATIVE_ZERO = "0x0000000000000000000000000000000000000000";
|
|
12767
|
+
var USDC = {
|
|
12768
|
+
1: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
12769
|
+
10: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
|
|
12770
|
+
8453: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
12771
|
+
42161: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
|
|
12772
|
+
11155111: "0x73Efab09362052D26FB93A730Be4F8a5EdC833af"
|
|
12773
|
+
};
|
|
12774
|
+
var WETH = {
|
|
12775
|
+
1: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
|
|
12776
|
+
10: "0x4200000000000000000000000000000000000006",
|
|
12777
|
+
8453: "0x4200000000000000000000000000000000000006",
|
|
12778
|
+
42161: "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"
|
|
12779
|
+
};
|
|
12780
|
+
var WBTC = {
|
|
12781
|
+
1: "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599",
|
|
12782
|
+
10: "0x68f180fcCe6836688e9084f035309E29Bf0A2095",
|
|
12783
|
+
42161: "0x2f2a2543B76A4166549B7eCDcE5542a773Aa44fB"
|
|
12784
|
+
};
|
|
12785
|
+
var WHYPE = "0x5555555555555555555555555555555555555555";
|
|
12786
|
+
function deriveMappedTokensForChain(chainId) {
|
|
12787
|
+
const tokens = [];
|
|
12788
|
+
const add = (address, symbol, decimals, roles) => {
|
|
12789
|
+
if (!address) return;
|
|
12790
|
+
tokens.push({ address: getAddress(address), symbol, decimals, roles });
|
|
12791
|
+
};
|
|
12792
|
+
if ([1, 10, 8453, 42161].includes(chainId)) {
|
|
12793
|
+
add(NATIVE_ZERO, "ETH", 18, ["native", "underlying"]);
|
|
12794
|
+
add(WETH[chainId], "WETH", 18, ["native_wrapped", "underlying"]);
|
|
12795
|
+
}
|
|
12796
|
+
if (chainId === 999) {
|
|
12797
|
+
add(NATIVE_ZERO, "HYPE", 18, ["native", "collateral"]);
|
|
12798
|
+
add(WHYPE, "WHYPE", 18, ["native_wrapped", "collateral"]);
|
|
12799
|
+
}
|
|
12800
|
+
add(USDC[chainId], "USDC", 6, ["collateral", "quote"]);
|
|
12801
|
+
add(WBTC[chainId], "WBTC", 8, ["underlying", "collateral"]);
|
|
12802
|
+
return tokens;
|
|
12803
|
+
}
|
|
12804
|
+
function deriveNativeWrappedForChain(chainId) {
|
|
12805
|
+
if (chainId === 999) return WHYPE;
|
|
12806
|
+
return WETH[chainId];
|
|
12807
|
+
}
|
|
12808
|
+
function deriveAdvisorNotes() {
|
|
12809
|
+
return "Fund from Ethereum USDC/WETH/WBTC (L1 ACTION_MANAGER or deposit address), Socket USDC/WETH/WBTC on Optimism/Base/Arbitrum, or HyperEVM HYPE (vault). Derive Chain 957 is not a Continuum Assets chain. After credit, EIP-712 options use Derive collateral.";
|
|
12810
|
+
}
|
|
12811
|
+
|
|
12812
|
+
// src/protocols/evm/derive/api.ts
|
|
12813
|
+
function methodName(method) {
|
|
12814
|
+
return method.replace(/^\//, "");
|
|
12815
|
+
}
|
|
12816
|
+
function isDerivePublicMethod(method) {
|
|
12817
|
+
return methodName(method).startsWith("public/");
|
|
12818
|
+
}
|
|
12819
|
+
function isEmptyDerivePublicResult(method, result) {
|
|
12820
|
+
const m = methodName(method);
|
|
12821
|
+
if (result == null) return true;
|
|
12822
|
+
if (m === "public/get_all_currencies" && Array.isArray(result) && result.length === 0) return true;
|
|
12823
|
+
if (m === "public/get_tickers" && result && typeof result === "object") {
|
|
12824
|
+
const tickers = result.tickers;
|
|
12825
|
+
if (Array.isArray(tickers) && tickers.length === 0) return true;
|
|
12826
|
+
if (tickers && typeof tickers === "object" && !Array.isArray(tickers) && Object.keys(tickers).length === 0) {
|
|
12827
|
+
return true;
|
|
12828
|
+
}
|
|
12829
|
+
}
|
|
12830
|
+
return false;
|
|
12831
|
+
}
|
|
12832
|
+
function isDeriveRecoverablePublicError(err) {
|
|
12833
|
+
const name = err instanceof Error ? err.name : "";
|
|
12834
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
12835
|
+
return name === "TimeoutError" || name === "AbortError" || /Internal error|HTTP 404|Not Found|returned empty|empty catalog|Ticker not found|aborted due to timeout|The operation was aborted/i.test(
|
|
12836
|
+
msg
|
|
12837
|
+
);
|
|
12838
|
+
}
|
|
12839
|
+
function unwrapResult(json, method) {
|
|
12840
|
+
if (json && typeof json === "object") {
|
|
12841
|
+
const rec = json;
|
|
12842
|
+
if (rec.error) {
|
|
12843
|
+
const err = rec.error;
|
|
12844
|
+
const detail = err.data != null && String(err.data).trim() ? ` (${String(err.data).slice(0, 160)})` : "";
|
|
12845
|
+
throw new Error(`Derive ${method} failed: ${err.message ?? JSON.stringify(rec.error)}${detail}`);
|
|
12846
|
+
}
|
|
12847
|
+
if ("result" in rec) return rec.result;
|
|
12848
|
+
}
|
|
12849
|
+
return json;
|
|
12850
|
+
}
|
|
12851
|
+
async function deriveRpcPost(args) {
|
|
12852
|
+
const method = methodName(args.method);
|
|
12853
|
+
const headers = { "Content-Type": "application/json" };
|
|
12854
|
+
if (args.auth) {
|
|
12855
|
+
headers["X-DeriveWallet"] = args.auth.wallet;
|
|
12856
|
+
headers["X-DeriveTimestamp"] = args.auth.timestamp;
|
|
12857
|
+
headers["X-DeriveSignature"] = args.auth.signature;
|
|
12858
|
+
}
|
|
12859
|
+
const res = await fetch(`${args.base}/${method}`, {
|
|
12860
|
+
method: "POST",
|
|
12861
|
+
headers,
|
|
12862
|
+
body: JSON.stringify(args.params ?? {}),
|
|
12863
|
+
cache: "no-store",
|
|
12864
|
+
signal: AbortSignal.timeout(15e3)
|
|
12865
|
+
});
|
|
12866
|
+
const text = await res.text().catch(() => "");
|
|
12867
|
+
if (!res.ok || !text.trim() || text.trim() === "Not Found") {
|
|
12868
|
+
throw new Error(`Derive ${method} HTTP ${res.status}: ${text.slice(0, 240) || "empty body"}`);
|
|
12869
|
+
}
|
|
12870
|
+
let json;
|
|
12871
|
+
try {
|
|
12872
|
+
json = JSON.parse(text);
|
|
12873
|
+
} catch {
|
|
12874
|
+
throw new Error(`Derive ${method} returned non-JSON: ${text.slice(0, 160)}`);
|
|
12875
|
+
}
|
|
12876
|
+
const result = unwrapResult(json, method);
|
|
12877
|
+
if (isEmptyDerivePublicResult(method, result)) {
|
|
12878
|
+
throw new Error(`Derive ${method} returned empty catalog`);
|
|
12879
|
+
}
|
|
12880
|
+
return result;
|
|
12881
|
+
}
|
|
12882
|
+
async function deriveRpc(args) {
|
|
12883
|
+
const network = args.network ?? "mainnet";
|
|
12884
|
+
const method = methodName(args.method);
|
|
12885
|
+
const primary = deriveApiBaseUrl(network);
|
|
12886
|
+
try {
|
|
12887
|
+
return await deriveRpcPost({
|
|
12888
|
+
base: primary,
|
|
12889
|
+
method,
|
|
12890
|
+
params: args.params,
|
|
12891
|
+
auth: args.auth
|
|
12892
|
+
});
|
|
12893
|
+
} catch (err) {
|
|
12894
|
+
const fallback = deriveApiFallbackBaseUrl(network);
|
|
12895
|
+
if (!isDerivePublicMethod(method) || fallback === primary || !isDeriveRecoverablePublicError(err)) {
|
|
12896
|
+
throw err;
|
|
12897
|
+
}
|
|
12898
|
+
return await deriveRpcPost({
|
|
12899
|
+
base: fallback,
|
|
12900
|
+
method,
|
|
12901
|
+
params: args.params,
|
|
12902
|
+
auth: args.auth
|
|
12903
|
+
});
|
|
12904
|
+
}
|
|
12905
|
+
}
|
|
12906
|
+
|
|
12907
|
+
// src/protocols/evm/derive/assets.ts
|
|
12908
|
+
async function deriveFetchCurrenciesRaw(args) {
|
|
12909
|
+
const result = await deriveRpc({
|
|
12910
|
+
method: "public/get_all_currencies",
|
|
12911
|
+
network: args?.network
|
|
12912
|
+
});
|
|
12913
|
+
if (Array.isArray(result)) return result;
|
|
12914
|
+
if (result && typeof result === "object" && Array.isArray(result.currencies)) {
|
|
12915
|
+
return result.currencies;
|
|
12916
|
+
}
|
|
12917
|
+
return [];
|
|
12918
|
+
}
|
|
12919
|
+
|
|
12920
|
+
// src/protocols/evm/derive/index.ts
|
|
12921
|
+
var deriveProtocolModule = {
|
|
12922
|
+
id: DERIVE_PROTOCOL_ID,
|
|
12923
|
+
chainCategory: "evm",
|
|
12924
|
+
isChainSupported(ctx) {
|
|
12925
|
+
if (ctx.chainCategory !== "evm") return false;
|
|
12926
|
+
const chainId = typeof ctx.chainId === "number" ? ctx.chainId : Number(ctx.chainId);
|
|
12927
|
+
return Number.isFinite(chainId) && isDeriveChainSupported(chainId);
|
|
12928
|
+
},
|
|
12929
|
+
isTokenSupported(token) {
|
|
12930
|
+
if (token.category !== "evm") return false;
|
|
12931
|
+
return token.kind === "erc20" || token.kind === "native";
|
|
12932
|
+
},
|
|
12933
|
+
actions: [
|
|
12934
|
+
{
|
|
12935
|
+
id: "derive.depositNewSubaccount",
|
|
12936
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12937
|
+
chainCategory: "evm",
|
|
12938
|
+
description: "Ethereum L1 approve + ACTION_MANAGER.depositToNewSubaccount. First credit creates the trading + fallback subaccounts. chainId 1 / 11155111. Arb/OP/Base use derive.socketDeposit; HyperEVM HYPE uses derive.hypeVaultDeposit.",
|
|
12939
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
12940
|
+
params: {
|
|
12941
|
+
protocolAsset: { type: "string", required: true, description: "Risk-universe collateral protocol asset" },
|
|
12942
|
+
underlyingErc20: { type: "string", required: true, description: "L1 ERC-20 to approve (usually USDC)" },
|
|
12943
|
+
amountHuman: { type: "string", required: true, description: "Deposit amount in underlying decimals" },
|
|
12944
|
+
managerId: { type: "number", required: true, description: "Risk-universe manager_id" }
|
|
12945
|
+
}
|
|
12946
|
+
},
|
|
12947
|
+
{
|
|
12948
|
+
id: "derive.depositAddressTransfer",
|
|
12949
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12950
|
+
chainCategory: "evm",
|
|
12951
|
+
description: "Ethereum L1 ERC-20 transfer to a registered Derive deposit address (standard / keeper sweep). Call register_deposit_address first.",
|
|
12952
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
12953
|
+
params: {
|
|
12954
|
+
underlyingErc20: { type: "string", required: true, description: "L1 ERC-20 to send (usually USDC)" },
|
|
12955
|
+
amountHuman: { type: "string", required: true, description: "Transfer amount in token units" },
|
|
12956
|
+
depositAddress: { type: "string", required: true, description: "From register_deposit_address" }
|
|
12957
|
+
}
|
|
12958
|
+
},
|
|
12959
|
+
{
|
|
12960
|
+
id: "derive.socketDeposit",
|
|
12961
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12962
|
+
chainCategory: "evm",
|
|
12963
|
+
description: "Socket FAST deposit of USDC/WETH/WBTC on Ethereum, Optimism, Base, or Arbitrum into Derive Chain. Native ETH wraps to WETH first. useCustomGas.",
|
|
12964
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
12965
|
+
params: {
|
|
12966
|
+
token: { type: "string", required: true, description: "Row ERC-20 or native 0x0 (wraps to WETH)" },
|
|
12967
|
+
amountHuman: { type: "string", required: true, description: "Deposit amount in token units" }
|
|
12968
|
+
}
|
|
12969
|
+
},
|
|
12970
|
+
{
|
|
12971
|
+
id: "derive.hypeVaultDeposit",
|
|
12972
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12973
|
+
chainCategory: "evm",
|
|
12974
|
+
description: "HyperEVM (999): wrap native HYPE to WHYPE if needed, approve Derive vault, deposit.",
|
|
12975
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
12976
|
+
params: {
|
|
12977
|
+
amountHuman: { type: "string", required: true, description: "HYPE amount" },
|
|
12978
|
+
token: { type: "string", required: false, description: "Native 0x0 or WHYPE" }
|
|
12979
|
+
}
|
|
12980
|
+
},
|
|
12981
|
+
{
|
|
12982
|
+
id: "derive.placeOrder",
|
|
12983
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12984
|
+
chainCategory: "evm",
|
|
12985
|
+
description: "Place a Derive options limit order via EIP-712 Action (delivery derive_exchange). Does not spend the current-chain token.",
|
|
12986
|
+
commonParams: ["keyGen", "purposeText"],
|
|
12987
|
+
params: {
|
|
12988
|
+
instrumentName: { type: "string", required: true, description: "e.g. ETH-20260626-3000-C" },
|
|
12989
|
+
direction: { type: "string", required: true, description: "buy or sell" },
|
|
12990
|
+
amount: { type: "string", required: true, description: "Contract size" },
|
|
12991
|
+
limitPrice: { type: "string", required: true, description: "Limit price" },
|
|
12992
|
+
maxFee: { type: "string", required: true, description: "Max fee (e18-scaled, \u226412 decimals)" },
|
|
12993
|
+
subaccountId: { type: "number", required: true, description: "From fetch_subaccounts \u2014 never 0" }
|
|
12994
|
+
}
|
|
12995
|
+
},
|
|
12996
|
+
{
|
|
12997
|
+
id: "derive.replaceOrder",
|
|
12998
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
12999
|
+
chainCategory: "evm",
|
|
13000
|
+
description: "Replace a Derive open order (EIP-712 Action + orderIdToCancel or nonceToCancel).",
|
|
13001
|
+
commonParams: ["keyGen", "purposeText"],
|
|
13002
|
+
params: {
|
|
13003
|
+
instrumentName: { type: "string", required: true, description: "Instrument of the replacement order" },
|
|
13004
|
+
direction: { type: "string", required: true, description: "buy or sell" },
|
|
13005
|
+
amount: { type: "string", required: true, description: "Contract size" },
|
|
13006
|
+
limitPrice: { type: "string", required: true, description: "Limit price" },
|
|
13007
|
+
maxFee: { type: "string", required: true, description: "Max fee" },
|
|
13008
|
+
subaccountId: { type: "number", required: true, description: "From fetch_subaccounts" },
|
|
13009
|
+
orderIdToCancel: { type: "string", required: false, description: "Existing order id (xor nonceToCancel)" },
|
|
13010
|
+
nonceToCancel: { type: "string", required: false, description: "Existing order nonce (xor orderIdToCancel)" }
|
|
13011
|
+
}
|
|
13012
|
+
},
|
|
13013
|
+
{
|
|
13014
|
+
id: "derive.cancel",
|
|
13015
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
13016
|
+
chainCategory: "evm",
|
|
13017
|
+
description: "Cancel a Derive open order. v3 cancel is session-auth; this signs EIP-191 login for private/cancel delivery.",
|
|
13018
|
+
commonParams: ["keyGen", "purposeText"],
|
|
13019
|
+
params: {
|
|
13020
|
+
instrumentName: { type: "string", required: true, description: "Instrument of the open order" },
|
|
13021
|
+
orderId: { type: "string", required: true, description: "order_id from fetch_open_orders" },
|
|
13022
|
+
subaccountId: { type: "number", required: true, description: "From fetch_subaccounts" }
|
|
13023
|
+
}
|
|
13024
|
+
},
|
|
13025
|
+
{
|
|
13026
|
+
id: "derive.transferSpot",
|
|
13027
|
+
protocolId: DERIVE_PROTOCOL_ID,
|
|
13028
|
+
chainCategory: "evm",
|
|
13029
|
+
description: "EIP-712 transfer_spot. Use toSubaccountId 0 + newSubaccountManager to create an extra subaccount after the first funded one.",
|
|
13030
|
+
commonParams: ["keyGen", "purposeText"],
|
|
13031
|
+
params: {
|
|
13032
|
+
fromSubaccountId: { type: "number", required: true, description: "Funded source subaccount" },
|
|
13033
|
+
toSubaccountId: { type: "number", required: true, description: "0 to create an extra subaccount" },
|
|
13034
|
+
newSubaccountManager: { type: "number", required: true, description: "Required when toSubaccountId is 0" },
|
|
13035
|
+
asset: { type: "string", required: true, description: "Protocol asset address" },
|
|
13036
|
+
amount: { type: "string", required: true, description: "Transfer amount" }
|
|
13037
|
+
}
|
|
13038
|
+
}
|
|
13039
|
+
]
|
|
13040
|
+
};
|
|
13041
|
+
registerProtocolModule(deriveProtocolModule);
|
|
13042
|
+
var TRUEO_PROTOCOL_ID = "trueo";
|
|
13043
|
+
var TRUEO_BASE_CHAIN_ID = 8453;
|
|
13044
|
+
var TRUEO_CHAIN_IDS = [TRUEO_BASE_CHAIN_ID];
|
|
13045
|
+
var TRUEO_TYD = getAddress("0xb13CF163d916917d9cD6E836905cA5f12a1dEF4B");
|
|
13046
|
+
var TRUEO_TRUE = getAddress("0x21CFCFc3d8F98fC728f48341D10Ad8283F6EB7AB");
|
|
13047
|
+
var TRUEO_USDC = getAddress("0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913");
|
|
13048
|
+
getAddress("0x61A98Bef11867c69489B91f340fE545eEfc695d7");
|
|
13049
|
+
getAddress("0x1cdB1C43eB64e99780EA9d3C7162C23432C59a1A");
|
|
13050
|
+
getAddress("0x0A1AFc2121B4441127a02DEF72928F61f564034a");
|
|
13051
|
+
getAddress("0x6E08d24AEf78F6d1a97503F64E84fDF65f8125E1");
|
|
13052
|
+
getAddress("0x3E83479B2276EcFb7C7181F67b5d092d3511e0C4");
|
|
13053
|
+
getAddress("0x000000000022D473030F116dDEE9F6B43aC78BA3");
|
|
13054
|
+
function isTrueoChainSupported(chainId) {
|
|
13055
|
+
return TRUEO_CHAIN_IDS.includes(chainId);
|
|
13056
|
+
}
|
|
13057
|
+
|
|
13058
|
+
// src/protocols/evm/trueo/index.ts
|
|
13059
|
+
var trueoProtocolModule = {
|
|
13060
|
+
id: TRUEO_PROTOCOL_ID,
|
|
13061
|
+
chainCategory: "evm",
|
|
13062
|
+
isChainSupported(ctx) {
|
|
13063
|
+
const id = typeof ctx.chainId === "string" ? Number(ctx.chainId) : ctx.chainId;
|
|
13064
|
+
return ctx.chainCategory === "evm" && isTrueoChainSupported(id);
|
|
13065
|
+
},
|
|
13066
|
+
isTokenSupported(token) {
|
|
13067
|
+
return token.category === "evm" && (token.kind === "erc20" || token.kind === "ctmerc20");
|
|
13068
|
+
},
|
|
13069
|
+
actions: [
|
|
13070
|
+
{
|
|
13071
|
+
id: "trueo.wrap-tyd",
|
|
13072
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13073
|
+
chainCategory: "evm",
|
|
13074
|
+
description: "Mint TYD by depositing Base USDC into the Yearn ERC-4626 vault",
|
|
13075
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13076
|
+
params: {}
|
|
13077
|
+
},
|
|
13078
|
+
{
|
|
13079
|
+
id: "trueo.unwrap-tyd",
|
|
13080
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13081
|
+
chainCategory: "evm",
|
|
13082
|
+
description: "Redeem TYD shares back to Base USDC",
|
|
13083
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13084
|
+
params: {}
|
|
13085
|
+
},
|
|
13086
|
+
{
|
|
13087
|
+
id: "trueo.mint",
|
|
13088
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13089
|
+
chainCategory: "evm",
|
|
13090
|
+
description: "Mint YES+NO from TYD (or USDC via adapter)",
|
|
13091
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13092
|
+
params: {}
|
|
13093
|
+
},
|
|
13094
|
+
{
|
|
13095
|
+
id: "trueo.burn",
|
|
13096
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13097
|
+
chainCategory: "evm",
|
|
13098
|
+
description: "Burn equal YES+NO back to TYD",
|
|
13099
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13100
|
+
params: {}
|
|
13101
|
+
},
|
|
13102
|
+
{
|
|
13103
|
+
id: "trueo.redeem",
|
|
13104
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13105
|
+
chainCategory: "evm",
|
|
13106
|
+
description: "Redeem winning outcome tokens after resolution",
|
|
13107
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13108
|
+
params: {}
|
|
13109
|
+
},
|
|
13110
|
+
{
|
|
13111
|
+
id: "trueo.swap",
|
|
13112
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13113
|
+
chainCategory: "evm",
|
|
13114
|
+
description: "Buy Yes or No with TYD via UniversalRouterAdapter V4 swap",
|
|
13115
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13116
|
+
params: {}
|
|
13117
|
+
},
|
|
13118
|
+
{
|
|
13119
|
+
id: "trueo.create-order",
|
|
13120
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13121
|
+
chainCategory: "evm",
|
|
13122
|
+
description: "Create an on-chain OrderManager limit order",
|
|
13123
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13124
|
+
params: {}
|
|
13125
|
+
},
|
|
13126
|
+
{
|
|
13127
|
+
id: "trueo.cancel-order",
|
|
13128
|
+
protocolId: TRUEO_PROTOCOL_ID,
|
|
13129
|
+
chainCategory: "evm",
|
|
13130
|
+
description: "Cancel an on-chain OrderManager order",
|
|
13131
|
+
commonParams: ["keyGen", "purposeText", "useCustomGas"],
|
|
13132
|
+
params: {}
|
|
13133
|
+
}
|
|
13134
|
+
]
|
|
13135
|
+
};
|
|
13136
|
+
registerProtocolModule(trueoProtocolModule);
|
|
11616
13137
|
var skillsDir = join(dirname(fileURLToPath(import.meta.url)), "skills");
|
|
11617
13138
|
var SKILL_PROTOCOL_IDS = [
|
|
11618
13139
|
"aave-v4",
|
|
@@ -11632,6 +13153,8 @@ var SKILL_PROTOCOL_IDS = [
|
|
|
11632
13153
|
"pendle",
|
|
11633
13154
|
"continuum-dao",
|
|
11634
13155
|
"compound-v3",
|
|
13156
|
+
"derive",
|
|
13157
|
+
"trueo",
|
|
11635
13158
|
"yield-compare"
|
|
11636
13159
|
];
|
|
11637
13160
|
function getToolsForProtocol(protocolId) {
|
|
@@ -12171,6 +13694,72 @@ var PROTOCOL_SUPPORT_ADVISORS = {
|
|
|
12171
13694
|
notes: "Arcus on Robinhood Chain (4663): perps via fetch_markets; spot Stock Tokens via spot_fetch_markets. Custody is secp256k1 on 4663; API signing uses paired ed25519 KeyGen (same GroupId)."
|
|
12172
13695
|
};
|
|
12173
13696
|
}
|
|
13697
|
+
}),
|
|
13698
|
+
[DERIVE_PROTOCOL_ID]: advisor(DERIVE_PROTOCOL_ID, "api_underlyings", {
|
|
13699
|
+
async supportedChainIds() {
|
|
13700
|
+
return [...DERIVE_ASSET_ROW_CHAIN_IDS];
|
|
13701
|
+
},
|
|
13702
|
+
async supportedTokens(chainId) {
|
|
13703
|
+
if (!isDeriveChainSupported(chainId)) {
|
|
13704
|
+
return { tokens: [], notes: "Derive logo rows are fundable chains only: Ethereum, OP, Base, Arbitrum, HyperEVM, Sepolia." };
|
|
13705
|
+
}
|
|
13706
|
+
const mapped = deriveMappedTokensForChain(chainId);
|
|
13707
|
+
let tokens = mapped;
|
|
13708
|
+
try {
|
|
13709
|
+
const currencies = await deriveFetchCurrenciesRaw({ network: deriveNetworkFromChainId(chainId) });
|
|
13710
|
+
const symbols = new Set(
|
|
13711
|
+
currencies.map((c) => String(c.currency ?? "").toUpperCase()).filter(Boolean)
|
|
13712
|
+
);
|
|
13713
|
+
if (symbols.size > 0) {
|
|
13714
|
+
tokens = mapped.filter((t) => {
|
|
13715
|
+
const s = t.symbol.toUpperCase();
|
|
13716
|
+
return symbols.has(s) || s === "WETH" && symbols.has("ETH") || s === "WBTC" && symbols.has("BTC") || s === "HYPE" || s === "WHYPE";
|
|
13717
|
+
});
|
|
13718
|
+
}
|
|
13719
|
+
} catch {
|
|
13720
|
+
}
|
|
13721
|
+
return {
|
|
13722
|
+
tokens,
|
|
13723
|
+
nativeWrapped: deriveNativeWrappedForChain(chainId),
|
|
13724
|
+
notes: deriveAdvisorNotes()
|
|
13725
|
+
};
|
|
13726
|
+
},
|
|
13727
|
+
async isTokenSupported(chainId, address) {
|
|
13728
|
+
if (!isDeriveChainSupported(chainId)) return false;
|
|
13729
|
+
try {
|
|
13730
|
+
const normalized = getAddress(address).toLowerCase();
|
|
13731
|
+
return deriveMappedTokensForChain(chainId).some((t) => t.address.toLowerCase() === normalized);
|
|
13732
|
+
} catch {
|
|
13733
|
+
return false;
|
|
13734
|
+
}
|
|
13735
|
+
}
|
|
13736
|
+
}),
|
|
13737
|
+
[TRUEO_PROTOCOL_ID]: advisor(TRUEO_PROTOCOL_ID, "fixed_addresses", {
|
|
13738
|
+
async supportedChainIds() {
|
|
13739
|
+
return [TRUEO_BASE_CHAIN_ID];
|
|
13740
|
+
},
|
|
13741
|
+
async supportedTokens(chainId) {
|
|
13742
|
+
if (chainId !== TRUEO_BASE_CHAIN_ID) {
|
|
13743
|
+
return { tokens: [], notes: "Trueo is Base-only (chainId 8453)." };
|
|
13744
|
+
}
|
|
13745
|
+
return {
|
|
13746
|
+
tokens: [
|
|
13747
|
+
{ address: TRUEO_TYD, symbol: "TYD", decimals: 6, roles: ["payment"] },
|
|
13748
|
+
{ address: TRUEO_TRUE, symbol: "TRUE", decimals: 18, roles: ["governance"] },
|
|
13749
|
+
{ address: TRUEO_USDC, symbol: "USDC", decimals: 6, roles: ["adapter_asset"] }
|
|
13750
|
+
],
|
|
13751
|
+
notes: "Trueo prediction markets on Base. Payment is TYD. Outcome YES/NO tokens are per-market \u2014 use ctm_trueo_search_markets / fetch_market. Chat search: search_prediction_markets (no load required; default live/recent, includeAll for closed)."
|
|
13752
|
+
};
|
|
13753
|
+
},
|
|
13754
|
+
async isTokenSupported(chainId, address) {
|
|
13755
|
+
if (chainId !== TRUEO_BASE_CHAIN_ID) return false;
|
|
13756
|
+
try {
|
|
13757
|
+
const n = getAddress(address).toLowerCase();
|
|
13758
|
+
return n === TRUEO_TYD.toLowerCase() || n === TRUEO_TRUE.toLowerCase() || n === TRUEO_USDC.toLowerCase();
|
|
13759
|
+
} catch {
|
|
13760
|
+
return false;
|
|
13761
|
+
}
|
|
13762
|
+
}
|
|
12174
13763
|
})
|
|
12175
13764
|
};
|
|
12176
13765
|
function getProtocolSupportAdvisor(protocolId) {
|
|
@@ -12199,6 +13788,8 @@ registerProtocolModule(aerodromeProtocolModule);
|
|
|
12199
13788
|
registerProtocolModule(continuumDaoProtocolModule);
|
|
12200
13789
|
registerProtocolModule(compoundV3ProtocolModule);
|
|
12201
13790
|
registerProtocolModule(pendleProtocolModule);
|
|
13791
|
+
registerProtocolModule(deriveProtocolModule);
|
|
13792
|
+
registerProtocolModule(trueoProtocolModule);
|
|
12202
13793
|
function getAgentCatalog() {
|
|
12203
13794
|
return {
|
|
12204
13795
|
protocols: getProtocolModules(),
|
|
@@ -12225,11 +13816,13 @@ function getAgentCatalog() {
|
|
|
12225
13816
|
continuumDao: continuumDaoProtocolModule,
|
|
12226
13817
|
compoundV3: compoundV3ProtocolModule,
|
|
12227
13818
|
pendle: pendleProtocolModule,
|
|
13819
|
+
derive: deriveProtocolModule,
|
|
13820
|
+
trueo: trueoProtocolModule,
|
|
12228
13821
|
/** Prefer getAgentCatalogForMcp() or getMcpToolDefinitions() for MCP servers. */
|
|
12229
13822
|
mcp: getAgentCatalogForMcp()
|
|
12230
13823
|
};
|
|
12231
13824
|
}
|
|
12232
13825
|
|
|
12233
|
-
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, mcpAaveV4MerklClaimInputSchema, 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, mcpContinuumDaoComposeProposalActionInputSchema, mcpContinuumDaoComposeProposalActionOutputSchema, mcpContinuumDaoCreateLockInputSchema, mcpContinuumDaoDelegateInputSchema, mcpContinuumDaoExplainProposalInputSchema, mcpContinuumDaoExplainProposalOutputSchema, mcpContinuumDaoFetchDelegatesInputSchema, mcpContinuumDaoFetchDelegatesOutputSchema, mcpContinuumDaoFetchLiveProposalsInputSchema, mcpContinuumDaoFetchLiveProposalsOutputSchema, mcpContinuumDaoFetchProposalInputSchema, mcpContinuumDaoFetchProposalOutputSchema, mcpContinuumDaoFetchProposalStateInputSchema, mcpContinuumDaoFetchProposalStateOutputSchema, mcpContinuumDaoFetchProposalVotesInputSchema, mcpContinuumDaoFetchProposalVotesOutputSchema, 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, mcpContinuumDaoMpaFlagInputSchema, mcpContinuumDaoMpaFlagOutputSchema, mcpContinuumDaoMpaListingInputSchema, mcpContinuumDaoMpaListingOutputSchema, mcpContinuumDaoMpaMailboxListInputSchema, mcpContinuumDaoMpaMailboxListOutputSchema, mcpContinuumDaoMpaMailboxOpenInputSchema, mcpContinuumDaoMpaMailboxOpenOutputSchema, mcpContinuumDaoMpaMailboxSendInputSchema, mcpContinuumDaoMpaMailboxSendOutputSchema, mcpContinuumDaoMpaRetractInputSchema, mcpContinuumDaoMpaRetractOutputSchema, mcpContinuumDaoProposalIdInputSchema, mcpContinuumDaoProposalVoteRowSchema, mcpContinuumDaoProposeBravoInputSchema, mcpContinuumDaoProposeDeltaInputSchema, mcpContinuumDaoRegisterProposalInputSchema, mcpContinuumDaoRegisterProposalOutputSchema, mcpContinuumDaoRequestDetachInputSchema, mcpContinuumDaoSimulateProposalInputSchema, mcpContinuumDaoSimulateProposalOutputSchema, mcpContinuumDaoSplitInputSchema, mcpContinuumDaoTechnocoreBindInputSchema, mcpContinuumDaoTechnocoreBindOutputSchema, 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, mcpEulerV2MerklClaimInputSchema, 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, mcpHyperliquidFetchLendMarketsInputSchema, mcpHyperliquidFetchLendMarketsOutputSchema, mcpHyperliquidFetchLendPositionsInputSchema, mcpHyperliquidFetchLendPositionsOutputSchema, mcpHyperliquidFetchMarketSnapshotInputSchema, mcpHyperliquidFetchMarketSnapshotOutputSchema, mcpHyperliquidFetchMarketsInputSchema, mcpHyperliquidFetchMarketsOutputSchema, mcpHyperliquidFetchOhlcvInputSchema, mcpHyperliquidFetchOhlcvOutputSchema, mcpHyperliquidFetchOpenContextInputSchema, mcpHyperliquidFetchOpenContextOutputSchema, mcpHyperliquidFetchOpenOrdersInputSchema, mcpHyperliquidFetchOpenOrdersOutputSchema, mcpHyperliquidFetchPositionsInputSchema, mcpHyperliquidFetchPositionsOutputSchema, mcpHyperliquidFetchStakingSummaryInputSchema, mcpHyperliquidFetchStakingSummaryOutputSchema, mcpHyperliquidFetchStockMarketsInputSchema, mcpHyperliquidFetchStockMarketsOutputSchema, mcpHyperliquidFetchUsdClassBalancesInputSchema, mcpHyperliquidFetchUsdClassBalancesOutputSchema, mcpHyperliquidFetchUserVaultEquitiesInputSchema, mcpHyperliquidFetchUserVaultEquitiesOutputSchema, mcpHyperliquidFetchVaultApysInputSchema, mcpHyperliquidFetchVaultApysOutputSchema, mcpHyperliquidFetchVaultsInputSchema, mcpHyperliquidFetchVaultsOutputSchema, mcpHyperliquidLendInputSchema, mcpHyperliquidLimitOrderInputSchema, mcpHyperliquidSearchMarketsInputSchema, mcpHyperliquidSearchMarketsOutputSchema, mcpHyperliquidStakeInputSchema, mcpHyperliquidUndelegateInputSchema, mcpHyperliquidUnstakeInputSchema, mcpHyperliquidUpdateLeverageInputSchema, mcpHyperliquidUsdTransferInputSchema, mcpHyperliquidVaultDepositInputSchema, mcpHyperliquidVaultWithdrawInputSchema, mcpLidoClaimWithdrawalInputSchema, mcpLidoFetchStethAprInputSchema, mcpLidoFetchStethAprOutputSchema, mcpLidoRequestWithdrawalsInputSchema, mcpLidoSubmitInputSchema, mcpLidoUnwrapWstEthInputSchema, mcpLidoWrapStEthInputSchema, mcpMapleDepositInputSchema, mcpMapleFetchMarketInputSchema, mcpMapleFetchMarketOutputSchema, mcpMapleFetchMarketsInputSchema, mcpMapleFetchMarketsOutputSchema, mcpMapleRequestRedeemInputSchema, mcpMerklRewardsFetchInputSchema, mcpMerklRewardsFetchOutputSchema, mcpMorphoBlueBorrowInputSchema, mcpMorphoBlueCollateralDepositInputSchema, mcpMorphoBlueCollateralWithdrawInputSchema, mcpMorphoBlueRepayInputSchema, mcpMorphoBlueSupplyInputSchema, mcpMorphoBlueWithdrawInputSchema, mcpMorphoFetchBlueMarketsInputSchema, mcpMorphoFetchBlueMarketsOutputSchema, mcpMorphoFetchEarnVaultsInputSchema, mcpMorphoFetchEarnVaultsOutputSchema, mcpMorphoFetchMidnightBooksInputSchema, mcpMorphoFetchMidnightBooksOutputSchema, mcpMorphoFetchMidnightOffersInputSchema, mcpMorphoFetchMidnightOffersOutputSchema, mcpMorphoFetchMidnightPositionsInputSchema, mcpMorphoFetchMidnightPositionsOutputSchema, mcpMorphoFetchMidnightQuoteInputSchema, mcpMorphoFetchMidnightQuoteOutputSchema, mcpMorphoFetchPositionsInputSchema, mcpMorphoFetchPositionsOutputSchema, mcpMorphoFetchStockMarketsInputSchema, mcpMorphoFetchStockMarketsOutputSchema, mcpMorphoMerklClaimInputSchema, mcpMorphoMidnightBorrowInputSchema, mcpMorphoMidnightCancelLendOfferInputSchema, mcpMorphoMidnightLendInputSchema, mcpMorphoMidnightLendOfferInputSchema, mcpMorphoMidnightRepayInputSchema, mcpMorphoVaultDepositInputSchema, mcpMorphoVaultWithdrawInputSchema, mcpMultisignInput, multisignOutputSchema as mcpMultisignOutputSchema, mcpServerSubmitOutputSchema as mcpMultisignSubmitOutputSchema, mcpPendleBuildAddLiquidityMultisignInputSchema, mcpPendleBuildMintPyMultisignInputSchema, mcpPendleBuildMintSyMultisignInputSchema, mcpPendleBuildRedeemPyMultisignInputSchema, mcpPendleBuildRedeemRewardsMultisignInputSchema, mcpPendleBuildRedeemSyMultisignInputSchema, mcpPendleBuildRemoveLiquidityMultisignInputSchema, mcpPendleBuildSwapMultisignInputSchema, mcpPendleFetchMarketsInputSchema, mcpPendleFetchMarketsOutputSchema, mcpPendleFetchMerkleRewardsInputSchema, mcpPendleFetchMerkleRewardsOutputSchema, mcpPendleFetchPositionsInputSchema, mcpPendleFetchPositionsOutputSchema, mcpPendleFetchPricesInputSchema, mcpPendleFetchPricesOutputSchema, mcpPendleQuoteAddLiquidityInputSchema, mcpPendleQuoteMintPyInputSchema, mcpPendleQuoteMintSyInputSchema, mcpPendleQuoteOutputSchema, mcpPendleQuoteRedeemPyInputSchema, mcpPendleQuoteRedeemSyInputSchema, mcpPendleQuoteRemoveLiquidityInputSchema, mcpPendleQuoteSwapInputSchema, mcpPendleSearchAssetsInputSchema, mcpPendleSearchAssetsOutputSchema, 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 };
|
|
13826
|
+
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, agentEvmChainIdSchema, 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, mcpAaveV4MerklClaimInputSchema, 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, mcpContinuumDaoComposeProposalActionInputSchema, mcpContinuumDaoComposeProposalActionOutputSchema, mcpContinuumDaoCreateLockInputSchema, mcpContinuumDaoDelegateInputSchema, mcpContinuumDaoExplainProposalInputSchema, mcpContinuumDaoExplainProposalOutputSchema, mcpContinuumDaoFetchDelegatesInputSchema, mcpContinuumDaoFetchDelegatesOutputSchema, mcpContinuumDaoFetchLiveProposalsInputSchema, mcpContinuumDaoFetchLiveProposalsOutputSchema, mcpContinuumDaoFetchProposalInputSchema, mcpContinuumDaoFetchProposalOutputSchema, mcpContinuumDaoFetchProposalStateInputSchema, mcpContinuumDaoFetchProposalStateOutputSchema, mcpContinuumDaoFetchProposalVotesInputSchema, mcpContinuumDaoFetchProposalVotesOutputSchema, 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, mcpContinuumDaoMpaFlagInputSchema, mcpContinuumDaoMpaFlagOutputSchema, mcpContinuumDaoMpaListingInputSchema, mcpContinuumDaoMpaListingOutputSchema, mcpContinuumDaoMpaMailboxListInputSchema, mcpContinuumDaoMpaMailboxListOutputSchema, mcpContinuumDaoMpaMailboxOpenInputSchema, mcpContinuumDaoMpaMailboxOpenOutputSchema, mcpContinuumDaoMpaMailboxSendInputSchema, mcpContinuumDaoMpaMailboxSendOutputSchema, mcpContinuumDaoMpaRetractInputSchema, mcpContinuumDaoMpaRetractOutputSchema, mcpContinuumDaoProposalIdInputSchema, mcpContinuumDaoProposalVoteRowSchema, mcpContinuumDaoProposeBravoInputSchema, mcpContinuumDaoProposeDeltaInputSchema, mcpContinuumDaoRegisterProposalInputSchema, mcpContinuumDaoRegisterProposalOutputSchema, mcpContinuumDaoRequestDetachInputSchema, mcpContinuumDaoSimulateProposalInputSchema, mcpContinuumDaoSimulateProposalOutputSchema, mcpContinuumDaoSplitInputSchema, mcpContinuumDaoTechnocoreBindInputSchema, mcpContinuumDaoTechnocoreBindOutputSchema, mcpContinuumDaoTokenIdInputSchema, mcpContinuumDaoTransferInputSchema, mcpContinuumDaoUndelegateInputSchema, mcpCurveDaoBuildAddLiquidityMultisignInputSchema, mcpCurveDaoBuildGaugeDepositMultisignInputSchema, mcpCurveDaoBuildRemoveLiquidityMultisignInputSchema, mcpCurveDaoBuildSwapMultisignInputSchema, mcpCurveDaoFetchImportantPoolsInputSchema, mcpCurveDaoFetchImportantPoolsOutputSchema, mcpCurveDaoFetchLpYieldsInputSchema, mcpCurveDaoFetchLpYieldsOutputSchema, mcpCurveDaoQuoteAddLiquidityInputSchema, mcpCurveDaoQuoteAddLiquidityOutputSchema, mcpCurveDaoQuoteInputSchema, mcpCurveDaoQuoteOutputSchema, mcpCurveDaoQuoteRemoveLiquidityInputSchema, mcpCurveDaoQuoteRemoveLiquidityOutputSchema, mcpDeriveCancelInputSchema, mcpDeriveDepositAddressTransferInputSchema, mcpDeriveDepositNewSubaccountInputSchema, mcpDeriveFetchCurrenciesInputSchema, mcpDeriveFetchCurrenciesOutputSchema, mcpDeriveFetchMarketSnapshotInputSchema, mcpDeriveFetchMarketSnapshotOutputSchema, mcpDeriveFetchOhlcvInputSchema, mcpDeriveFetchOhlcvOutputSchema, mcpDeriveFetchOpenOrdersInputSchema, mcpDeriveFetchOpenOrdersOutputSchema, mcpDeriveFetchOptionChainInputSchema, mcpDeriveFetchOptionChainOutputSchema, mcpDeriveFetchPendingDepositsInputSchema, mcpDeriveFetchPendingDepositsOutputSchema, mcpDeriveFetchPortfolioInputSchema, mcpDeriveFetchPortfolioOutputSchema, mcpDeriveFetchPositionsInputSchema, mcpDeriveFetchPositionsOutputSchema, mcpDeriveFetchRiskUniversesInputSchema, mcpDeriveFetchRiskUniversesOutputSchema, mcpDeriveFetchSubaccountsInputSchema, mcpDeriveFetchSubaccountsOutputSchema, mcpDeriveFetchTickersInputSchema, mcpDeriveFetchTickersOutputSchema, mcpDeriveHypeVaultDepositInputSchema, mcpDeriveOrderQuoteInputSchema, mcpDeriveOrderQuoteOutputSchema, mcpDerivePlaceOrderInputSchema, mcpDeriveRegisterDepositAddressInputSchema, mcpDeriveRegisterDepositAddressOutputSchema, mcpDeriveReplaceOrderInputSchema, mcpDeriveSearchInstrumentsInputSchema, mcpDeriveSearchInstrumentsOutputSchema, mcpDeriveSocketDepositInputSchema, mcpDeriveTransferSpotInputSchema, mcpEthenaClaimInputSchema, mcpEthenaCooldownInputSchema, mcpEthenaFetchSusdeApyInputSchema, mcpEthenaFetchSusdeApyOutputSchema, mcpEthenaRedeemInputSchema, mcpEthenaStakeInputSchema, mcpEulerV2BorrowRepayInputSchema, mcpEulerV2CollateralDepositInputSchema, mcpEulerV2CollateralWithdrawInputSchema, mcpEulerV2FetchEarnVaultsInputSchema, mcpEulerV2FetchEarnVaultsOutputSchema, mcpEulerV2FetchLendVaultsInputSchema, mcpEulerV2FetchLendVaultsOutputSchema, mcpEulerV2IsolatedBorrowInputSchema, mcpEulerV2IsolatedLendInputSchema, mcpEulerV2MerklClaimInputSchema, mcpEulerV2VaultWithdrawInputSchema, mcpGetPredictionMarketInputSchema, mcpGetPredictionMarketOutputSchema, 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, mcpHyperliquidFetchLendMarketsInputSchema, mcpHyperliquidFetchLendMarketsOutputSchema, mcpHyperliquidFetchLendPositionsInputSchema, mcpHyperliquidFetchLendPositionsOutputSchema, mcpHyperliquidFetchMarketSnapshotInputSchema, mcpHyperliquidFetchMarketSnapshotOutputSchema, mcpHyperliquidFetchMarketsInputSchema, mcpHyperliquidFetchMarketsOutputSchema, mcpHyperliquidFetchOhlcvInputSchema, mcpHyperliquidFetchOhlcvOutputSchema, mcpHyperliquidFetchOpenContextInputSchema, mcpHyperliquidFetchOpenContextOutputSchema, mcpHyperliquidFetchOpenOrdersInputSchema, mcpHyperliquidFetchOpenOrdersOutputSchema, mcpHyperliquidFetchPositionsInputSchema, mcpHyperliquidFetchPositionsOutputSchema, mcpHyperliquidFetchStakingSummaryInputSchema, mcpHyperliquidFetchStakingSummaryOutputSchema, mcpHyperliquidFetchStockMarketsInputSchema, mcpHyperliquidFetchStockMarketsOutputSchema, mcpHyperliquidFetchUsdClassBalancesInputSchema, mcpHyperliquidFetchUsdClassBalancesOutputSchema, mcpHyperliquidFetchUserVaultEquitiesInputSchema, mcpHyperliquidFetchUserVaultEquitiesOutputSchema, mcpHyperliquidFetchVaultApysInputSchema, mcpHyperliquidFetchVaultApysOutputSchema, mcpHyperliquidFetchVaultsInputSchema, mcpHyperliquidFetchVaultsOutputSchema, mcpHyperliquidLendInputSchema, mcpHyperliquidLimitOrderInputSchema, mcpHyperliquidSearchMarketsInputSchema, mcpHyperliquidSearchMarketsOutputSchema, mcpHyperliquidStakeInputSchema, mcpHyperliquidTrailingStopInputSchema, mcpHyperliquidUndelegateInputSchema, mcpHyperliquidUnstakeInputSchema, mcpHyperliquidUpdateLeverageInputSchema, mcpHyperliquidUsdTransferInputSchema, mcpHyperliquidVaultDepositInputSchema, mcpHyperliquidVaultWithdrawInputSchema, mcpLidoClaimWithdrawalInputSchema, mcpLidoFetchStethAprInputSchema, mcpLidoFetchStethAprOutputSchema, mcpLidoRequestWithdrawalsInputSchema, mcpLidoSubmitInputSchema, mcpLidoUnwrapWstEthInputSchema, mcpLidoWrapStEthInputSchema, mcpListMyPredictionMarketsInputSchema, mcpListMyPredictionMarketsOutputSchema, mcpMapleDepositInputSchema, mcpMapleFetchMarketInputSchema, mcpMapleFetchMarketOutputSchema, mcpMapleFetchMarketsInputSchema, mcpMapleFetchMarketsOutputSchema, mcpMapleRequestRedeemInputSchema, mcpMerklRewardsFetchInputSchema, mcpMerklRewardsFetchOutputSchema, mcpMorphoBlueBorrowInputSchema, mcpMorphoBlueCollateralDepositInputSchema, mcpMorphoBlueCollateralWithdrawInputSchema, mcpMorphoBlueRepayInputSchema, mcpMorphoBlueSupplyInputSchema, mcpMorphoBlueWithdrawInputSchema, mcpMorphoFetchBlueMarketsInputSchema, mcpMorphoFetchBlueMarketsOutputSchema, mcpMorphoFetchEarnVaultsInputSchema, mcpMorphoFetchEarnVaultsOutputSchema, mcpMorphoFetchMidnightBooksInputSchema, mcpMorphoFetchMidnightBooksOutputSchema, mcpMorphoFetchMidnightOffersInputSchema, mcpMorphoFetchMidnightOffersOutputSchema, mcpMorphoFetchMidnightPositionsInputSchema, mcpMorphoFetchMidnightPositionsOutputSchema, mcpMorphoFetchMidnightQuoteInputSchema, mcpMorphoFetchMidnightQuoteOutputSchema, mcpMorphoFetchPositionsInputSchema, mcpMorphoFetchPositionsOutputSchema, mcpMorphoFetchStockMarketsInputSchema, mcpMorphoFetchStockMarketsOutputSchema, mcpMorphoMerklClaimInputSchema, mcpMorphoMidnightBorrowInputSchema, mcpMorphoMidnightCancelLendOfferInputSchema, mcpMorphoMidnightLendInputSchema, mcpMorphoMidnightLendOfferInputSchema, mcpMorphoMidnightRepayInputSchema, mcpMorphoVaultDepositInputSchema, mcpMorphoVaultWithdrawInputSchema, mcpMultisignInput, multisignOutputSchema as mcpMultisignOutputSchema, mcpServerSubmitOutputSchema as mcpMultisignSubmitOutputSchema, mcpPendleBuildAddLiquidityMultisignInputSchema, mcpPendleBuildMintPyMultisignInputSchema, mcpPendleBuildMintSyMultisignInputSchema, mcpPendleBuildRedeemPyMultisignInputSchema, mcpPendleBuildRedeemRewardsMultisignInputSchema, mcpPendleBuildRedeemSyMultisignInputSchema, mcpPendleBuildRemoveLiquidityMultisignInputSchema, mcpPendleBuildSwapMultisignInputSchema, mcpPendleFetchMarketsInputSchema, mcpPendleFetchMarketsOutputSchema, mcpPendleFetchMerkleRewardsInputSchema, mcpPendleFetchMerkleRewardsOutputSchema, mcpPendleFetchPositionsInputSchema, mcpPendleFetchPositionsOutputSchema, mcpPendleFetchPricesInputSchema, mcpPendleFetchPricesOutputSchema, mcpPendleQuoteAddLiquidityInputSchema, mcpPendleQuoteMintPyInputSchema, mcpPendleQuoteMintSyInputSchema, mcpPendleQuoteOutputSchema, mcpPendleQuoteRedeemPyInputSchema, mcpPendleQuoteRedeemSyInputSchema, mcpPendleQuoteRemoveLiquidityInputSchema, mcpPendleQuoteSwapInputSchema, mcpPendleSearchAssetsInputSchema, mcpPendleSearchAssetsOutputSchema, mcpPredictionMarketRowSchema, mcpSearchPredictionMarketsInputSchema, mcpSearchPredictionMarketsOutputSchema, mcpServerCommonInputSchema, mcpServerMultisignInput, mcpServerSubmitOutputSchema, mcpSkyFetchSusdsRateInputSchema, mcpSkyFetchSusdsRateOutputSchema, mcpSkyLockstakeCloseInputSchema, mcpSkyLockstakeDrawInputSchema, mcpSkyLockstakeGetRewardInputSchema, mcpSkyLockstakeStakeInputSchema, mcpSkyLockstakeWipeInputSchema, mcpSkySusdsDepositInputSchema, mcpSkySusdsRedeemInputSchema, mcpTrueoBurnInputSchema, mcpTrueoCancelOrderInputSchema, mcpTrueoCreateOrderInputSchema, mcpTrueoFetchCategoriesInputSchema, mcpTrueoFetchCategoriesOutputSchema, mcpTrueoFetchChanceSeriesInputSchema, mcpTrueoFetchChanceSeriesOutputSchema, mcpTrueoFetchMarketInputSchema, mcpTrueoFetchMarketOutputSchema, mcpTrueoFetchOrderbookInputSchema, mcpTrueoFetchOrderbookOutputSchema, mcpTrueoFetchTrendingInputSchema, mcpTrueoFetchTrendingOutputSchema, mcpTrueoMarketRowSchema, mcpTrueoMintInputSchema, mcpTrueoRedeemInputSchema, mcpTrueoSearchMarketsInputSchema, mcpTrueoSearchMarketsOutputSchema, mcpTrueoSwapInputSchema, mcpTrueoUnwrapTydInputSchema, mcpTrueoWrapTydInputSchema, 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 };
|
|
12234
13827
|
//# sourceMappingURL=catalog.js.map
|
|
12235
13828
|
//# sourceMappingURL=catalog.js.map
|