dexe-mcp 0.4.0 → 0.5.1

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.
@@ -1,5 +1,7 @@
1
1
  import { z } from "zod";
2
- import { isAddress } from "ethers";
2
+ import { Interface, isAddress } from "ethers";
3
+ import { RpcProvider } from "../rpc.js";
4
+ import { multicall } from "../lib/multicall.js";
3
5
  import { gqlRequest } from "../lib/subgraph.js";
4
6
  /**
5
7
  * Subgraph-backed read tools. Each tool queries one of the three DeXe
@@ -26,174 +28,174 @@ const ENV_HINT = {
26
28
  subgraphInteractionsUrl: "DEXE_SUBGRAPH_INTERACTIONS_URL",
27
29
  };
28
30
  // ---------- queries ----------
29
- const DAO_LIST_QUERY = /* GraphQL */ `
30
- query getGovPoolsList($offset: Int!, $limit: Int!, $queryString: String!) {
31
- daoPools(
32
- skip: $offset
33
- first: $limit
34
- where: { name_contains_nocase: $queryString }
35
- orderBy: votersCount
36
- orderDirection: desc
37
- ) {
38
- id
39
- name
40
- erc20Token
41
- erc721Token
42
- votersCount
43
- proposalCount
44
- totalCurrentTokenDelegated
45
- totalCurrentTokenDelegatees
46
- creationTime
47
- creationBlock
48
- }
49
- }
31
+ const DAO_LIST_QUERY = /* GraphQL */ `
32
+ query getGovPoolsList($offset: Int!, $limit: Int!, $queryString: String!) {
33
+ daoPools(
34
+ skip: $offset
35
+ first: $limit
36
+ where: { name_contains_nocase: $queryString }
37
+ orderBy: votersCount
38
+ orderDirection: desc
39
+ ) {
40
+ id
41
+ name
42
+ erc20Token
43
+ erc721Token
44
+ votersCount
45
+ proposalCount
46
+ totalCurrentTokenDelegated
47
+ totalCurrentTokenDelegatees
48
+ creationTime
49
+ creationBlock
50
+ }
51
+ }
50
52
  `;
51
- const DAO_MEMBERS_QUERY = /* GraphQL */ `
52
- query getVotersInPool($poolId: String!, $offset: Int!, $limit: Int!) {
53
- voterInPools(skip: $offset, first: $limit, where: { pool: $poolId }) {
54
- id
55
- APR
56
- currentDelegateesCount
57
- currentDelegatorsCount
58
- engagedProposalsCount
59
- joinedTimestamp
60
- receivedDelegation
61
- receivedNFTDelegation
62
- receivedTreasuryDelegation
63
- totalClaimedUSD
64
- totalLockedUSD
65
- totalPersonalVotingRewardUSD
66
- totalMicropoolVotingRewardUSD
67
- totalTreasuryVotingRewardUSD
68
- expertNft {
69
- id
70
- tokenId
71
- }
72
- voter {
73
- id
74
- totalProposalsCreated
75
- totalVotedProposals
76
- totalVotes
77
- currentVotesReceived
78
- currentVotesDelegated
79
- totalClaimedUSD
80
- }
81
- }
82
- }
53
+ const DAO_MEMBERS_QUERY = /* GraphQL */ `
54
+ query getVotersInPool($poolId: String!, $offset: Int!, $limit: Int!) {
55
+ voterInPools(skip: $offset, first: $limit, where: { pool: $poolId }) {
56
+ id
57
+ APR
58
+ currentDelegateesCount
59
+ currentDelegatorsCount
60
+ engagedProposalsCount
61
+ joinedTimestamp
62
+ receivedDelegation
63
+ receivedNFTDelegation
64
+ receivedTreasuryDelegation
65
+ totalClaimedUSD
66
+ totalLockedUSD
67
+ totalPersonalVotingRewardUSD
68
+ totalMicropoolVotingRewardUSD
69
+ totalTreasuryVotingRewardUSD
70
+ expertNft {
71
+ id
72
+ tokenId
73
+ }
74
+ voter {
75
+ id
76
+ totalProposalsCreated
77
+ totalVotedProposals
78
+ totalVotes
79
+ currentVotesReceived
80
+ currentVotesDelegated
81
+ totalClaimedUSD
82
+ }
83
+ }
84
+ }
83
85
  `;
