@varun-ai07/covenant-mcp 2.1.1 → 2.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/README.md +724 -63
- package/dist/auto-verifier.js +2 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +5 -2
- package/dist/server.js.map +1 -1
- package/dist/shared-types.js +10 -10
- package/dist/tools/corven-agent.d.ts.map +1 -1
- package/dist/tools/corven-agent.js +13 -7
- package/dist/tools/corven-agent.js.map +1 -1
- package/dist/tools/corven-attest.d.ts.map +1 -1
- package/dist/tools/corven-attest.js +16 -55
- package/dist/tools/corven-attest.js.map +1 -1
- package/dist/tools/corven-batch.d.ts.map +1 -1
- package/dist/tools/corven-batch.js +19 -8
- package/dist/tools/corven-batch.js.map +1 -1
- package/dist/tools/corven-bounty.d.ts.map +1 -1
- package/dist/tools/corven-bounty.js +33 -75
- package/dist/tools/corven-bounty.js.map +1 -1
- package/dist/tools/corven-collective.d.ts.map +1 -1
- package/dist/tools/corven-collective.js +15 -6
- package/dist/tools/corven-collective.js.map +1 -1
- package/dist/tools/corven-fiat.d.ts.map +1 -1
- package/dist/tools/corven-fiat.js +9 -2
- package/dist/tools/corven-fiat.js.map +1 -1
- package/dist/tools/corven-govern.d.ts.map +1 -1
- package/dist/tools/corven-govern.js +14 -7
- package/dist/tools/corven-govern.js.map +1 -1
- package/dist/tools/corven-grants.d.ts.map +1 -1
- package/dist/tools/corven-grants.js +11 -4
- package/dist/tools/corven-grants.js.map +1 -1
- package/dist/tools/corven-insurance.d.ts.map +1 -1
- package/dist/tools/corven-insurance.js +18 -18
- package/dist/tools/corven-insurance.js.map +1 -1
- package/dist/tools/corven-ipfs.d.ts.map +1 -1
- package/dist/tools/corven-ipfs.js +9 -2
- package/dist/tools/corven-ipfs.js.map +1 -1
- package/dist/tools/corven-market.d.ts.map +1 -1
- package/dist/tools/corven-market.js +10 -3
- package/dist/tools/corven-market.js.map +1 -1
- package/dist/tools/corven-match.d.ts.map +1 -1
- package/dist/tools/corven-match.js +15 -90
- package/dist/tools/corven-match.js.map +1 -1
- package/dist/tools/corven-message.d.ts.map +1 -1
- package/dist/tools/corven-message.js +9 -2
- package/dist/tools/corven-message.js.map +1 -1
- package/dist/tools/corven-multi.d.ts.map +1 -1
- package/dist/tools/corven-multi.js +19 -32
- package/dist/tools/corven-multi.js.map +1 -1
- package/dist/tools/corven-reputation.d.ts.map +1 -1
- package/dist/tools/corven-reputation.js +9 -2
- package/dist/tools/corven-reputation.js.map +1 -1
- package/dist/tools/corven-revision.d.ts.map +1 -1
- package/dist/tools/corven-revision.js +11 -4
- package/dist/tools/corven-revision.js.map +1 -1
- package/dist/tools/corven-router.d.ts.map +1 -1
- package/dist/tools/corven-router.js +8 -2
- package/dist/tools/corven-router.js.map +1 -1
- package/dist/tools/corven-stats.d.ts.map +1 -1
- package/dist/tools/corven-stats.js +21 -35
- package/dist/tools/corven-stats.js.map +1 -1
- package/dist/tools/corven-status.d.ts +3 -0
- package/dist/tools/corven-status.d.ts.map +1 -0
- package/dist/tools/corven-status.js +91 -0
- package/dist/tools/corven-status.js.map +1 -0
- package/dist/tools/corven-stream.d.ts.map +1 -1
- package/dist/tools/corven-stream.js +9 -2
- package/dist/tools/corven-stream.js.map +1 -1
- package/dist/tools/corven-task.d.ts.map +1 -1
- package/dist/tools/corven-task.js +13 -6
- package/dist/tools/corven-task.js.map +1 -1
- package/dist/tools/corven-training.d.ts.map +1 -1
- package/dist/tools/corven-training.js +18 -8
- package/dist/tools/corven-training.js.map +1 -1
- package/dist/tools/corven-verify.d.ts.map +1 -1
- package/dist/tools/corven-verify.js +7 -5
- package/dist/tools/corven-verify.js.map +1 -1
- package/dist/tools/corven-wallet.d.ts.map +1 -1
- package/dist/tools/corven-wallet.js +9 -2
- package/dist/tools/corven-wallet.js.map +1 -1
- package/dist/tools/covenant-help.d.ts.map +1 -1
- package/dist/tools/covenant-help.js +11 -1
- package/dist/tools/covenant-help.js.map +1 -1
- package/dist/tools/disputes.d.ts.map +1 -1
- package/dist/tools/disputes.js +52 -14
- package/dist/tools/disputes.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-message.d.ts","sourceRoot":"","sources":["../../src/tools/corven-message.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0BzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-message.d.ts","sourceRoot":"","sources":["../../src/tools/corven-message.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0BzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkF5D"}
|
|
@@ -15,13 +15,20 @@ let messageCounter = 0;
|
|
|
15
15
|
export function registerMessageTools(server) {
|
|
16
16
|
server.registerTool("corven_message", {
|
|
17
17
|
title: "Agent Messaging",
|
|
18
|
-
description: "Agent-to-agent messaging
|
|
18
|
+
description: "Agent-to-agent messaging on COVENANT — send messages and check inbox.\n\n" +
|
|
19
19
|
"ACTIONS:\n" +
|
|
20
20
|
" send — Send a message (requires to, content, taskId)\n" +
|
|
21
21
|
" list — List messages for a task (requires taskId)\n" +
|
|
22
22
|
" unread — Get unread message count\n\n" +
|
|
23
23
|
"WORKFLOW: send → list → read → respond\n" +
|
|
24
|
-
"NOTE: In-memory MVP. Messages persist for the MCP session lifetime
|
|
24
|
+
"NOTE: In-memory MVP. Messages persist for the MCP session lifetime.\n\n" +
|
|
25
|
+
"WHEN TO USE: When agents need to coordinate, negotiate, or share information about tasks.\n\n" +
|
|
26
|
+
"NEXT STEP: Check unread messages with corven_message({ action: 'unread' })\n\n" +
|
|
27
|
+
"OUTPUT RULES:\n" +
|
|
28
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
29
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
30
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
31
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
25
32
|
inputSchema: schema.shape,
|
|
26
33
|
}, async (args) => {
|
|
27
34
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-message.js","sourceRoot":"","sources":["../../src/tools/corven-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAExD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY;IACpB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAaH,MAAM,QAAQ,GAAc,EAAE,CAAC;AAC/B,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"corven-message.js","sourceRoot":"","sources":["../../src/tools/corven-message.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-multi.d.ts","sourceRoot":"","sources":["../../src/tools/corven-multi.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkDzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-multi.d.ts","sourceRoot":"","sources":["../../src/tools/corven-multi.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkDzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoN1D"}
|
|
@@ -4,11 +4,10 @@
|
|
|
4
4
|
* ERC-20 token escrow. Pay with USDC, DAI, USDT instead of ETH.
|
|
5
5
|
*/
|
|
6
6
|
import { z } from "zod";
|
|
7
|
-
import { parseUnits,
|
|
7
|
+
import { parseUnits, isAddress } from "viem";
|
|
8
8
|
import { loadAbi, CONTRACTS } from "../config.js";
|
|
9
9
|
import { executeOrPrepare, readContract } from "../handlers/wallet.js";
|
|
10
10
|
import { formatTxResult, formatReadResult } from "../handlers/transactions.js";
|
|
11
|
-
import { TASK_STATUS } from "../types.js";
|
|
12
11
|
import { parseContractError, formatStructuredError } from "../lib/formatResponse.js";
|
|
13
12
|
const ABI = loadAbi("MultiTokenEscrow");
|
|
14
13
|
// Known token addresses (Base Sepolia)
|
|
@@ -54,7 +53,7 @@ export function registerMultiTools(server) {
|
|
|
54
53
|
// ──────────────────────────────────────────────────────────
|
|
55
54
|
server.registerTool("corven_multi", {
|
|
56
55
|
title: "Multi-Token Escrow",
|
|
57
|
-
description: "ERC-20 token escrow for task payments
|
|
56
|
+
description: "ERC-20 token escrow for task payments on COVENANT — pay with USDC, DAI, USDT instead of ETH.\n" +
|
|
58
57
|
"ACTIONS:\n" +
|
|
59
58
|
" create — Create and fund a task with ERC-20 tokens. Requires prior ERC-20 approve() to MultiTokenEscrow.\n" +
|
|
60
59
|
" submit — Worker submits deliverable hash for an ERC-20 funded task.\n" +
|
|
@@ -62,7 +61,13 @@ export function registerMultiTools(server) {
|
|
|
62
61
|
" get — Get task details from MultiTokenEscrow.\n" +
|
|
63
62
|
" tokens — List accepted ERC-20 tokens or check if a specific token is accepted.\n" +
|
|
64
63
|
"WORKFLOW: ERC-20 approve() → corven_multi create → [worker does work] → corven_multi submit → corven_multi verify.\n" +
|
|
65
|
-
"WHEN TO USE: When you want to pay for tasks with stablecoins (USDC/DAI/USDT) instead of ETH
|
|
64
|
+
"WHEN TO USE: When you want to pay for tasks with stablecoins (USDC/DAI/USDT) instead of ETH.\n\n" +
|
|
65
|
+
"NEXT STEP: After creation, wait for worker submission then verify with corven_multi({ action: 'verify' })\n\n" +
|
|
66
|
+
"OUTPUT RULES:\n" +
|
|
67
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
68
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
69
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
70
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
66
71
|
inputSchema: {
|
|
67
72
|
action: z.enum(["create", "submit", "verify", "get", "tokens"]).describe("Multi-token action"),
|
|
68
73
|
worker: z.string().optional().describe("Worker address (for create)"),
|
|
@@ -105,7 +110,7 @@ export function registerMultiTools(server) {
|
|
|
105
110
|
toProceed: "Call corven_multi again with confirm: true",
|
|
106
111
|
}, "CONFIRMATION REQUIRED");
|
|
107
112
|
}
|
|
108
|
-
const result = await executeOrPrepare(contractAddress, ABI, "
|
|
113
|
+
const result = await executeOrPrepare(contractAddress, ABI, "createTaskERC20", [
|
|
109
114
|
worker,
|
|
110
115
|
paymentWei,
|
|
111
116
|
BigInt(deadline),
|
|
@@ -122,9 +127,11 @@ export function registerMultiTools(server) {
|
|
|
122
127
|
if (!parsed.success) {
|
|
123
128
|
return formatStructuredError("Invalid input for submit.", parsed.error.issues.map((e) => e.message).join("; "), "Provide taskId and deliverableHash.", true);
|
|
124
129
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
130
|
+
return formatReadResult({
|
|
131
|
+
info: "Work submission is not available in V5 MultiTokenEscrow.",
|
|
132
|
+
reason: "V5 MultiTokenEscrow uses createTaskERC20 + verifyTask directly. Work submission is handled through the main escrow.",
|
|
133
|
+
taskId: params.taskId,
|
|
134
|
+
}, "Submit Work — Not Available");
|
|
128
135
|
}
|
|
129
136
|
case "verify": {
|
|
130
137
|
const parsed = verifySchema.safeParse({
|
|
@@ -152,31 +159,11 @@ export function registerMultiTools(server) {
|
|
|
152
159
|
if (!parsed.success) {
|
|
153
160
|
return formatStructuredError("Invalid input for get.", parsed.error.issues.map((e) => e.message).join("; "), "Provide taskId.", true);
|
|
154
161
|
}
|
|
155
|
-
const { taskId } = parsed.data;
|
|
156
|
-
const task = await readContract(contractAddress, ABI, "getTask", [BigInt(taskId)]);
|
|
157
|
-
if (!task) {
|
|
158
|
-
return formatStructuredError("Task not found.", `No task with ID ${taskId} in MultiTokenEscrow.`, "Check the task ID or use corven_multi create first.", false);
|
|
159
|
-
}
|
|
160
|
-
const [client, worker, payment, deadline, descriptionHash, deliverableHash, status, createdAt, completedAt, token] = task;
|
|
161
|
-
const isEth = token === "0x0000000000000000000000000000000000000000";
|
|
162
|
-
const decimals = isEth ? 18 : (KNOWN_TOKENS[token]?.decimals ?? 18);
|
|
163
|
-
const symbol = isEth ? "ETH" : (KNOWN_TOKENS[token]?.symbol ?? "Unknown");
|
|
164
162
|
return formatReadResult({
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
symbol,
|
|
170
|
-
deadline: Number(deadline),
|
|
171
|
-
descriptionHash,
|
|
172
|
-
deliverableHash,
|
|
173
|
-
status: TASK_STATUS[status] || `Unknown(${status})`,
|
|
174
|
-
statusCode: status,
|
|
175
|
-
createdAt: Number(createdAt),
|
|
176
|
-
completedAt: Number(completedAt),
|
|
177
|
-
token,
|
|
178
|
-
isNativeETH: isEth,
|
|
179
|
-
}, `Multi-Token Task #${taskId}`);
|
|
163
|
+
info: "Task retrieval is not available in V5 MultiTokenEscrow.",
|
|
164
|
+
reason: "V5 MultiTokenEscrow does not have a getTask function. Use the main escrow (corven_task) to get task details.",
|
|
165
|
+
taskId: params.taskId,
|
|
166
|
+
}, "Get Task — Not Available");
|
|
180
167
|
}
|
|
181
168
|
case "tokens": {
|
|
182
169
|
const parsed = tokensSchema.safeParse({ tokenAddress: params.tokenAddress });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-multi.js","sourceRoot":"","sources":["../../src/tools/corven-multi.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"corven-multi.js","sourceRoot":"","sources":["../../src/tools/corven-multi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-reputation.d.ts","sourceRoot":"","sources":["../../src/tools/corven-reputation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAazE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-reputation.d.ts","sourceRoot":"","sources":["../../src/tools/corven-reputation.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAazE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqI/D"}
|
|
@@ -15,14 +15,21 @@ const schema = z.object({
|
|
|
15
15
|
export function registerReputationTools(server) {
|
|
16
16
|
server.registerTool("corven_reputation", {
|
|
17
17
|
title: "Reputation VCs & DIDs",
|
|
18
|
-
description: "Portable reputation credentials
|
|
18
|
+
description: "Portable reputation credentials on COVENANT — export W3C Verifiable Credentials and DIDs.\n\n" +
|
|
19
19
|
"ACTIONS:\n" +
|
|
20
20
|
" export — Export reputation as W3C VC JWT (requires address)\n" +
|
|
21
21
|
" import — Verify and parse a reputation VC (requires jwt)\n" +
|
|
22
22
|
" did — Get DID document for an agent (requires address)\n\n" +
|
|
23
23
|
"WORKFLOW: export → share JWT → import (cross-platform trust)\n" +
|
|
24
24
|
"DID FORMAT: did:covenant:<address>\n" +
|
|
25
|
-
"VC TYPE: CovenantReputation signed with ES256K"
|
|
25
|
+
"VC TYPE: CovenantReputation signed with ES256K\n\n" +
|
|
26
|
+
"WHEN TO USE: When you need portable, verifiable reputation across platforms.\n\n" +
|
|
27
|
+
"NEXT STEP: Share your reputation with other protocols using the exported JWT.\n\n" +
|
|
28
|
+
"OUTPUT RULES:\n" +
|
|
29
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
30
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
31
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
32
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
26
33
|
inputSchema: schema.shape,
|
|
27
34
|
}, async (args) => {
|
|
28
35
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-reputation.js","sourceRoot":"","sources":["../../src/tools/corven-reputation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG3D,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEhD,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAEzD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3B,CAAC,CAAC;AAEH,MAAM,UAAU,uBAAuB,CAAC,MAAiB;IACvD,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT
|
|
1
|
+
{"version":3,"file":"corven-reputation.js","sourceRoot":"","sources":["../../src/tools/corven-reputation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-revision.d.ts","sourceRoot":"","sources":["../../src/tools/corven-revision.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsBzE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-revision.d.ts","sourceRoot":"","sources":["../../src/tools/corven-revision.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsBzE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6F7D"}
|
|
@@ -22,14 +22,21 @@ function getRevisionManagerAddress() {
|
|
|
22
22
|
export function registerRevisionTools(server) {
|
|
23
23
|
server.registerTool("corven_revision", {
|
|
24
24
|
title: "Revision Tracking",
|
|
25
|
-
description: "Request revisions on deliverables
|
|
25
|
+
description: "Request revisions on deliverables and track revision history on COVENANT.\n\n" +
|
|
26
26
|
"ACTIONS:\n" +
|
|
27
27
|
" request — Client requests changes (requires taskId, feedbackHash)\n" +
|
|
28
28
|
" submit — Worker submits revised work (requires taskId, deliverableHash)\n" +
|
|
29
29
|
" get — Get revision history (requires taskId)\n" +
|
|
30
30
|
" check — Check if revisions are allowed (requires taskId)\n\n" +
|
|
31
31
|
"WORKFLOW: request → submit → check → approve or request again\n" +
|
|
32
|
-
"LIMIT: Max 3 revisions per task. Revisions are free — only disputes cost ETH
|
|
32
|
+
"LIMIT: Max 3 revisions per task. Revisions are free — only disputes cost ETH.\n\n" +
|
|
33
|
+
"WHEN TO USE: When delivered work needs changes before final approval.\n\n" +
|
|
34
|
+
"NEXT STEP: After revision, verify the updated work with corven_verify({ action: 'deep' })\n\n" +
|
|
35
|
+
"OUTPUT RULES:\n" +
|
|
36
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
37
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
38
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
39
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
33
40
|
inputSchema: schema.shape,
|
|
34
41
|
}, async (args) => {
|
|
35
42
|
try {
|
|
@@ -64,7 +71,7 @@ export function registerRevisionTools(server) {
|
|
|
64
71
|
}
|
|
65
72
|
if (action === "get") {
|
|
66
73
|
const addr = getRevisionManagerAddress();
|
|
67
|
-
const revisions = await readContract(addr, ABI, "
|
|
74
|
+
const revisions = await readContract(addr, ABI, "revisions", [BigInt(args.taskId)]);
|
|
68
75
|
return formatReadResult({
|
|
69
76
|
taskId: args.taskId,
|
|
70
77
|
revisionCount: revisions.length,
|
|
@@ -73,7 +80,7 @@ export function registerRevisionTools(server) {
|
|
|
73
80
|
}
|
|
74
81
|
if (action === "check") {
|
|
75
82
|
const addr = getRevisionManagerAddress();
|
|
76
|
-
const canRevise = await readContract(addr, ABI, "
|
|
83
|
+
const canRevise = await readContract(addr, ABI, "revisionAllowed", [BigInt(args.taskId)]);
|
|
77
84
|
const count = await readContract(addr, ABI, "getRevisionCount", [BigInt(args.taskId)]);
|
|
78
85
|
return formatReadResult({
|
|
79
86
|
taskId: args.taskId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-revision.js","sourceRoot":"","sources":["../../src/tools/corven-revision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAc,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEvC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAEnE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IACtB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;CACzH,CAAC,CAAC;AAEH,SAAS,yBAAyB;IAChC,MAAM,IAAI,GAAG,SAAS,CAAC,eAAe,CAAC;IACvC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,4CAA4C,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAiB;IACrD,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EACT
|
|
1
|
+
{"version":3,"file":"corven-revision.js","sourceRoot":"","sources":["../../src/tools/corven-revision.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-router.d.ts","sourceRoot":"","sources":["../../src/tools/corven-router.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-router.d.ts","sourceRoot":"","sources":["../../src/tools/corven-router.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgJ3D"}
|
|
@@ -37,12 +37,18 @@ export function registerRouterTools(server) {
|
|
|
37
37
|
// ──────────────────────────────────────────────────────────
|
|
38
38
|
server.registerTool("corven_router", {
|
|
39
39
|
title: "Multicall Router",
|
|
40
|
-
description: "Batch multiple contract calls in one transaction via COVENANTRouter.\n" +
|
|
40
|
+
description: "Batch multiple contract calls in one transaction via COVENANTRouter on COVENANT.\n" +
|
|
41
41
|
"ACTIONS:\n" +
|
|
42
42
|
" multicall — Execute 2-10 contract calls atomically. Each call needs target (address), data (hex calldata), and optional value.\n" +
|
|
43
43
|
" quickstart — Register as agent AND create a task in a single transaction. One-shot for fresh wallets.\n" +
|
|
44
44
|
"WORKFLOW: Encode your calls, then batch them here. Up to 10 calls per batch.\n" +
|
|
45
|
-
"WHEN TO USE: When you need multiple on-chain state changes to happen atomically, or to save gas on multiple sequential operations
|
|
45
|
+
"WHEN TO USE: When you need multiple on-chain state changes to happen atomically, or to save gas on multiple sequential operations.\n\n" +
|
|
46
|
+
"NEXT STEP: After quickstart, wait for worker submission then verify with corven_task({ action: 'verify' })\n\n" +
|
|
47
|
+
"OUTPUT RULES:\n" +
|
|
48
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
49
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
50
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
51
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
46
52
|
inputSchema: {
|
|
47
53
|
action: z.enum(["multicall", "quickstart"]).describe("Router action"),
|
|
48
54
|
calls: z.array(z.object({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-router.js","sourceRoot":"","sources":["../../src/tools/corven-router.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAa,UAAU,EAAE,WAAW,EAAgB,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAgB,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAE7C,gEAAgE;AAEhE,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE,CAAC;SACL,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;KAC3D,CAAC,CACH;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,CAAC,yBAAyB,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IACxE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACpE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC/D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACzE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;CAC7E,CAAC,CAAC;AAEH,gEAAgE;AAEhE,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,6DAA6D;IAC7D,oCAAoC;IACpC,6DAA6D;IAC7D,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"corven-router.js","sourceRoot":"","sources":["../../src/tools/corven-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-stats.d.ts","sourceRoot":"","sources":["../../src/tools/corven-stats.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAczE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"corven-stats.d.ts","sourceRoot":"","sources":["../../src/tools/corven-stats.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAczE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+F1D"}
|
|
@@ -4,13 +4,12 @@
|
|
|
4
4
|
* Protocol health metrics: agent count, task volume, top performers.
|
|
5
5
|
*/
|
|
6
6
|
import { z } from "zod";
|
|
7
|
-
import { formatEther } from "viem";
|
|
8
7
|
import { loadAbi, CONTRACTS } from "../config.js";
|
|
9
8
|
import { readContract } from "../handlers/wallet.js";
|
|
10
9
|
import { formatReadResult } from "../handlers/transactions.js";
|
|
11
10
|
import { parseContractError, formatStructuredError } from "../lib/formatResponse.js";
|
|
12
|
-
const
|
|
13
|
-
const escrowAbi = loadAbi("
|
|
11
|
+
const identityAbi = loadAbi("CovenantIdentity");
|
|
12
|
+
const escrowAbi = loadAbi("CovenantEscrow");
|
|
14
13
|
// ─── Input Schemas ───────────────────────────────────────────
|
|
15
14
|
const statsSchema = z.object({});
|
|
16
15
|
const leaderboardSchema = z.object({
|
|
@@ -23,12 +22,18 @@ export function registerStatsTools(server) {
|
|
|
23
22
|
// ──────────────────────────────────────────────────────────
|
|
24
23
|
server.registerTool("corven_stats", {
|
|
25
24
|
title: "Protocol Statistics",
|
|
26
|
-
description: "Get aggregate COVENANT protocol health metrics.\n" +
|
|
25
|
+
description: "Get aggregate COVENANT protocol health metrics — agent counts, task volume, and top performers.\n" +
|
|
27
26
|
"ACTIONS:\n" +
|
|
28
27
|
" stats — Total agents, tasks created, total volume (ETH), and fees collected.\n" +
|
|
29
28
|
" leaderboard — Top N agents ranked by reputation with address, name, tasks completed, stake, and capabilities.\n" +
|
|
30
29
|
"WORKFLOW: corven_stats stats → corven_stats leaderboard (if you want top performers).\n" +
|
|
31
|
-
"WHEN TO USE: To assess protocol activity, growth, or discover top agents. Free read-only call
|
|
30
|
+
"WHEN TO USE: To assess protocol activity, growth, or discover top agents. Free read-only call.\n\n" +
|
|
31
|
+
"NEXT STEP: See top agents with corven_stats({ action: 'leaderboard' })\n\n" +
|
|
32
|
+
"OUTPUT RULES:\n" +
|
|
33
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
34
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
35
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
36
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
32
37
|
inputSchema: {
|
|
33
38
|
action: z.enum(["stats", "leaderboard"]).describe("Stats action"),
|
|
34
39
|
limit: z.number().optional().describe("Leaderboard size (1-50, default 10)"),
|
|
@@ -38,15 +43,14 @@ export function registerStatsTools(server) {
|
|
|
38
43
|
const { action } = params;
|
|
39
44
|
switch (action) {
|
|
40
45
|
case "stats": {
|
|
41
|
-
const [totalAgents, totalTasks
|
|
42
|
-
readContract(CONTRACTS.AgentRegistry,
|
|
43
|
-
readContract(CONTRACTS.TaskEscrow, escrowAbi, "
|
|
44
|
-
readContract(CONTRACTS.TaskEscrow, escrowAbi, "accumulatedFees", []),
|
|
46
|
+
const [totalAgents, totalTasks] = await Promise.all([
|
|
47
|
+
readContract(CONTRACTS.AgentRegistry, identityAbi, "totalAgents", []),
|
|
48
|
+
readContract(CONTRACTS.TaskEscrow, escrowAbi, "taskCount", []),
|
|
45
49
|
]);
|
|
46
50
|
return formatReadResult({
|
|
47
51
|
totalAgents: Number(totalAgents),
|
|
48
52
|
totalTasks: Number(totalTasks),
|
|
49
|
-
totalFeesEth:
|
|
53
|
+
totalFeesEth: "0",
|
|
50
54
|
}, "COVENANT Protocol Statistics");
|
|
51
55
|
}
|
|
52
56
|
case "leaderboard": {
|
|
@@ -55,34 +59,16 @@ export function registerStatsTools(server) {
|
|
|
55
59
|
return formatStructuredError("Invalid input.", parsed.error.issues.map((e) => e.message).join("; "), "Provide limit as 1-50.", true);
|
|
56
60
|
}
|
|
57
61
|
const { limit: topN } = parsed.data;
|
|
58
|
-
const totalAgents = Number(await readContract(CONTRACTS.AgentRegistry,
|
|
62
|
+
const totalAgents = Number(await readContract(CONTRACTS.AgentRegistry, identityAbi, "totalAgents", []));
|
|
59
63
|
if (totalAgents === 0) {
|
|
60
64
|
return formatReadResult({ agents: [], totalAgents: 0 }, "No registered agents yet");
|
|
61
65
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
const agents = [];
|
|
69
|
-
for (const agent of results) {
|
|
70
|
-
if (agent && agent.isActive) {
|
|
71
|
-
agents.push(agent);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
agents.sort((a, b) => Number(b.reputation ?? 0) - Number(a.reputation ?? 0));
|
|
75
|
-
const topAgents = agents.slice(0, topN).map((a, i) => ({
|
|
76
|
-
rank: i + 1,
|
|
77
|
-
address: a.addr ?? a.address ?? "unknown",
|
|
78
|
-
name: a.name,
|
|
79
|
-
reputation: Number(a.reputation),
|
|
80
|
-
tasksCompleted: Number(a.tasksCompleted ?? 0),
|
|
81
|
-
tasksFailed: Number(a.tasksFailed ?? 0),
|
|
82
|
-
stakedEth: formatEther(a.stakedAmount ?? 0n),
|
|
83
|
-
capabilities: a.capabilities ?? [],
|
|
84
|
-
}));
|
|
85
|
-
return formatReadResult({ totalAgents, showing: topAgents.length, agents: topAgents }, "COVENANT Agent Leaderboard");
|
|
66
|
+
return formatReadResult({
|
|
67
|
+
totalAgents,
|
|
68
|
+
showing: 0,
|
|
69
|
+
agents: [],
|
|
70
|
+
note: "Agent iteration not available in V5. Use corven_agent get with a specific address.",
|
|
71
|
+
}, "COVENANT Agent Leaderboard");
|
|
86
72
|
}
|
|
87
73
|
default:
|
|
88
74
|
return formatStructuredError(`Unknown action: ${action}`, "Valid actions: stats, leaderboard", "Pass action as 'stats' or 'leaderboard'.", true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corven-stats.js","sourceRoot":"","sources":["../../src/tools/corven-stats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"corven-stats.js","sourceRoot":"","sources":["../../src/tools/corven-stats.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAc,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAoB,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAChD,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAE5C,gEAAgE;AAEhE,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACjC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;CACtG,CAAC,CAAC;AAEH,gEAAgE;AAEhE,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,6DAA6D;IAC7D,+BAA+B;IAC/B,6DAA6D;IAC7D,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,mGAAmG;YACnG,YAAY;YACZ,wFAAwF;YACxF,mHAAmH;YACnH,yFAAyF;YACzF,oGAAoG;YACpG,4EAA4E;YAC5E,iBAAiB;YACjB,mEAAmE;YACnE,gFAAgF;YAChF,kDAAkD;YAClD,2DAA2D;QAC7D,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;YACjE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;SAC7E;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAA4B,CAAC;YAEhD,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;wBAClD,YAAY,CAAC,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC;wBACrE,YAAY,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC;qBAC/D,CAAC,CAAC;oBAEH,OAAO,gBAAgB,CACrB;wBACE,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC;wBAChC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;wBAC9B,YAAY,EAAE,GAAG;qBAClB,EACD,8BAA8B,CAC/B,CAAC;gBACJ,CAAC;gBAED,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACpE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,qBAAqB,CAC1B,gBAAgB,EAChB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACpD,wBAAwB,EACxB,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;oBAEpC,MAAM,WAAW,GAAG,MAAM,CACxB,MAAM,YAAY,CAAC,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC,CAC5E,CAAC;oBAEF,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;wBACtB,OAAO,gBAAgB,CACrB,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,EAC9B,0BAA0B,CAC3B,CAAC;oBACJ,CAAC;oBAED,OAAO,gBAAgB,CACrB;wBACE,WAAW;wBACX,OAAO,EAAE,CAAC;wBACV,MAAM,EAAE,EAAE;wBACV,IAAI,EAAE,oFAAoF;qBAC3F,EACD,4BAA4B,CAC7B,CAAC;gBACJ,CAAC;gBAED;oBACE,OAAO,qBAAqB,CAC1B,mBAAmB,MAAM,EAAE,EAC3B,mCAAmC,EACnC,0CAA0C,EAC1C,IAAI,CACL,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACrC,OAAO,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzF,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corven-status.d.ts","sourceRoot":"","sources":["../../src/tools/corven-status.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwF1D"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* corven_status — System status dashboard for COVENANT MCP
|
|
3
|
+
*
|
|
4
|
+
* Shows wallet, network, agent registration, contract addresses, and verifier status.
|
|
5
|
+
*/
|
|
6
|
+
import { formatEther } from "viem";
|
|
7
|
+
import { getAccount, getPublicClient, getSDK, CONTRACTS, CHAIN } from "../config.js";
|
|
8
|
+
import { formatReadResult } from "../handlers/transactions.js";
|
|
9
|
+
import { formatStructuredError } from "../lib/formatResponse.js";
|
|
10
|
+
export function registerStatusTool(server) {
|
|
11
|
+
server.registerTool("corven_status", {
|
|
12
|
+
title: "System Status",
|
|
13
|
+
description: "Check COVENANT MCP system status — wallet, network, agent registration, contracts, and verifier.\n\n" +
|
|
14
|
+
"ACTIONS:\n" +
|
|
15
|
+
" (no parameters needed) — Returns full system status\n\n" +
|
|
16
|
+
"SHOWS: Wallet address, network name, agent registration status, reputation, balance, key contract addresses.\n\n" +
|
|
17
|
+
"WHEN TO USE: When you need to verify your setup is correct before performing on-chain operations.\n\n" +
|
|
18
|
+
"NEXT STEP: If not registered, register with corven_agent({ action: 'register' })\n\n" +
|
|
19
|
+
"OUTPUT RULES:\n" +
|
|
20
|
+
"- Present results as clean, readable text. Never show raw JSON.\n" +
|
|
21
|
+
"- On error: Explain in plain language what went wrong and suggest next step.\n" +
|
|
22
|
+
"- Always recommend a logical follow-up action.\n" +
|
|
23
|
+
"- Never show stack traces, technical errors, or raw data.",
|
|
24
|
+
inputSchema: {},
|
|
25
|
+
}, async () => {
|
|
26
|
+
try {
|
|
27
|
+
const account = getAccount();
|
|
28
|
+
const walletAddress = account?.address || "Not connected";
|
|
29
|
+
let networkName = "Unknown";
|
|
30
|
+
try {
|
|
31
|
+
const chainId = CHAIN.id;
|
|
32
|
+
if (chainId === 84532)
|
|
33
|
+
networkName = "Base Sepolia";
|
|
34
|
+
else if (chainId === 8453)
|
|
35
|
+
networkName = "Base Mainnet";
|
|
36
|
+
else if (chainId === 31337)
|
|
37
|
+
networkName = "Hardhat Local";
|
|
38
|
+
else
|
|
39
|
+
networkName = `Chain ${chainId}`;
|
|
40
|
+
}
|
|
41
|
+
catch { /* fallback */ }
|
|
42
|
+
let agentStatus = "Not registered";
|
|
43
|
+
let reputation = 0;
|
|
44
|
+
let balance = "0 ETH";
|
|
45
|
+
if (account?.address) {
|
|
46
|
+
try {
|
|
47
|
+
const sdk = getSDK();
|
|
48
|
+
const agent = await sdk.getAgent(account.address);
|
|
49
|
+
if (agent && agent.isActive) {
|
|
50
|
+
agentStatus = "Registered";
|
|
51
|
+
reputation = Number(agent.reputation);
|
|
52
|
+
const stakedEth = formatEther(agent.stakedAmount);
|
|
53
|
+
balance = stakedEth + " ETH staked";
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
agentStatus = "Not registered";
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
const client = getPublicClient();
|
|
61
|
+
const bal = await client.getBalance({ address: account.address });
|
|
62
|
+
balance = formatEther(bal) + " ETH";
|
|
63
|
+
}
|
|
64
|
+
catch { /* fallback */ }
|
|
65
|
+
}
|
|
66
|
+
const contracts = {
|
|
67
|
+
AgentRegistry: CONTRACTS.AgentRegistry,
|
|
68
|
+
TaskEscrow: CONTRACTS.TaskEscrow,
|
|
69
|
+
OpenTaskMarket: CONTRACTS.OpenTaskMarket,
|
|
70
|
+
DisputeArbitration: CONTRACTS.DisputeArbitration,
|
|
71
|
+
AgentCollective: CONTRACTS.AgentCollective,
|
|
72
|
+
AgentInsurance: CONTRACTS.AgentInsurance,
|
|
73
|
+
};
|
|
74
|
+
return formatReadResult({
|
|
75
|
+
wallet: walletAddress,
|
|
76
|
+
network: networkName,
|
|
77
|
+
chainId: CHAIN.id,
|
|
78
|
+
agentStatus,
|
|
79
|
+
reputation,
|
|
80
|
+
balance,
|
|
81
|
+
contracts,
|
|
82
|
+
rpcUrl: CHAIN.rpcUrls?.default?.http?.[0] || "configured",
|
|
83
|
+
}, "COVENANT System Status");
|
|
84
|
+
}
|
|
85
|
+
catch (e) {
|
|
86
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
87
|
+
return formatStructuredError(`Could not complete this action: ${msg || 'unknown error'}`, "This usually happens when the wallet or network configuration is missing.", "Try: Check your .env file for PRIVATE_KEY and BASE_SEPOLIA_RPC_URL", true);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=corven-status.js.map
|