dexe-mcp 0.1.5 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.mcp.example.json +12 -2
- package/CHANGELOG.md +84 -0
- package/FUTURE.md +26 -5
- package/README.md +105 -197
- package/dist/config.d.ts +12 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +34 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/addresses.d.ts +57 -0
- package/dist/lib/addresses.d.ts.map +1 -0
- package/dist/lib/addresses.js +83 -0
- package/dist/lib/addresses.js.map +1 -0
- package/dist/lib/calldata.d.ts +32 -0
- package/dist/lib/calldata.d.ts.map +1 -0
- package/dist/lib/calldata.js +28 -0
- package/dist/lib/calldata.js.map +1 -0
- package/dist/lib/govEnums.d.ts +12 -0
- package/dist/lib/govEnums.d.ts.map +1 -0
- package/dist/lib/govEnums.js +35 -0
- package/dist/lib/govEnums.js.map +1 -0
- package/dist/lib/ipfs.d.ts +60 -0
- package/dist/lib/ipfs.d.ts.map +1 -0
- package/dist/lib/ipfs.js +168 -0
- package/dist/lib/ipfs.js.map +1 -0
- package/dist/lib/markdownToSlate.d.ts +39 -0
- package/dist/lib/markdownToSlate.d.ts.map +1 -0
- package/dist/lib/markdownToSlate.js +203 -0
- package/dist/lib/markdownToSlate.js.map +1 -0
- package/dist/lib/multicall.d.ts +33 -0
- package/dist/lib/multicall.d.ts.map +1 -0
- package/dist/lib/multicall.js +46 -0
- package/dist/lib/multicall.js.map +1 -0
- package/dist/lib/proposalCatalog.d.ts +45 -0
- package/dist/lib/proposalCatalog.d.ts.map +1 -0
- package/dist/lib/proposalCatalog.js +416 -0
- package/dist/lib/proposalCatalog.js.map +1 -0
- package/dist/lib/signer.d.ts +12 -0
- package/dist/lib/signer.d.ts.map +1 -0
- package/dist/lib/signer.js +31 -0
- package/dist/lib/signer.js.map +1 -0
- package/dist/lib/subgraph.d.ts +15 -0
- package/dist/lib/subgraph.d.ts.map +1 -0
- package/dist/lib/subgraph.js +42 -0
- package/dist/lib/subgraph.js.map +1 -0
- package/dist/tools/dao.d.ts +4 -0
- package/dist/tools/dao.d.ts.map +1 -0
- package/dist/tools/dao.js +242 -0
- package/dist/tools/dao.js.map +1 -0
- package/dist/tools/daoDeploy.d.ts +4 -0
- package/dist/tools/daoDeploy.d.ts.map +1 -0
- package/dist/tools/daoDeploy.js +573 -0
- package/dist/tools/daoDeploy.js.map +1 -0
- package/dist/tools/flow.d.ts +5 -0
- package/dist/tools/flow.d.ts.map +1 -0
- package/dist/tools/flow.js +451 -0
- package/dist/tools/flow.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +32 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/ipfs.d.ts +6 -0
- package/dist/tools/ipfs.d.ts.map +1 -0
- package/dist/tools/ipfs.js +376 -0
- package/dist/tools/ipfs.js.map +1 -0
- package/dist/tools/proposal.d.ts +4 -0
- package/dist/tools/proposal.d.ts.map +1 -0
- package/dist/tools/proposal.js +217 -0
- package/dist/tools/proposal.js.map +1 -0
- package/dist/tools/proposalBuild.d.ts +4 -0
- package/dist/tools/proposalBuild.d.ts.map +1 -0
- package/dist/tools/proposalBuild.js +372 -0
- package/dist/tools/proposalBuild.js.map +1 -0
- package/dist/tools/proposalBuildComplex.d.ts +4 -0
- package/dist/tools/proposalBuildComplex.d.ts.map +1 -0
- package/dist/tools/proposalBuildComplex.js +766 -0
- package/dist/tools/proposalBuildComplex.js.map +1 -0
- package/dist/tools/proposalBuildInternal.d.ts +4 -0
- package/dist/tools/proposalBuildInternal.d.ts.map +1 -0
- package/dist/tools/proposalBuildInternal.js +224 -0
- package/dist/tools/proposalBuildInternal.js.map +1 -0
- package/dist/tools/proposalBuildMore.d.ts +4 -0
- package/dist/tools/proposalBuildMore.d.ts.map +1 -0
- package/dist/tools/proposalBuildMore.js +457 -0
- package/dist/tools/proposalBuildMore.js.map +1 -0
- package/dist/tools/proposalBuildOffchain.d.ts +4 -0
- package/dist/tools/proposalBuildOffchain.d.ts.map +1 -0
- package/dist/tools/proposalBuildOffchain.js +389 -0
- package/dist/tools/proposalBuildOffchain.js.map +1 -0
- package/dist/tools/read.d.ts +4 -0
- package/dist/tools/read.d.ts.map +1 -0
- package/dist/tools/read.js +580 -0
- package/dist/tools/read.js.map +1 -0
- package/dist/tools/subgraph.d.ts +4 -0
- package/dist/tools/subgraph.d.ts.map +1 -0
- package/dist/tools/subgraph.js +404 -0
- package/dist/tools/subgraph.js.map +1 -0
- package/dist/tools/txSend.d.ts +5 -0
- package/dist/tools/txSend.d.ts.map +1 -0
- package/dist/tools/txSend.js +87 -0
- package/dist/tools/txSend.js.map +1 -0
- package/dist/tools/vote.d.ts +4 -0
- package/dist/tools/vote.d.ts.map +1 -0
- package/dist/tools/vote.js +196 -0
- package/dist/tools/vote.js.map +1 -0
- package/dist/tools/voteBuild.d.ts +4 -0
- package/dist/tools/voteBuild.d.ts.map +1 -0
- package/dist/tools/voteBuild.js +983 -0
- package/dist/tools/voteBuild.js.map +1 -0
- package/package.json +18 -5
- package/PLAN.md +0 -132
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { Contract, Interface, isAddress } from "ethers";
|
|
3
|
+
import { RpcProvider } from "../rpc.js";
|
|
4
|
+
import { AddressBook, CONTRACT_NAMES } from "../lib/addresses.js";
|
|
5
|
+
import { multicall } from "../lib/multicall.js";
|
|
6
|
+
const POOL_FACTORY_ABI = [
|
|
7
|
+
"function predictGovAddresses(address deployer, string poolName) view returns (tuple(address govPool, address govTokenSale, address govToken, address distributionProposal, address expertNft, address nftMultiplier))",
|
|
8
|
+
];
|
|
9
|
+
const POOL_REGISTRY_ABI = [
|
|
10
|
+
"function isGovPool(address potentialPool) view returns (bool)",
|
|
11
|
+
];
|
|
12
|
+
const GOV_POOL_ABI = [
|
|
13
|
+
"function getHelperContracts() view returns (address settings, address userKeeper, address validators, address poolRegistry, address votePower)",
|
|
14
|
+
"function getNftContracts() view returns (address nftMultiplier, address expertNft, address dexeExpertNft, address babt)",
|
|
15
|
+
"function descriptionURL() view returns (string)",
|
|
16
|
+
"function name() view returns (string)",
|
|
17
|
+
];
|
|
18
|
+
const GOV_VALIDATORS_ABI = [
|
|
19
|
+
"function validatorsCount() view returns (uint256)",
|
|
20
|
+
];
|
|
21
|
+
export function registerDaoTools(server, ctx) {
|
|
22
|
+
const rpc = new RpcProvider(ctx.config);
|
|
23
|
+
function requireBook() {
|
|
24
|
+
const provider = rpc.requireProvider();
|
|
25
|
+
return new AddressBook({
|
|
26
|
+
provider,
|
|
27
|
+
chainId: ctx.config.chainId,
|
|
28
|
+
registryOverride: ctx.config.registryOverride,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
registerPredictAddresses(server, ctx, requireBook);
|
|
32
|
+
registerRegistryLookup(server, ctx, requireBook);
|
|
33
|
+
registerDaoInfo(server, ctx, rpc, requireBook);
|
|
34
|
+
}
|
|
35
|
+
function errorResult(message) {
|
|
36
|
+
return { content: [{ type: "text", text: message }], isError: true };
|
|
37
|
+
}
|
|
38
|
+
// ---------- dexe_dao_predict_addresses ----------
|
|
39
|
+
function registerPredictAddresses(server, ctx, requireBook) {
|
|
40
|
+
server.registerTool("dexe_dao_predict_addresses", {
|
|
41
|
+
title: "Predict addresses for a future DAO deployment",
|
|
42
|
+
description: "Calls `PoolFactory.predictGovAddresses(deployer, poolName)` and returns the six CREATE2-predicted addresses (govPool, govTokenSale, govToken, distributionProposal, expertNft, nftMultiplier). Useful for wiring configs before a DAO is actually deployed.",
|
|
43
|
+
inputSchema: {
|
|
44
|
+
deployer: z.string().describe("Address that will send the deployGovPool tx (tx.origin)"),
|
|
45
|
+
poolName: z.string().describe("Unique pool name — part of the CREATE2 salt"),
|
|
46
|
+
},
|
|
47
|
+
outputSchema: {
|
|
48
|
+
govPool: z.string(),
|
|
49
|
+
govTokenSale: z.string(),
|
|
50
|
+
govToken: z.string(),
|
|
51
|
+
distributionProposal: z.string(),
|
|
52
|
+
expertNft: z.string(),
|
|
53
|
+
nftMultiplier: z.string(),
|
|
54
|
+
},
|
|
55
|
+
}, async ({ deployer, poolName }) => {
|
|
56
|
+
if (!isAddress(deployer))
|
|
57
|
+
return errorResult(`Invalid deployer address: ${deployer}`);
|
|
58
|
+
if (!poolName || poolName.length === 0)
|
|
59
|
+
return errorResult("poolName must be non-empty");
|
|
60
|
+
try {
|
|
61
|
+
const book = requireBook();
|
|
62
|
+
const factoryAddr = await book.resolve(CONTRACT_NAMES.POOL_FACTORY);
|
|
63
|
+
const factory = new Contract(factoryAddr, POOL_FACTORY_ABI, book.provider);
|
|
64
|
+
const res = await factory.getFunction("predictGovAddresses").staticCall(deployer, poolName);
|
|
65
|
+
const structured = {
|
|
66
|
+
govPool: res.govPool,
|
|
67
|
+
govTokenSale: res.govTokenSale,
|
|
68
|
+
govToken: res.govToken,
|
|
69
|
+
distributionProposal: res.distributionProposal,
|
|
70
|
+
expertNft: res.expertNft,
|
|
71
|
+
nftMultiplier: res.nftMultiplier,
|
|
72
|
+
};
|
|
73
|
+
const text = `Predicted addresses for pool "${poolName}" deployed by ${deployer}:\n` +
|
|
74
|
+
` govPool : ${structured.govPool}\n` +
|
|
75
|
+
` govTokenSale : ${structured.govTokenSale}\n` +
|
|
76
|
+
` govToken : ${structured.govToken}\n` +
|
|
77
|
+
` distributionProposal : ${structured.distributionProposal}\n` +
|
|
78
|
+
` expertNft : ${structured.expertNft}\n` +
|
|
79
|
+
` nftMultiplier : ${structured.nftMultiplier}`;
|
|
80
|
+
return {
|
|
81
|
+
content: [{ type: "text", text }],
|
|
82
|
+
structuredContent: structured,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
catch (err) {
|
|
86
|
+
return errorResult(`Failed to predict addresses: ${err instanceof Error ? err.message : String(err)}`);
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
// ---------- dexe_dao_registry_lookup ----------
|
|
91
|
+
function registerRegistryLookup(server, ctx, requireBook) {
|
|
92
|
+
server.registerTool("dexe_dao_registry_lookup", {
|
|
93
|
+
title: "Check whether an address is a DeXe GovPool",
|
|
94
|
+
description: "Calls `PoolRegistry.isGovPool(address)` on the configured chain. Returns true if the address is a registered DeXe DAO GovPool.",
|
|
95
|
+
inputSchema: {
|
|
96
|
+
address: z.string().describe("Candidate GovPool address"),
|
|
97
|
+
},
|
|
98
|
+
outputSchema: {
|
|
99
|
+
address: z.string(),
|
|
100
|
+
isGovPool: z.boolean(),
|
|
101
|
+
poolRegistry: z.string(),
|
|
102
|
+
chainId: z.number(),
|
|
103
|
+
},
|
|
104
|
+
}, async ({ address }) => {
|
|
105
|
+
if (!isAddress(address))
|
|
106
|
+
return errorResult(`Invalid address: ${address}`);
|
|
107
|
+
try {
|
|
108
|
+
const book = requireBook();
|
|
109
|
+
const registryAddr = await book.resolve(CONTRACT_NAMES.POOL_REGISTRY);
|
|
110
|
+
const reg = new Contract(registryAddr, POOL_REGISTRY_ABI, book.provider);
|
|
111
|
+
const isGov = await reg.getFunction("isGovPool").staticCall(address);
|
|
112
|
+
const structured = {
|
|
113
|
+
address,
|
|
114
|
+
isGovPool: isGov,
|
|
115
|
+
poolRegistry: registryAddr,
|
|
116
|
+
chainId: ctx.config.chainId,
|
|
117
|
+
};
|
|
118
|
+
return {
|
|
119
|
+
content: [
|
|
120
|
+
{
|
|
121
|
+
type: "text",
|
|
122
|
+
text: `${address} ${isGov ? "IS" : "is NOT"} a GovPool on chainId=${ctx.config.chainId} (PoolRegistry=${registryAddr}).`,
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
structuredContent: structured,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
return errorResult(`Registry lookup failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
// ---------- dexe_dao_info ----------
|
|
134
|
+
function registerDaoInfo(server, ctx, rpc, requireBook) {
|
|
135
|
+
server.registerTool("dexe_dao_info", {
|
|
136
|
+
title: "DAO overview — helpers, NFT contracts, validator count",
|
|
137
|
+
description: "Given a GovPool address, batch-reads helper addresses (settings/userKeeper/validators/poolRegistry/votePower), NFT contract addresses, description URL, and live validator count. One multicall RPC round-trip.",
|
|
138
|
+
inputSchema: {
|
|
139
|
+
govPool: z.string().describe("GovPool contract address"),
|
|
140
|
+
},
|
|
141
|
+
outputSchema: {
|
|
142
|
+
govPool: z.string(),
|
|
143
|
+
descriptionURL: z.string().nullable(),
|
|
144
|
+
helpers: z.object({
|
|
145
|
+
settings: z.string(),
|
|
146
|
+
userKeeper: z.string(),
|
|
147
|
+
validators: z.string(),
|
|
148
|
+
poolRegistry: z.string(),
|
|
149
|
+
votePower: z.string(),
|
|
150
|
+
}),
|
|
151
|
+
nftContracts: z.object({
|
|
152
|
+
nftMultiplier: z.string(),
|
|
153
|
+
expertNft: z.string(),
|
|
154
|
+
dexeExpertNft: z.string(),
|
|
155
|
+
babt: z.string(),
|
|
156
|
+
}),
|
|
157
|
+
validatorsCount: z.string().nullable(),
|
|
158
|
+
},
|
|
159
|
+
}, async ({ govPool }) => {
|
|
160
|
+
if (!isAddress(govPool))
|
|
161
|
+
return errorResult(`Invalid GovPool address: ${govPool}`);
|
|
162
|
+
try {
|
|
163
|
+
const provider = rpc.requireProvider();
|
|
164
|
+
const gpIface = new Interface(GOV_POOL_ABI);
|
|
165
|
+
const vIface = new Interface(GOV_VALIDATORS_ABI);
|
|
166
|
+
// Stage 1: helpers + nft contracts + descriptionURL
|
|
167
|
+
const stage1 = [
|
|
168
|
+
{ target: govPool, iface: gpIface, method: "getHelperContracts", args: [], allowFailure: true },
|
|
169
|
+
{ target: govPool, iface: gpIface, method: "getNftContracts", args: [], allowFailure: true },
|
|
170
|
+
{ target: govPool, iface: gpIface, method: "descriptionURL", args: [], allowFailure: true },
|
|
171
|
+
];
|
|
172
|
+
const [helpersR, nftR, descR] = await multicall(provider, stage1);
|
|
173
|
+
if (!helpersR?.success || !nftR?.success) {
|
|
174
|
+
return errorResult(`GovPool ${govPool} did not return helpers or NFT contracts — is it a valid GovPool? (registry lookup first via dexe_dao_registry_lookup)`);
|
|
175
|
+
}
|
|
176
|
+
const hv = helpersR.value;
|
|
177
|
+
const nv = nftR.value;
|
|
178
|
+
const helpers = {
|
|
179
|
+
settings: hv.settings,
|
|
180
|
+
userKeeper: hv.userKeeper,
|
|
181
|
+
validators: hv.validators,
|
|
182
|
+
poolRegistry: hv.poolRegistry,
|
|
183
|
+
votePower: hv.votePower,
|
|
184
|
+
};
|
|
185
|
+
const nftContracts = {
|
|
186
|
+
nftMultiplier: nv.nftMultiplier,
|
|
187
|
+
expertNft: nv.expertNft,
|
|
188
|
+
dexeExpertNft: nv.dexeExpertNft,
|
|
189
|
+
babt: nv.babt,
|
|
190
|
+
};
|
|
191
|
+
// Stage 2: validator count on the validators contract
|
|
192
|
+
let validatorsCount = null;
|
|
193
|
+
if (helpers.validators && isAddress(helpers.validators)) {
|
|
194
|
+
const [vcR] = await multicall(provider, [
|
|
195
|
+
{
|
|
196
|
+
target: helpers.validators,
|
|
197
|
+
iface: vIface,
|
|
198
|
+
method: "validatorsCount",
|
|
199
|
+
args: [],
|
|
200
|
+
allowFailure: true,
|
|
201
|
+
},
|
|
202
|
+
]);
|
|
203
|
+
if (vcR?.success && vcR.value != null) {
|
|
204
|
+
validatorsCount = vcR.value.toString();
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
const descriptionURL = descR?.success && typeof descR.value === "string" ? descR.value : null;
|
|
208
|
+
// Use requireBook so we fail clearly if chain support is missing — even
|
|
209
|
+
// though dao_info doesn't otherwise need the registry.
|
|
210
|
+
requireBook();
|
|
211
|
+
const structured = {
|
|
212
|
+
govPool,
|
|
213
|
+
descriptionURL,
|
|
214
|
+
helpers,
|
|
215
|
+
nftContracts,
|
|
216
|
+
validatorsCount,
|
|
217
|
+
};
|
|
218
|
+
const text = `GovPool ${govPool}\n` +
|
|
219
|
+
` descriptionURL: ${descriptionURL ?? "(none)"}\n` +
|
|
220
|
+
` validators: ${validatorsCount ?? "?"}\n\n` +
|
|
221
|
+
`Helpers:\n` +
|
|
222
|
+
` settings : ${helpers.settings}\n` +
|
|
223
|
+
` userKeeper : ${helpers.userKeeper}\n` +
|
|
224
|
+
` validators : ${helpers.validators}\n` +
|
|
225
|
+
` poolRegistry : ${helpers.poolRegistry}\n` +
|
|
226
|
+
` votePower : ${helpers.votePower}\n\n` +
|
|
227
|
+
`NFT contracts:\n` +
|
|
228
|
+
` nftMultiplier : ${nftContracts.nftMultiplier}\n` +
|
|
229
|
+
` expertNft : ${nftContracts.expertNft}\n` +
|
|
230
|
+
` dexeExpertNft : ${nftContracts.dexeExpertNft}\n` +
|
|
231
|
+
` babt : ${nftContracts.babt}`;
|
|
232
|
+
return {
|
|
233
|
+
content: [{ type: "text", text }],
|
|
234
|
+
structuredContent: structured,
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
catch (err) {
|
|
238
|
+
return errorResult(`dao_info failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=dao.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dao.js","sourceRoot":"","sources":["../../src/tools/dao.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daoDeploy.d.ts","sourceRoot":"","sources":["../../src/tools/daoDeploy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAyJhD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAGhF"}
|