84
- const DELEGATION_MAP_QUERY = /* GraphQL */ `
85
- query getDefaultDelegationsFromPool($offset: Int!, $limit: Int!, $delegatorIn: [String!]) {
86
- voterInPoolPairs(
87
- skip: $offset
88
- first: $limit
89
- where: { delegator_: { voter_in: $delegatorIn } }
90
- ) {
91
- id
92
- creationTimestamp
93
- delegatedAmount
94
- delegatedNfts
95
- delegatedUSD
96
- delegatedVotes
97
- delegatee {
98
- expertNft {
99
- id
100
- }
101
- voter {
102
- id
103
- }
104
- totalClaimedUSD
105
- }
106
- delegator {
107
- voter {
108
- id
109
- }
110
- pool {
111
- id
112
- erc20Token
113
- }
114
- }
115
- }
116
- }
86
+ const DELEGATION_MAP_QUERY = /* GraphQL */ `
87
+ query getDefaultDelegationsFromPool($offset: Int!, $limit: Int!, $delegatorIn: [String!]) {
88
+ voterInPoolPairs(
89
+ skip: $offset
90
+ first: $limit
91
+ where: { delegator_: { voter_in: $delegatorIn } }
92
+ ) {
93
+ id
94
+ creationTimestamp
95
+ delegatedAmount
96
+ delegatedNfts
97
+ delegatedUSD
98
+ delegatedVotes
99
+ delegatee {
100
+ expertNft {
101
+ id
102
+ }
103
+ voter {
104
+ id
105
+ }
106
+ totalClaimedUSD
107
+ }
108
+ delegator {
109
+ voter {
110
+ id
111
+ }
112
+ pool {
113
+ id
114
+ erc20Token
115
+ }
116
+ }
117
+ }
118
+ }
117
119
  `;
118
- const DELEGATION_INCOMING_QUERY = /* GraphQL */ `
119
- query getPoolIncomingDelegations($offset: Int!, $limit: Int!, $voterIn: [String!]) {
120
- voterInPoolPairs(
121
- skip: $offset
122
- first: $limit
123
- where: { delegatee_: { voter_in: $voterIn } }
124
- ) {
125
- id
126
- delegatedAmount
127
- delegatedNfts
128
- delegatedUSD
129
- delegatedVotes
130
- delegator {
131
- voter {
132
- id
133
- }
134
- }
135
- delegatee {
136
- voter {
137
- id
138
- }
139
- }
140
- }
141
- }
120
+ const DELEGATION_INCOMING_QUERY = /* GraphQL */ `
121
+ query getPoolIncomingDelegations($offset: Int!, $limit: Int!, $voterIn: [String!]) {
122
+ voterInPoolPairs(
123
+ skip: $offset
124
+ first: $limit
125
+ where: { delegatee_: { voter_in: $voterIn } }
126
+ ) {
127
+ id
128
+ delegatedAmount
129
+ delegatedNfts
130
+ delegatedUSD
131
+ delegatedVotes
132
+ delegator {
133
+ voter {
134
+ id
135
+ }
136
+ }
137
+ delegatee {
138
+ voter {
139
+ id
140
+ }
141
+ }
142
+ }
143
+ }
142
144
  `;
