@continuumdao/ctm-mpc-defi 0.2.11 → 0.2.13
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 +137 -51
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +895 -347
- package/dist/agent/catalog.js +136 -52
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/morpho/SKILL.md +11 -17
- package/dist/chains/evm/index.cjs +1 -1
- package/dist/chains/evm/index.cjs.map +1 -1
- package/dist/chains/evm/index.js +1 -1
- package/dist/chains/evm/index.js.map +1 -1
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/aave-v4/index.js +1 -1
- package/dist/protocols/evm/aave-v4/index.js.map +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/curve-dao/index.js +1 -1
- package/dist/protocols/evm/curve-dao/index.js.map +1 -1
- package/dist/protocols/evm/ethena/index.cjs +1 -1
- package/dist/protocols/evm/ethena/index.cjs.map +1 -1
- package/dist/protocols/evm/ethena/index.js +1 -1
- package/dist/protocols/evm/ethena/index.js.map +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
- package/dist/protocols/evm/euler-v2/index.js +1 -1
- package/dist/protocols/evm/euler-v2/index.js.map +1 -1
- package/dist/protocols/evm/gmx/index.cjs +1 -1
- package/dist/protocols/evm/gmx/index.cjs.map +1 -1
- package/dist/protocols/evm/gmx/index.js +1 -1
- package/dist/protocols/evm/gmx/index.js.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.cjs +1 -1
- package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.js +1 -1
- package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.cjs +1 -1
- package/dist/protocols/evm/lido/index.cjs.map +1 -1
- package/dist/protocols/evm/lido/index.js +1 -1
- package/dist/protocols/evm/lido/index.js.map +1 -1
- package/dist/protocols/evm/maple/index.cjs +1 -1
- package/dist/protocols/evm/maple/index.cjs.map +1 -1
- package/dist/protocols/evm/maple/index.js +1 -1
- package/dist/protocols/evm/maple/index.js.map +1 -1
- package/dist/protocols/evm/morpho/index.cjs +1 -1
- package/dist/protocols/evm/morpho/index.cjs.map +1 -1
- package/dist/protocols/evm/morpho/index.js +1 -1
- package/dist/protocols/evm/morpho/index.js.map +1 -1
- package/dist/protocols/evm/sky/index.cjs +1 -1
- package/dist/protocols/evm/sky/index.cjs.map +1 -1
- package/dist/protocols/evm/sky/index.js +1 -1
- package/dist/protocols/evm/sky/index.js.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.cjs +1 -1
- package/dist/protocols/evm/uniswap-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.js +1 -1
- package/dist/protocols/evm/uniswap-v4/index.js.map +1 -1
- package/package.json +1 -1
package/dist/agent/catalog.cjs
CHANGED
|
@@ -416,6 +416,14 @@ var MULTISIGN_SUBMIT_OUTPUT_DOC = {
|
|
|
416
416
|
requestId: {
|
|
417
417
|
type: "string",
|
|
418
418
|
description: "Sign request id from POST /multiSignRequest."
|
|
419
|
+
},
|
|
420
|
+
status: {
|
|
421
|
+
type: "string",
|
|
422
|
+
description: "submitted when POST succeeded \u2014 do not call the same build tool again."
|
|
423
|
+
},
|
|
424
|
+
followUp: {
|
|
425
|
+
type: "string",
|
|
426
|
+
description: "Lifecycle next steps (wait_for_sign_request_ready \u2192 agree \u2192 trigger \u2192 broadcast)."
|
|
419
427
|
}
|
|
420
428
|
}
|
|
421
429
|
};
|
|
@@ -484,6 +492,22 @@ function withMultisignSubmitMcpMeta(description, followUp = MCP_MULTISIGN_SUBMIT
|
|
|
484
492
|
followUp: [...followUp]
|
|
485
493
|
};
|
|
486
494
|
}
|
|
495
|
+
var MULTISIGN_SERVER_RESOLVED_KEYS = /* @__PURE__ */ new Set([
|
|
496
|
+
"keyGen",
|
|
497
|
+
"rpcUrl",
|
|
498
|
+
"executorAddress",
|
|
499
|
+
"chainDetail",
|
|
500
|
+
"customGasChainDetails"
|
|
501
|
+
]);
|
|
502
|
+
function agentFacingMultisignJsonSchema(schema) {
|
|
503
|
+
const raw = zodSchemaToMcpJsonSchema(schema);
|
|
504
|
+
const prevRequired = Array.isArray(raw.required) ? [...raw.required] : [];
|
|
505
|
+
const agentRequired = prevRequired.filter((k) => !MULTISIGN_SERVER_RESOLVED_KEYS.has(k));
|
|
506
|
+
if (!agentRequired.includes("keyGenId")) {
|
|
507
|
+
agentRequired.unshift("keyGenId");
|
|
508
|
+
}
|
|
509
|
+
return { ...raw, required: agentRequired };
|
|
510
|
+
}
|
|
487
511
|
function zodSchemaToMcpJsonSchema(schema) {
|
|
488
512
|
const raw = zodToJsonSchema.zodToJsonSchema(schema, {
|
|
489
513
|
target: "openApi3",
|
|
@@ -503,6 +527,41 @@ function zodSchemaToMcpJsonSchema(schema) {
|
|
|
503
527
|
}
|
|
504
528
|
return raw;
|
|
505
529
|
}
|
|
530
|
+
function parseAgentBoolean(raw, defaultValue = false) {
|
|
531
|
+
if (raw === void 0 || raw === null) return defaultValue;
|
|
532
|
+
if (typeof raw === "boolean") return raw;
|
|
533
|
+
if (typeof raw === "number") return raw !== 0;
|
|
534
|
+
if (typeof raw === "string") {
|
|
535
|
+
const t = raw.trim().toLowerCase();
|
|
536
|
+
if (t === "true" || t === "1" || t === "yes") return true;
|
|
537
|
+
if (t === "false" || t === "0" || t === "no" || t === "") return false;
|
|
538
|
+
}
|
|
539
|
+
return Boolean(raw);
|
|
540
|
+
}
|
|
541
|
+
var CHAIN_ID_DECIMAL_HEX_TYPOS = {
|
|
542
|
+
33875: 8453
|
|
543
|
+
};
|
|
544
|
+
function parseAgentEvmChainId(raw) {
|
|
545
|
+
if (typeof raw === "number" && Number.isInteger(raw) && raw > 0) return raw;
|
|
546
|
+
if (typeof raw !== "string") return Number.NaN;
|
|
547
|
+
const t = raw.trim();
|
|
548
|
+
if (!t) return Number.NaN;
|
|
549
|
+
if (t.toLowerCase().startsWith("0x")) {
|
|
550
|
+
const hexVal = Number.parseInt(t, 16);
|
|
551
|
+
if (!Number.isFinite(hexVal) || hexVal <= 0) return Number.NaN;
|
|
552
|
+
return CHAIN_ID_DECIMAL_HEX_TYPOS[hexVal] ?? hexVal;
|
|
553
|
+
}
|
|
554
|
+
const dec = Number.parseInt(t, 10);
|
|
555
|
+
return Number.isFinite(dec) && dec > 0 ? dec : Number.NaN;
|
|
556
|
+
}
|
|
557
|
+
var agentBooleanSchema = (defaultValue = false) => zod.z.preprocess((val) => parseAgentBoolean(val, defaultValue), zod.z.boolean());
|
|
558
|
+
var agentOptionalBooleanSchema = () => zod.z.preprocess((val) => val === void 0 || val === null ? void 0 : parseAgentBoolean(val, false), zod.z.boolean().optional());
|
|
559
|
+
var agentEvmChainIdSchema = zod.z.preprocess(
|
|
560
|
+
(val) => parseAgentEvmChainId(val),
|
|
561
|
+
zod.z.number().int().positive().describe("EVM chain id (decimal, e.g. 8453 for Base \u2014 not 0x8453).")
|
|
562
|
+
);
|
|
563
|
+
|
|
564
|
+
// src/agent/schemas/common.ts
|
|
506
565
|
var evmAddressSchema = zod.z.string().min(1).describe("EVM address (0x-prefixed, 40 hex nibbles)");
|
|
507
566
|
var keyGenSchema = zod.z.object({
|
|
508
567
|
pubkeyhex: zod.z.string().min(1).describe("MPC secp256k1 public key hex (required for multiSignRequest pubKey)"),
|
|
@@ -524,23 +583,30 @@ var chainDetailSchema = zod.z.object({
|
|
|
524
583
|
);
|
|
525
584
|
var evmMultisignCommonInputSchema = zod.z.object({
|
|
526
585
|
keyGenId: zod.z.string().min(1).optional().describe(
|
|
527
|
-
"KeyGen request id from get_preferred_key_gen / conversation context. MCP server resolves keyGen, executorAddress, rpcUrl, and chainDetail \u2014
|
|
586
|
+
"KeyGen request id from get_preferred_key_gen / conversation context. MCP server resolves keyGen, executorAddress, rpcUrl, and chainDetail \u2014 agents must pass keyGenId only."
|
|
528
587
|
),
|
|
529
|
-
keyGen: keyGenSchema,
|
|
588
|
+
keyGen: keyGenSchema.optional().describe("Server-filled from keyGenId. Agents must not pass keyGen."),
|
|
530
589
|
purposeText: zod.z.string().min(1).describe(
|
|
531
590
|
"Human-readable purpose for the sign request. Stored in bodyForSign.purpose (may be appended with an automatic batch suffix)."
|
|
532
591
|
),
|
|
533
|
-
useCustomGas:
|
|
534
|
-
"
|
|
592
|
+
useCustomGas: agentBooleanSchema(false).describe(
|
|
593
|
+
"JSON boolean only: false = live RPC fees (default), true = chain registry Custom Gas Config. Omitted baseFee/priorityFee is valid when true."
|
|
535
594
|
),
|
|
536
|
-
chainId:
|
|
537
|
-
rpcUrl: zod.z.string().min(1).describe("
|
|
538
|
-
executorAddress: evmAddressSchema.describe(
|
|
539
|
-
|
|
540
|
-
),
|
|
541
|
-
chainDetail: chainDetailSchema,
|
|
595
|
+
chainId: agentEvmChainIdSchema,
|
|
596
|
+
rpcUrl: zod.z.string().min(1).optional().describe("Server-filled from chain registry when keyGenId is set. Agents must not pass rpcUrl."),
|
|
597
|
+
executorAddress: evmAddressSchema.optional().describe("Server-filled MPC wallet from keyGenId. Agents must not pass executorAddress."),
|
|
598
|
+
chainDetail: chainDetailSchema.optional().describe("Server-filled gas row from chain registry when keyGenId is set."),
|
|
542
599
|
customGasChainDetails: zod.z.record(zod.z.unknown()).optional().describe("Snapshot written to extraJSON.customGasChainDetails when useCustomGas is true.")
|
|
543
600
|
});
|
|
601
|
+
function withMultisignKeySourceRefine(schema) {
|
|
602
|
+
return schema.refine(
|
|
603
|
+
(d) => Boolean(d.keyGenId?.trim()) || Boolean(d.keyGen?.pubkeyhex?.trim() && d.executorAddress?.trim() && d.rpcUrl?.trim()),
|
|
604
|
+
{
|
|
605
|
+
message: "keyGenId is required for MCP agents (or pass keyGen + executorAddress + rpcUrl for manual calls).",
|
|
606
|
+
path: ["keyGenId"]
|
|
607
|
+
}
|
|
608
|
+
);
|
|
609
|
+
}
|
|
544
610
|
var multisignOutputSchema = zod.z.object({
|
|
545
611
|
bodyForSign: zod.z.record(zod.z.unknown()).describe(
|
|
546
612
|
"POST body fields without clientSig: keyList, pubKey, msgHash, msgRaw, destinationChainID, purpose, extraJSON, proposalTxParams (batch), messageHashes/messageRawBatch when N>1 txs."
|
|
@@ -588,18 +654,20 @@ var mcpUniswapV4CreateSwapOutputSchema = zod.z.object({
|
|
|
588
654
|
gasFee: zod.z.string().optional()
|
|
589
655
|
}).passthrough().describe("{ swap: TransactionRequest, requestId?, gasFee? }");
|
|
590
656
|
var swapTxRequestSchema = jsonObjectSchema.describe("swap field from create_swap response (to, data, value)");
|
|
591
|
-
var mcpUniswapV4BuildSwapMultisignInputSchema =
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
createSwapResponse: zod.z.object({
|
|
657
|
+
var mcpUniswapV4BuildSwapMultisignInputSchema = withMultisignKeySourceRefine(
|
|
658
|
+
evmMultisignCommonInputSchema.extend({
|
|
659
|
+
tokenIn: evmAddressSchema.describe("Token in; 0x0 for native ETH"),
|
|
595
660
|
swap: swapTxRequestSchema,
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
661
|
+
createSwapResponse: zod.z.object({
|
|
662
|
+
swap: swapTxRequestSchema,
|
|
663
|
+
requestId: zod.z.string().optional(),
|
|
664
|
+
gasFee: zod.z.string().optional()
|
|
665
|
+
}).passthrough().describe("Full create_swap response"),
|
|
666
|
+
fullQuoteSnapshot: jsonObjectSchema.describe("Quote JSON used for the swap"),
|
|
667
|
+
swapDeadlineUnix: zod.z.number().describe("Same deadline passed to create_swap"),
|
|
668
|
+
slippagePercent: zod.z.number().optional().describe("Extra approve headroom for EXACT_OUTPUT")
|
|
669
|
+
})
|
|
670
|
+
);
|
|
603
671
|
var lpExistingPoolSchema = zod.z.object({
|
|
604
672
|
token0Address: evmAddressSchema,
|
|
605
673
|
token1Address: evmAddressSchema,
|
|
@@ -739,21 +807,27 @@ var lpBuildCommonSchema = {
|
|
|
739
807
|
nativeWrapped: evmAddressSchema.optional(),
|
|
740
808
|
poolReference: zod.z.string().optional()
|
|
741
809
|
};
|
|
742
|
-
var mcpUniswapV4BuildMintLiquidityMultisignInputSchema =
|
|
743
|
-
lpBuildCommonSchema
|
|
810
|
+
var mcpUniswapV4BuildMintLiquidityMultisignInputSchema = withMultisignKeySourceRefine(
|
|
811
|
+
evmMultisignCommonInputSchema.extend(lpBuildCommonSchema)
|
|
812
|
+
);
|
|
813
|
+
var mcpUniswapV4BuildIncreaseLiquidityMultisignInputSchema = withMultisignKeySourceRefine(
|
|
814
|
+
evmMultisignCommonInputSchema.extend({
|
|
815
|
+
...lpBuildCommonSchema,
|
|
816
|
+
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
817
|
+
})
|
|
818
|
+
);
|
|
819
|
+
var mcpUniswapV4BuildDecreaseLiquidityMultisignInputSchema = withMultisignKeySourceRefine(
|
|
820
|
+
evmMultisignCommonInputSchema.extend({
|
|
821
|
+
...lpBuildCommonSchema,
|
|
822
|
+
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
823
|
+
})
|
|
824
|
+
);
|
|
825
|
+
var mcpUniswapV4BuildCollectFeesMultisignInputSchema = withMultisignKeySourceRefine(
|
|
826
|
+
evmMultisignCommonInputSchema.extend({
|
|
827
|
+
...lpBuildCommonSchema,
|
|
828
|
+
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
829
|
+
})
|
|
744
830
|
);
|
|
745
|
-
var mcpUniswapV4BuildIncreaseLiquidityMultisignInputSchema = evmMultisignCommonInputSchema.extend({
|
|
746
|
-
...lpBuildCommonSchema,
|
|
747
|
-
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
748
|
-
});
|
|
749
|
-
var mcpUniswapV4BuildDecreaseLiquidityMultisignInputSchema = evmMultisignCommonInputSchema.extend({
|
|
750
|
-
...lpBuildCommonSchema,
|
|
751
|
-
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
752
|
-
});
|
|
753
|
-
var mcpUniswapV4BuildCollectFeesMultisignInputSchema = evmMultisignCommonInputSchema.extend({
|
|
754
|
-
...lpBuildCommonSchema,
|
|
755
|
-
nftTokenId: zod.z.union([zod.z.string(), zod.z.number()])
|
|
756
|
-
});
|
|
757
831
|
var mcpCurveDaoQuoteInputSchema = zod.z.object({
|
|
758
832
|
chainId: zod.z.number().int().positive().describe("EVM chain id (rpcUrl resolved from get_chain_registry rpcGateway)"),
|
|
759
833
|
rpcUrl: zod.z.string().min(1).optional().describe("JSON-RPC URL; continuum-mcp-server injects from chain registry \u2014 do not pass a public RPC URL"),
|
|
@@ -765,12 +839,14 @@ var mcpCurveDaoQuoteInputSchema = zod.z.object({
|
|
|
765
839
|
var mcpCurveDaoQuoteOutputSchema = jsonObjectSchema.describe(
|
|
766
840
|
"Curve router quote: { inputAmount, output, route, priceImpactPercent?, tokenInRouterId, tokenOutRouterId }"
|
|
767
841
|
);
|
|
768
|
-
var mcpCurveDaoBuildSwapMultisignInputSchema =
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
842
|
+
var mcpCurveDaoBuildSwapMultisignInputSchema = withMultisignKeySourceRefine(
|
|
843
|
+
evmMultisignCommonInputSchema.extend({
|
|
844
|
+
tokenIn: evmAddressSchema.describe("ERC-20 sold (native in uses WETH path in UI)"),
|
|
845
|
+
tokenOut: zod.z.string().min(1).describe("Output token or 0xeeee\u2026 native placeholder"),
|
|
846
|
+
amountHuman: zod.z.string().min(1).describe("Human-readable amount of tokenIn"),
|
|
847
|
+
slippagePercent: zod.z.number().gt(0).lt(100).describe("Slippage 0\u2013100 exclusive")
|
|
848
|
+
})
|
|
849
|
+
);
|
|
774
850
|
var mcpServerCommonInputSchema = zod.z.object({
|
|
775
851
|
keyGenId: zod.z.string().min(1).describe("KeyGen id from fetch_key_gen_result / node preferred KeyGen"),
|
|
776
852
|
chainId: zod.z.number().int().positive().describe("EVM chain id; RPC and gas config resolved from chain registry"),
|
|
@@ -781,7 +857,11 @@ function mcpServerMultisignInput(fields) {
|
|
|
781
857
|
return mcpServerCommonInputSchema.extend(fields);
|
|
782
858
|
}
|
|
783
859
|
var mcpServerSubmitOutputSchema = zod.z.object({
|
|
784
|
-
requestId: zod.z.string().min(1).describe("Sign request id from POST /multiSignRequest \u2014 success; do not retry the same build tool.")
|
|
860
|
+
requestId: zod.z.string().min(1).describe("Sign request id from POST /multiSignRequest \u2014 success; do not retry the same build tool."),
|
|
861
|
+
status: zod.z.literal("submitted").optional().describe("Present when POST /multiSignRequest succeeded. Confirms the request exists on the node."),
|
|
862
|
+
followUp: zod.z.string().optional().describe(
|
|
863
|
+
"Next MCP lifecycle steps. Do not call the same build_*_multisign tool again unless the user explicitly wants a duplicate order."
|
|
864
|
+
)
|
|
785
865
|
}).describe(
|
|
786
866
|
"Submitted mpc-auth multiSignRequest. Continue with wait_for_sign_request_ready \u2192 sign_request_agree \u2192 trigger_sign_result \u2192 broadcast_sign_result."
|
|
787
867
|
);
|
|
@@ -792,7 +872,7 @@ var MCP_NON_SUBMIT_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
|
792
872
|
|
|
793
873
|
// src/agent/schemas/protocols.ts
|
|
794
874
|
function mcpMultisignInput(fields) {
|
|
795
|
-
return evmMultisignCommonInputSchema.extend(fields);
|
|
875
|
+
return withMultisignKeySourceRefine(evmMultisignCommonInputSchema.extend(fields));
|
|
796
876
|
}
|
|
797
877
|
var mcpLidoSubmitInputSchema = mcpMultisignInput({
|
|
798
878
|
valueWei: zod.z.string().min(1).describe("ETH to stake (wei decimal string)"),
|
|
@@ -934,7 +1014,7 @@ var mcpMorphoVaultDepositInputSchema = mcpMultisignInput({
|
|
|
934
1014
|
vault: evmAddressSchema,
|
|
935
1015
|
underlying: evmAddressSchema.describe("Underlying asset; use wrapped native with isNativeIn for ETH."),
|
|
936
1016
|
amountHuman: zod.z.string().min(1),
|
|
937
|
-
isNativeIn:
|
|
1017
|
+
isNativeIn: agentOptionalBooleanSchema()
|
|
938
1018
|
});
|
|
939
1019
|
var mcpMorphoVaultWithdrawInputSchema = mcpMultisignInput({
|
|
940
1020
|
vault: evmAddressSchema,
|
|
@@ -944,7 +1024,7 @@ var mcpMorphoBlueCollateralDepositInputSchema = mcpMultisignInput({
|
|
|
944
1024
|
marketId: zod.z.string().min(1).describe("Morpho Blue marketId from API."),
|
|
945
1025
|
collateralToken: evmAddressSchema,
|
|
946
1026
|
amountHuman: zod.z.string().min(1),
|
|
947
|
-
isNativeIn:
|
|
1027
|
+
isNativeIn: agentOptionalBooleanSchema()
|
|
948
1028
|
});
|
|
949
1029
|
var mcpMorphoBlueBorrowInputSchema = mcpMultisignInput({
|
|
950
1030
|
marketId: zod.z.string().min(1),
|
|
@@ -999,7 +1079,7 @@ var mcpMorphoFetchEarnVaultsOutputSchema = zod.z.object({
|
|
|
999
1079
|
)
|
|
1000
1080
|
});
|
|
1001
1081
|
function mcpGmxMultisignInput(fields) {
|
|
1002
|
-
return evmMultisignCommonInputSchema.extend(fields);
|
|
1082
|
+
return withMultisignKeySourceRefine(evmMultisignCommonInputSchema.extend(fields));
|
|
1003
1083
|
}
|
|
1004
1084
|
var gmxDirectionSchema = zod.z.enum(["long", "short"]);
|
|
1005
1085
|
var gmxOrderTypeSchema = zod.z.enum(["market", "limit"]);
|
|
@@ -1147,7 +1227,7 @@ var mcpGmxFetchOhlcvOutputSchema = zod.z.object({
|
|
|
1147
1227
|
candles: zod.z.array(gmxOhlcvCandleSchema)
|
|
1148
1228
|
});
|
|
1149
1229
|
function mcpHyperliquidMultisignInput(fields) {
|
|
1150
|
-
return evmMultisignCommonInputSchema.extend(fields);
|
|
1230
|
+
return withMultisignKeySourceRefine(evmMultisignCommonInputSchema.extend(fields));
|
|
1151
1231
|
}
|
|
1152
1232
|
var hyperliquidTifSchema = zod.z.enum(["alo", "gtc", "ioc"]);
|
|
1153
1233
|
var hyperliquidOhlcvIntervalSchema = zod.z.enum([
|
|
@@ -1460,7 +1540,7 @@ function defineProtocolMcpTool(def) {
|
|
|
1460
1540
|
description: meta.description,
|
|
1461
1541
|
followUp: meta.followUp,
|
|
1462
1542
|
outputZod: mcpServerSubmitOutputSchema,
|
|
1463
|
-
inputSchema:
|
|
1543
|
+
inputSchema: agentFacingMultisignJsonSchema(def.inputZod),
|
|
1464
1544
|
outputSchema: zodSchemaToMcpJsonSchema(mcpServerSubmitOutputSchema),
|
|
1465
1545
|
parseInput: (data) => def.inputZod.parse(data),
|
|
1466
1546
|
parseOutput: (data) => mcpServerSubmitOutputSchema.parse(data)
|
|
@@ -2021,12 +2101,16 @@ function defineMcpTool(def) {
|
|
|
2021
2101
|
}
|
|
2022
2102
|
function defineMultisignSubmitMcpTool(def) {
|
|
2023
2103
|
const meta = withMultisignSubmitMcpMeta(def.description, def.followUp ?? MCP_MULTISIGN_SUBMIT_FOLLOW_UP);
|
|
2024
|
-
return
|
|
2104
|
+
return {
|
|
2025
2105
|
...def,
|
|
2026
2106
|
description: meta.description,
|
|
2027
2107
|
followUp: meta.followUp,
|
|
2028
|
-
outputZod: mcpServerSubmitOutputSchema
|
|
2029
|
-
|
|
2108
|
+
outputZod: mcpServerSubmitOutputSchema,
|
|
2109
|
+
inputSchema: agentFacingMultisignJsonSchema(def.inputZod),
|
|
2110
|
+
outputSchema: zodSchemaToMcpJsonSchema(mcpServerSubmitOutputSchema),
|
|
2111
|
+
parseInput: (data) => def.inputZod.parse(data),
|
|
2112
|
+
parseOutput: (data) => mcpServerSubmitOutputSchema.parse(data)
|
|
2113
|
+
};
|
|
2030
2114
|
}
|
|
2031
2115
|
var CORE_MCP_TOOL_DEFINITIONS = [
|
|
2032
2116
|
defineMcpTool({
|
|
@@ -3986,6 +4070,8 @@ exports.mcpUniswapV4RegisterPositionFromMintTxOutputSchema = mcpUniswapV4Registe
|
|
|
3986
4070
|
exports.mcpUniswapV4RegisterPositionNftInputSchema = mcpUniswapV4RegisterPositionNftInputSchema;
|
|
3987
4071
|
exports.mcpUniswapV4RegisterPositionNftOutputSchema = mcpUniswapV4RegisterPositionNftOutputSchema;
|
|
3988
4072
|
exports.multisignOutputSchema = multisignOutputSchema;
|
|
4073
|
+
exports.parseAgentBoolean = parseAgentBoolean;
|
|
4074
|
+
exports.parseAgentEvmChainId = parseAgentEvmChainId;
|
|
3989
4075
|
exports.parseMcpToolInput = parseMcpToolInput;
|
|
3990
4076
|
exports.parseMcpToolOutput = parseMcpToolOutput;
|
|
3991
4077
|
exports.parseMultisignBuilderOutput = parseMultisignBuilderOutput;
|