@continuumdao/ctm-mpc-defi 0.2.28 → 0.2.29
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 +56 -20
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.js +56 -20
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/ethena/SKILL.md +1 -1
- package/dist/agent/skills/lido/SKILL.md +4 -1
- package/dist/protocols/evm/ethena/index.cjs +41 -4
- package/dist/protocols/evm/ethena/index.cjs.map +1 -1
- package/dist/protocols/evm/ethena/index.d.ts +12 -2
- package/dist/protocols/evm/ethena/index.js +38 -5
- package/dist/protocols/evm/ethena/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.cjs +66 -1
- package/dist/protocols/evm/lido/index.cjs.map +1 -1
- package/dist/protocols/evm/lido/index.d.ts +11 -1
- package/dist/protocols/evm/lido/index.js +60 -2
- package/dist/protocols/evm/lido/index.js.map +1 -1
- package/package.json +1 -1
package/dist/agent/catalog.cjs
CHANGED
|
@@ -4988,14 +4988,22 @@ function getAgentCatalogForMcp() {
|
|
|
4988
4988
|
}
|
|
4989
4989
|
};
|
|
4990
4990
|
}
|
|
4991
|
-
viem.getAddress(
|
|
4991
|
+
var LIDO_STETH_CONTRACT_MAINNET = viem.getAddress(
|
|
4992
4992
|
"0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84"
|
|
4993
4993
|
);
|
|
4994
|
-
viem.getAddress(
|
|
4994
|
+
var LIDO_WSTETH_CONTRACT_MAINNET = viem.getAddress(
|
|
4995
4995
|
"0x7f39C581F595B853cBbF37C12FfeeA971C5a5bEa"
|
|
4996
4996
|
);
|
|
4997
4997
|
viem.getAddress("0x889edC2eDab5f40e902b864aD4d7AdE8E412F9B1");
|
|
4998
4998
|
var LIDO_ETHEREUM_MAINNET_CHAIN_ID = 1;
|
|
4999
|
+
var LIDO_ROBINHOOD_CHAIN_ID = 4663;
|
|
5000
|
+
var LIDO_WSTETH_ROBINHOOD = viem.getAddress("0x2dC99af320BC317c567f24eE95811dcbd5983DfD");
|
|
5001
|
+
function listLidoSupportedChainIds() {
|
|
5002
|
+
return [LIDO_ETHEREUM_MAINNET_CHAIN_ID, LIDO_ROBINHOOD_CHAIN_ID];
|
|
5003
|
+
}
|
|
5004
|
+
function isLidoSupportedChainId(chainId) {
|
|
5005
|
+
return chainId === LIDO_ETHEREUM_MAINNET_CHAIN_ID || chainId === LIDO_ROBINHOOD_CHAIN_ID;
|
|
5006
|
+
}
|
|
4999
5007
|
|
|
5000
5008
|
// src/protocols/evm/lido/index.ts
|
|
5001
5009
|
var LIDO_PROTOCOL_ID = "lido";
|
|
@@ -5004,7 +5012,7 @@ var lidoProtocolModule = {
|
|
|
5004
5012
|
chainCategory: "evm",
|
|
5005
5013
|
isChainSupported(ctx) {
|
|
5006
5014
|
if (ctx.chainCategory !== "evm") return false;
|
|
5007
|
-
return Number(ctx.chainId)
|
|
5015
|
+
return isLidoSupportedChainId(Number(ctx.chainId));
|
|
5008
5016
|
},
|
|
5009
5017
|
isTokenSupported(token) {
|
|
5010
5018
|
return token.category === "evm" && (token.kind === "native" || token.kind === "erc20");
|
|
@@ -5021,7 +5029,9 @@ registerProtocolModule(lidoProtocolModule);
|
|
|
5021
5029
|
var USDE_ETHEREUM_MAINNET = "0x4c9edd5852cd905f086c759e8383e09bff1e68b3";
|
|
5022
5030
|
var SUSDE_ETHEREUM_MAINNET = "0x9d39a5de30e57443bff2a8307a4256c8797a3497";
|
|
5023
5031
|
var USDE_MOST_L2S = "0x5d3a1Ff2b6BAb83b63cd9AD0787074081a52ef34";
|
|
5032
|
+
var SUSDE_MOST_L2S = "0x211Cc4DD073734dA055fbF44a2b4667d5E5fE5d2";
|
|
5024
5033
|
var USDE_ZKSYNC_ERA = "0x39Fe7a0DACcE31Bd90418e3e659fb0b5f0B3Db0d";
|
|
5034
|
+
var SUSDE_ZKSYNC_ERA = "0xAD17Da2f6Ac76746EF261E835C50b2651ce36DA8";
|
|
5025
5035
|
var L2_SAME_ADDRESS_CHAIN_IDS = /* @__PURE__ */ new Set([
|
|
5026
5036
|
42161,
|
|
5027
5037
|
// Arbitrum One
|
|
@@ -5057,8 +5067,10 @@ var L2_SAME_ADDRESS_CHAIN_IDS = /* @__PURE__ */ new Set([
|
|
|
5057
5067
|
// Morph
|
|
5058
5068
|
1923,
|
|
5059
5069
|
// Swell
|
|
5060
|
-
48900
|
|
5070
|
+
48900,
|
|
5061
5071
|
// Zircuit
|
|
5072
|
+
4663
|
|
5073
|
+
// Robinhood Chain
|
|
5062
5074
|
]);
|
|
5063
5075
|
var FALLBACK_NAME_BY_ID = {
|
|
5064
5076
|
1: "Ethereum",
|
|
@@ -5080,6 +5092,7 @@ var FALLBACK_NAME_BY_ID = {
|
|
|
5080
5092
|
2818: "Morph",
|
|
5081
5093
|
1923: "Swell",
|
|
5082
5094
|
48900: "Zircuit",
|
|
5095
|
+
4663: "Robinhood Chain",
|
|
5083
5096
|
324: "ZKSync Era"
|
|
5084
5097
|
};
|
|
5085
5098
|
function usdeTokenAddressOnEvmChain(chainId) {
|
|
@@ -5090,17 +5103,28 @@ function usdeTokenAddressOnEvmChain(chainId) {
|
|
|
5090
5103
|
}
|
|
5091
5104
|
function listEthenaUsdeEvmNetworkRows() {
|
|
5092
5105
|
const rows = [
|
|
5093
|
-
{
|
|
5106
|
+
{
|
|
5107
|
+
chainId: 1,
|
|
5108
|
+
label: FALLBACK_NAME_BY_ID[1],
|
|
5109
|
+
usde: USDE_ETHEREUM_MAINNET,
|
|
5110
|
+
susde: SUSDE_ETHEREUM_MAINNET
|
|
5111
|
+
}
|
|
5094
5112
|
];
|
|
5095
5113
|
const l2 = [...L2_SAME_ADDRESS_CHAIN_IDS].sort((a, b) => a - b);
|
|
5096
5114
|
for (const id of l2) {
|
|
5097
5115
|
rows.push({
|
|
5098
5116
|
chainId: id,
|
|
5099
5117
|
label: FALLBACK_NAME_BY_ID[id] ?? `Chain ${id}`,
|
|
5100
|
-
usde: USDE_MOST_L2S
|
|
5118
|
+
usde: USDE_MOST_L2S,
|
|
5119
|
+
susde: SUSDE_MOST_L2S
|
|
5101
5120
|
});
|
|
5102
5121
|
}
|
|
5103
|
-
rows.push({
|
|
5122
|
+
rows.push({
|
|
5123
|
+
chainId: 324,
|
|
5124
|
+
label: FALLBACK_NAME_BY_ID[324],
|
|
5125
|
+
usde: USDE_ZKSYNC_ERA,
|
|
5126
|
+
susde: SUSDE_ZKSYNC_ERA
|
|
5127
|
+
});
|
|
5104
5128
|
return rows.sort((a, b) => {
|
|
5105
5129
|
if (a.chainId === 1) return -1;
|
|
5106
5130
|
if (b.chainId === 1) return 1;
|
|
@@ -6503,17 +6527,26 @@ var PROTOCOL_SUPPORT_ADVISORS = {
|
|
|
6503
6527
|
}),
|
|
6504
6528
|
lido: advisor("lido", "mainnet_only", {
|
|
6505
6529
|
async supportedChainIds() {
|
|
6506
|
-
return
|
|
6530
|
+
return listLidoSupportedChainIds();
|
|
6507
6531
|
},
|
|
6508
|
-
async supportedTokens() {
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
|
|
6532
|
+
async supportedTokens(chainId) {
|
|
6533
|
+
if (chainId === LIDO_ETHEREUM_MAINNET_CHAIN_ID) {
|
|
6534
|
+
return {
|
|
6535
|
+
tokens: [
|
|
6536
|
+
{ address: "0x0000000000000000000000000000000000000000", symbol: "ETH", roles: ["native", "stake"] },
|
|
6537
|
+
{ address: LIDO_STETH_CONTRACT_MAINNET, symbol: "stETH", roles: ["erc20"] },
|
|
6538
|
+
{ address: LIDO_WSTETH_CONTRACT_MAINNET, symbol: "wstETH", roles: ["erc20"] }
|
|
6539
|
+
],
|
|
6540
|
+
notes: "Lido staking, withdrawals, and wrap/unwrap are Ethereum mainnet only."
|
|
6541
|
+
};
|
|
6542
|
+
}
|
|
6543
|
+
if (chainId === LIDO_ROBINHOOD_CHAIN_ID) {
|
|
6544
|
+
return {
|
|
6545
|
+
tokens: [{ address: LIDO_WSTETH_ROBINHOOD, symbol: "wstETH", roles: ["erc20"] }],
|
|
6546
|
+
notes: "Bridged wstETH on Robinhood Chain (CCIP). Stake/withdraw/wrap MCP tools remain mainnet-only."
|
|
6547
|
+
};
|
|
6548
|
+
}
|
|
6549
|
+
return { tokens: [] };
|
|
6517
6550
|
}
|
|
6518
6551
|
}),
|
|
6519
6552
|
ethena: advisor("ethena", "minting_contract", {
|
|
@@ -6527,14 +6560,17 @@ var PROTOCOL_SUPPORT_ADVISORS = {
|
|
|
6527
6560
|
{ address: USDE_ETHEREUM_MAINNET, symbol: "USDe", roles: ["stake"] },
|
|
6528
6561
|
{ address: SUSDE_ETHEREUM_MAINNET, symbol: "sUSDe", roles: ["vault"] }
|
|
6529
6562
|
],
|
|
6530
|
-
notes: "Ethena stake/redeem UI actions are mainnet-only; USDe
|
|
6563
|
+
notes: "Ethena stake/redeem UI actions are mainnet-only; USDe/sUSDe exist on other chains for transfers."
|
|
6531
6564
|
};
|
|
6532
6565
|
}
|
|
6533
6566
|
if (isEvmChainInEthenaUsdeList(chainId)) {
|
|
6534
6567
|
const row = listEthenaUsdeEvmNetworkRows().find((r) => r.chainId === chainId);
|
|
6535
6568
|
return {
|
|
6536
|
-
tokens: row ? [
|
|
6537
|
-
|
|
6569
|
+
tokens: row ? [
|
|
6570
|
+
{ address: row.usde, symbol: "USDe", roles: ["erc20"] },
|
|
6571
|
+
{ address: row.susde, symbol: "sUSDe", roles: ["erc20"] }
|
|
6572
|
+
] : [],
|
|
6573
|
+
notes: "USDe/sUSDe on L2 (incl. Robinhood Chain); staking MCP tools target mainnet only."
|
|
6538
6574
|
};
|
|
6539
6575
|
}
|
|
6540
6576
|
return { tokens: [] };
|