143
- const VALIDATORS_QUERY = /* GraphQL */ `
144
- query getDaoPoolValidators($offset: Int!, $limit: Int!, $address: String!) {
145
- validatorInPools(
146
- skip: $offset
147
- first: $limit
148
- orderBy: balance
149
- orderDirection: desc
150
- where: { pool: $address }
151
- ) {
152
- id
153
- balance
154
- validatorAddress
155
- }
156
- }
145
+ const VALIDATORS_QUERY = /* GraphQL */ `
146
+ query getDaoPoolValidators($offset: Int!, $limit: Int!, $address: String!) {
147
+ validatorInPools(
148
+ skip: $offset
149
+ first: $limit
150
+ orderBy: balance
151
+ orderDirection: desc
152
+ where: { pool: $address }
153
+ ) {
154
+ id
155
+ balance
156
+ validatorAddress
157
+ }
158
+ }
157
159
  `;
158
- const USER_ACTIVITY_QUERY = /* GraphQL */ `
159
- query getUserTransactions($offset: Int!, $limit: Int!, $address: Bytes!) {
160
- transactions(
161
- skip: $offset
162
- first: $limit
163
- where: { user: $address }
164
- orderBy: timestamp
165
- orderDirection: desc
166
- ) {
167
- id
168
- type
169
- user
170
- timestamp
171
- interactionsCount
172
- }
173
- }
160
+ const USER_ACTIVITY_QUERY = /* GraphQL */ `
161
+ query getUserTransactions($offset: Int!, $limit: Int!, $address: Bytes!) {
162
+ transactions(
163
+ skip: $offset
164
+ first: $limit
165
+ where: { user: $address }
166
+ orderBy: timestamp
167
+ orderDirection: desc
168
+ ) {
169
+ id
170
+ type
171
+ user
172
+ timestamp
173
+ interactionsCount
174
+ }
175
+ }
174
176
  `;
175
- const EXPERTS_QUERY = /* GraphQL */ `
176
- query getLocalExpertsByPool($offset: Int!, $limit: Int!, $daoAddress: Bytes!) {
177
- voterInPools(
178
- skip: $offset
179
- first: $limit
180
- where: { pool_: { id: $daoAddress }, expertNft_: { id_not: null } }
181
- ) {
182
- id
183
- receivedTreasuryDelegation
184
- receivedDelegation
185
- voter {
186
- id
187
- }
188
- expertNft {
189
- id
190
- tokenId
191
- }
192
- pool {
193
- id
194
- }
195
- }
196
- }
177
+ const EXPERTS_QUERY = /* GraphQL */ `
178
+ query getLocalExpertsByPool($offset: Int!, $limit: Int!, $daoAddress: Bytes!) {
179
+ voterInPools(
180
+ skip: $offset
181
+ first: $limit
182
+ where: { pool_: { id: $daoAddress }, expertNft_: { id_not: null } }
183
+ ) {
184
+ id
185
+ receivedTreasuryDelegation
186
+ receivedDelegation
187
+ voter {
188
+ id
189
+ }
190
+ expertNft {
191
+ id
192
+ tokenId
193
+ }
194
+ pool {
195
+ id
196
+ }
197
+ }
198
+ }
197
199
  `;
198
200
  // ---------- register ----------
199
201
  export function registerSubgraphTools(server, ctx) {
@@ -203,6 +205,7 @@ export function registerSubgraphTools(server, ctx) {
203
205
  registerValidatorList(server, ctx);
204
206
  registerUserActivity(server, ctx);
205
207
  registerDaoExperts(server, ctx);
208
+ registerOtcListSalesForDao(server, ctx);
206
209
  }
207
210
  // ---------- tools ----------
208
211
  function registerDaoList(server, ctx) {
@@ -401,4 +404,141 @@ function registerDaoExperts(server, ctx) {
401
404
  }
402
405
  });
403
406
  }
407
+ // ---------- OTC discovery ----------
408
+ const TOKEN_SALE_DISCOVERY_ABI = new Interface([
409
+ "function latestTierId() view returns (uint256)",
410
+ "function getTierViews(uint256 offset, uint256 limit) view returns (tuple(tuple(string name, string description) metadata, uint256 totalTokenProvided, uint256 saleStartTime, uint256 saleEndTime, address saleTokenAddress, uint256 claimLockDuration, address[] purchaseTokenAddresses, uint256[] exchangeRates, uint256 minAllocationPerUser, uint256 maxAllocationPerUser, tuple(uint256 cliffPeriod, uint256 unlockStep, uint256 vestingDuration, uint256 vestingPercentage) vestingSettings, tuple(uint8 participationType, bytes data)[] participationDetails)[] tiers)",
411
+ ]);
412
+ const GOV_POOL_HELPERS_DISCOVERY_ABI = new Interface([
413
+ // Some deployments expose the TokenSaleProposal address via a custom getter;
414
+ // we don't rely on it. Caller passes the address directly when known. Keep
415
+ // the placeholder ABI for forward-compat.
416
+ "function getHelperContracts() view returns (address settings, address userKeeper, address validators, address poolRegistry, address votePower)",
417
+ ]);
418
+ function registerOtcListSalesForDao(server, ctx) {
419
+ const rpc = new RpcProvider(ctx.config);
420
+ server.registerTool("dexe_otc_list_sales_for_dao", {
421
+ title: "List OTC sale tiers for a DAO",
422
+ description: "Reads `latestTierId()` then `getTierViews(0, latestTierId)` on the DAO's TokenSaleProposal helper. Returns tier list with status (`upcoming` / `active` / `ended`) computed against current block timestamp. Works on chain 56 (mainnet) and 97 (testnet) — no subgraph required. " +
423
+ "When `tokenSaleProposal` is omitted the tool returns an error pointing at the helper-discovery follow-up; supply it explicitly until per-DAO helper discovery lands.",
424
+ inputSchema: {
425
+ govPool: z.string().describe("GovPool address"),
426
+ tokenSaleProposal: z
427
+ .string()
428
+ .describe("TokenSaleProposal helper address. Look up via dexe_dao_predict_addresses or DAO deploy receipt."),
429
+ },
430
+ }, async ({ govPool, tokenSaleProposal }) => {
431
+ if (!isAddress(govPool))
432
+ return errorResult(`Invalid govPool: ${govPool}`);
433
+ if (!isAddress(tokenSaleProposal))
434
+ return errorResult(`Invalid tokenSaleProposal: ${tokenSaleProposal}`);
435
+ try {
436
+ const provider = rpc.requireProvider();
437
+ // Validate the GovPool actually exists (helper read is the cheapest
438
+ // smoke test — reverts cleanly on EOA/empty address).
439
+ const [helpersR] = await multicall(provider, [
440
+ {
441
+ target: govPool,
442
+ iface: GOV_POOL_HELPERS_DISCOVERY_ABI,
443
+ method: "getHelperContracts",
444
+ args: [],
445
+ allowFailure: true,
446
+ },
447
+ ]);
448
+ if (!helpersR?.success) {
449
+ return errorResult(`${govPool} does not look like a GovPool (getHelperContracts reverted): ${helpersR?.error ?? "unknown"}`);
450
+ }
451
+ // Read latestTierId, then page with offset=0 limit=latestTierId.
452
+ const [latestR] = await multicall(provider, [
453
+ {
454
+ target: tokenSaleProposal,
455
+ iface: TOKEN_SALE_DISCOVERY_ABI,
456
+ method: "latestTierId",
457
+ args: [],
458
+ allowFailure: true,
459
+ },
460
+ ]);
461
+ if (!latestR?.success) {
462
+ return errorResult(`${tokenSaleProposal} does not look like a TokenSaleProposal (latestTierId reverted): ${latestR?.error ?? "unknown"}`);
463
+ }
464
+ const latestTierId = Number(latestR.value);
465
+ if (latestTierId === 0) {
466
+ return {
467
+ content: [
468
+ {
469
+ type: "text",
470
+ text: `${tokenSaleProposal}: zero tiers (latestTierId=0). DAO has not opened a sale yet.`,
471
+ },
472
+ ],
473
+ structuredContent: {
474
+ govPool,
475
+ tokenSaleProposal,
476
+ tiers: [],
477
+ },
478
+ };
479
+ }
480
+ const [tiersR] = await multicall(provider, [
481
+ {
482
+ target: tokenSaleProposal,
483
+ iface: TOKEN_SALE_DISCOVERY_ABI,
484
+ method: "getTierViews",
485
+ args: [0n, BigInt(latestTierId)],
486
+ allowFailure: true,
487
+ },
488
+ ]);
489
+ if (!tiersR?.success) {
490
+ return errorResult(`getTierViews(0, ${latestTierId}) reverted: ${tiersR?.error ?? "unknown"}`);
491
+ }
492
+ const block = await provider.getBlock("latest");
493
+ const nowSec = BigInt(block?.timestamp ?? Math.floor(Date.now() / 1000));
494
+ const rawTiers = tiersR.value;
495
+ const tiers = rawTiers.map((t, i) => {
496
+ const tierId = String(i + 1);
497
+ let status;
498
+ if (nowSec < t.saleStartTime)
499
+ status = "upcoming";
500
+ else if (nowSec <= t.saleEndTime)
501
+ status = "active";
502
+ else
503
+ status = "ended";
504
+ return {
505
+ tierId,
506
+ name: t.metadata.name,
507
+ saleStartTime: t.saleStartTime.toString(),
508
+ saleEndTime: t.saleEndTime.toString(),
509
+ saleToken: t.saleTokenAddress,
510
+ purchaseTokens: t.purchaseTokenAddresses,
511
+ totalProvided: t.totalTokenProvided.toString(),
512
+ // totalSold is not exposed via getTierViews — would require an
513
+ // event/subgraph query. v1 leaves this null; caller can derive
514
+ // from getUserViews aggregation.
515
+ totalSold: null,
516
+ status,
517
+ };
518
+ });
519
+ const counts = {
520
+ upcoming: tiers.filter((t) => t.status === "upcoming").length,
521
+ active: tiers.filter((t) => t.status === "active").length,
522
+ ended: tiers.filter((t) => t.status === "ended").length,
523
+ };
524
+ return {
525
+ content: [
526
+ {
527
+ type: "text",
528
+ text: `${tokenSaleProposal}: ${tiers.length} tier(s) — ${counts.active} active, ${counts.upcoming} upcoming, ${counts.ended} ended (block ts ${nowSec}).`,
529
+ },
530
+ ],
531
+ structuredContent: {
532
+ govPool,
533
+ tokenSaleProposal,
534
+ tiers,
535
+ counts,
536
+ },
537
+ };
538
+ }
539
+ catch (e) {
540
+ return errorResult(`otc_list_sales_for_dao failed: ${e instanceof Error ? e.message : String(e)}`);
541
+ }
542
+ });
543
+ }
404
544
  //# sourceMappingURL=subgraph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../src/tools/subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../src/tools/subgraph.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dexe-mcp",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "description": "MCP server for the DeXe Protocol — full DAO operations coverage: deploy DAOs, build every proposal type, IPFS metadata, stake/vote/delegate/execute/claim calldata. Plus dev tooling (build/test/introspect/decode).",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -49,6 +49,7 @@
49
49
  "start": "node dist/index.js",
50
50
  "test": "vitest run",
51
51
  "test:watch": "vitest",
52
+ "test:compat": "node tests/compat/diff-otc.mjs",
52
53
  "typecheck": "tsc --noEmit",
53
54
  "prepublishOnly": "npm run typecheck && npm run build",
54
55
  "swarm:preflight": "tsx scripts/swarm/preflight.ts",