@odatano/nightgate-mcp 0.18.2 → 0.19.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/CHANGELOG.md +430 -394
- package/README.md +1 -1
- package/dist/builder.d.ts +4 -0
- package/dist/builder.js +6 -0
- package/dist/builder.js.map +1 -1
- package/dist/factory.js +3 -0
- package/dist/factory.js.map +1 -1
- package/dist/jobs.d.ts +8 -0
- package/dist/jobs.js +36 -0
- package/dist/jobs.js.map +1 -1
- package/dist/swap.js +13 -3
- package/dist/swap.js.map +1 -1
- package/dist/tools.js +44 -23
- package/dist/tools.js.map +1 -1
- package/docs/configuration.md +3 -2
- package/docs/tools.md +23 -4
- package/package.json +66 -66
package/README.md
CHANGED
|
@@ -60,7 +60,7 @@ Errors carry the server's HTTP status and `code`.
|
|
|
60
60
|
[docs/configuration.md](docs/configuration.md): every variable, an own
|
|
61
61
|
NIGHTGATE instance, version requirements. Needs NIGHTGATE >= 0.36.0; from 0.37.0,
|
|
62
62
|
which the hosted gateway runs, the server holds each status read until the job
|
|
63
|
-
settles.
|
|
63
|
+
settles; from 0.38.0 `list_swap_offers` and `my_swap_offers` wait with `waitMs`.
|
|
64
64
|
|
|
65
65
|
## Development
|
|
66
66
|
|
package/dist/builder.d.ts
CHANGED
|
@@ -47,6 +47,10 @@ export interface BuildOutput extends TxBytesInfo {
|
|
|
47
47
|
provingMode: string;
|
|
48
48
|
serializedBytes: number;
|
|
49
49
|
buildMs: number;
|
|
50
|
+
/** Builder setup; includes the prover key download on the first call. */
|
|
51
|
+
setupMs: number;
|
|
52
|
+
/** Building, proving and signing the call. */
|
|
53
|
+
proveMs: number;
|
|
50
54
|
}
|
|
51
55
|
/** Build + prove + sign locally; unbound (parallel channel) by default. */
|
|
52
56
|
export declare function buildSponsorable(config: NightgateMcpConfig, input: BuildInput): Promise<BuildOutput>;
|
package/dist/builder.js
CHANGED
|
@@ -6,6 +6,7 @@ import { builderChainOptions } from './config.js';
|
|
|
6
6
|
import { txExport } from './tx-module.js';
|
|
7
7
|
import { holdBuilt, writeTxFile } from './built.js';
|
|
8
8
|
import { ensureSeed } from './seed.js';
|
|
9
|
+
import { setStage } from './jobs.js';
|
|
9
10
|
/**
|
|
10
11
|
* Call kinds this tool can prepare; one per attestation-vault helper.
|
|
11
12
|
*
|
|
@@ -208,8 +209,11 @@ function prepareCall(mods, input, attestationSecret, ownAttesterId) {
|
|
|
208
209
|
export async function buildSponsorable(config, input) {
|
|
209
210
|
const t0 = Date.now();
|
|
210
211
|
const ref = input.compiledArtifactRef ?? DEFAULT_ARTIFACT;
|
|
212
|
+
setStage('preparing the builder and prover keys');
|
|
211
213
|
const b = await getBuilder(config, ref);
|
|
212
214
|
const mods = await loadModules(ref);
|
|
215
|
+
const t1 = Date.now();
|
|
216
|
+
setStage('proving');
|
|
213
217
|
const call = prepareCall(mods, input, b.attestationSecret, String(b.attesterId));
|
|
214
218
|
const built = await b.buildSponsorable({ contractAddress: input.contractAddress, call, bind: input.bind ? true : false });
|
|
215
219
|
const b64 = String(input.bind ? built.finalizedTxB64 : built.unboundTxB64);
|
|
@@ -223,6 +227,8 @@ export async function buildSponsorable(config, input) {
|
|
|
223
227
|
provingMode: String(b.provingMode ?? (config.proofServerUrl ? 'server' : 'wasm')),
|
|
224
228
|
serializedBytes: Number(built.serializedBytes ?? 0),
|
|
225
229
|
buildMs: Date.now() - t0,
|
|
230
|
+
setupMs: t1 - t0,
|
|
231
|
+
proveMs: Date.now() - t1,
|
|
226
232
|
};
|
|
227
233
|
return out;
|
|
228
234
|
}
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/factory.js
CHANGED
|
@@ -6,6 +6,7 @@ import { builderChainOptions } from './config.js';
|
|
|
6
6
|
import { txExport } from './tx-module.js';
|
|
7
7
|
import { seedIdentity } from './builder.js';
|
|
8
8
|
import { ensureSeed } from './seed.js';
|
|
9
|
+
import { setStage } from './jobs.js';
|
|
9
10
|
const FACTORY_PACKAGE = '@odatano/contract-token-factory';
|
|
10
11
|
const HERE = dirname(fileURLToPath(import.meta.url));
|
|
11
12
|
let factoryModule;
|
|
@@ -57,7 +58,9 @@ export async function buildMint(config, input) {
|
|
|
57
58
|
const issuerSecret = await issuerSecretOf({ seedHex });
|
|
58
59
|
const contractAddress = input.contractAddress.toLowerCase();
|
|
59
60
|
const { issuer, domain, type } = await tokenTypeOf(pureCircuits, { issuerSecret, name: input.name, contractAddress });
|
|
61
|
+
setStage('preparing the builder and prover keys');
|
|
60
62
|
const b = await getFactoryBuilder(config);
|
|
63
|
+
setStage('proving');
|
|
61
64
|
const built = await b.buildSponsorable({
|
|
62
65
|
contractAddress,
|
|
63
66
|
call: prepareMint({ name: input.name, amount: input.amount, recipientCoinPublicKey: recipient, issuerSecret }),
|
package/dist/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,oHAAoH;AACpH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAA2B,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
|
package/dist/jobs.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
1
2
|
import type { RequestHandlerExtra } from '@modelcontextprotocol/sdk/shared/protocol.js';
|
|
2
3
|
import type { ServerNotification, ServerRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
3
4
|
import { type NightgateClient } from './client.js';
|
|
@@ -8,6 +9,13 @@ export interface JobCheck {
|
|
|
8
9
|
tool: string;
|
|
9
10
|
args: Record<string, unknown>;
|
|
10
11
|
}
|
|
12
|
+
/** The stage of the running tool call, shown in its progress messages. */
|
|
13
|
+
export declare const callStage: AsyncLocalStorage<{
|
|
14
|
+
stage?: string;
|
|
15
|
+
}>;
|
|
16
|
+
export declare function setStage(stage: string): void;
|
|
17
|
+
/** Server stages of a job from the timestamps getJobStatus returns. */
|
|
18
|
+
export declare function serverTimings(job: Record<string, unknown>): Record<string, number>;
|
|
11
19
|
export declare function jobSession(jobId: string): string | undefined;
|
|
12
20
|
export declare function startOnce(key: string, start: () => Promise<Record<string, unknown>>): Promise<Record<string, unknown>>;
|
|
13
21
|
/** A failed job is forgotten, so the next call with the same key builds again. */
|
package/dist/jobs.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
1
2
|
import { NightgateApiError } from './client.js';
|
|
2
3
|
/** Longest a tool waits for the job it started, in ms. */
|
|
3
4
|
const JOB_MAX_WAIT_MS = 300_000;
|
|
@@ -8,6 +9,34 @@ const STARTED_TTL_MS = 3_600_000;
|
|
|
8
9
|
// Off for this process once the server refuses getJobStatus' waitMs.
|
|
9
10
|
let longPoll = true;
|
|
10
11
|
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
12
|
+
/** The stage of the running tool call, shown in its progress messages. */
|
|
13
|
+
export const callStage = new AsyncLocalStorage();
|
|
14
|
+
export function setStage(stage) {
|
|
15
|
+
const store = callStage.getStore();
|
|
16
|
+
if (store)
|
|
17
|
+
store.stage = stage;
|
|
18
|
+
}
|
|
19
|
+
/** Stage of a job by its status, for the progress messages. */
|
|
20
|
+
function jobStage(status) {
|
|
21
|
+
return status === 'external_execution' || status === 'submitted'
|
|
22
|
+
? 'submitted, waiting for the block'
|
|
23
|
+
: 'waiting for the sponsor';
|
|
24
|
+
}
|
|
25
|
+
/** Milliseconds between two timestamps of a job; undefined when one is missing. */
|
|
26
|
+
function span(from, to) {
|
|
27
|
+
const a = typeof from === 'string' ? Date.parse(from) : NaN;
|
|
28
|
+
const b = typeof to === 'string' ? Date.parse(to) : NaN;
|
|
29
|
+
return Number.isFinite(a) && Number.isFinite(b) ? Math.max(0, b - a) : undefined;
|
|
30
|
+
}
|
|
31
|
+
/** Server stages of a job from the timestamps getJobStatus returns. */
|
|
32
|
+
export function serverTimings(job) {
|
|
33
|
+
const out = {
|
|
34
|
+
queueMs: span(job.queuedAt, job.startedAt),
|
|
35
|
+
sponsorMs: span(job.startedAt, job.submittedAt),
|
|
36
|
+
settleMs: span(job.submittedAt, job.chainFinalizedAt ?? job.finishedAt),
|
|
37
|
+
};
|
|
38
|
+
return Object.fromEntries(Object.entries(out).filter(([, v]) => v !== undefined));
|
|
39
|
+
}
|
|
11
40
|
/** The session of every job this process started; getJobStatus needs it, the caller never sees it. */
|
|
12
41
|
const sessions = new Map();
|
|
13
42
|
export function jobSession(jobId) {
|
|
@@ -68,6 +97,7 @@ export async function awaitJob(client, config, start, extra, check) {
|
|
|
68
97
|
while (job.status !== 'succeeded' && job.status !== 'failed' && Date.now() < deadline) {
|
|
69
98
|
if (extra?.signal.aborted)
|
|
70
99
|
break;
|
|
100
|
+
setStage(jobStage(job.status));
|
|
71
101
|
const t0 = Date.now();
|
|
72
102
|
try {
|
|
73
103
|
job = { ...job, ...await readJob(client, config, jobId, sessionId) };
|
|
@@ -106,6 +136,9 @@ function outcome(job, check, statusError) {
|
|
|
106
136
|
if (statusError)
|
|
107
137
|
out.statusError = statusError;
|
|
108
138
|
}
|
|
139
|
+
const timings = { ...(isRecord(job.timings) ? job.timings : {}), ...(settled ? serverTimings(job) : {}) };
|
|
140
|
+
if (Object.keys(timings).length)
|
|
141
|
+
out.timings = timings;
|
|
109
142
|
const step = nextStep(job);
|
|
110
143
|
if (step)
|
|
111
144
|
out.next = step;
|
|
@@ -113,4 +146,7 @@ function outcome(job, check, statusError) {
|
|
|
113
146
|
out.check = check;
|
|
114
147
|
return out;
|
|
115
148
|
}
|
|
149
|
+
function isRecord(v) {
|
|
150
|
+
return typeof v === 'object' && v !== null && !Array.isArray(v);
|
|
151
|
+
}
|
|
116
152
|
//# sourceMappingURL=jobs.js.map
|
package/dist/jobs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../src/jobs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../src/jobs.ts"],"names":[],"mappings":"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"}
|
package/dist/swap.js
CHANGED
|
@@ -9,6 +9,7 @@ import { chmod, mkdir, readFile, rename, writeFile } from 'node:fs/promises';
|
|
|
9
9
|
import { dirname } from 'node:path';
|
|
10
10
|
import { txExport } from './tx-module.js';
|
|
11
11
|
import { ensureSeed } from './seed.js';
|
|
12
|
+
import { setStage } from './jobs.js';
|
|
12
13
|
let modulePromise;
|
|
13
14
|
async function loadSwapModule() {
|
|
14
15
|
modulePromise ??= (async () => {
|
|
@@ -154,14 +155,19 @@ export async function swapWalletInfo(config) {
|
|
|
154
155
|
return { ...base, syncingSeconds: Math.round((Date.now() - entry.startedAt) / 1000) };
|
|
155
156
|
}
|
|
156
157
|
const coins = await wallet.coins();
|
|
158
|
+
const pendingByType = await wallet.pendingBalances();
|
|
157
159
|
const byType = new Map();
|
|
158
160
|
for (const c of coins) {
|
|
159
|
-
const t = byType.get(c.tokenType) ?? { balance: 0n, coins: 0 };
|
|
160
|
-
byType.set(c.tokenType, { balance: t.balance + c.amount, coins: t.coins + 1 });
|
|
161
|
+
const t = byType.get(c.tokenType) ?? { balance: 0n, coins: 0, pending: 0n };
|
|
162
|
+
byType.set(c.tokenType, { ...t, balance: t.balance + c.amount, coins: t.coins + 1 });
|
|
163
|
+
}
|
|
164
|
+
for (const [tokenType, pending] of Object.entries(pendingByType)) {
|
|
165
|
+
const t = byType.get(tokenType) ?? { balance: 0n, coins: 0, pending: 0n };
|
|
166
|
+
byType.set(tokenType, { ...t, pending: t.pending + pending });
|
|
161
167
|
}
|
|
162
168
|
const tokens = [];
|
|
163
169
|
for (const [tokenType, t] of byType) {
|
|
164
|
-
tokens.push({ tokenType, balance: t.balance.toString(), coins: t.coins, spendable: String(await wallet.spendable(tokenType)) });
|
|
170
|
+
tokens.push({ tokenType, balance: t.balance.toString(), coins: t.coins, spendable: String(await wallet.spendable(tokenType)), pending: t.pending.toString() });
|
|
165
171
|
}
|
|
166
172
|
const pendingHalves = [...pending.entries()].map(([id, p]) => ({
|
|
167
173
|
id, role: p.role, ...(p.jobId ? { jobId: p.jobId } : {}),
|
|
@@ -172,7 +178,9 @@ export async function swapWalletInfo(config) {
|
|
|
172
178
|
/** One half of a swap from this wallet; bound with its offer file unless `bind` is false. */
|
|
173
179
|
export async function buildOffer(config, input) {
|
|
174
180
|
const t0 = Date.now();
|
|
181
|
+
setStage('syncing the wallet');
|
|
175
182
|
const wallet = await syncedWallet(config, SYNC_WAIT_MS);
|
|
183
|
+
setStage('proving');
|
|
176
184
|
const half = await wallet.buildHalf({ give: input.give, want: input.want, bind: input.bind !== false });
|
|
177
185
|
const terms = termsOut(half.terms);
|
|
178
186
|
const id = halfId(half.halfB64);
|
|
@@ -186,7 +194,9 @@ export async function buildOffer(config, input) {
|
|
|
186
194
|
/** The mirror half of an offer from this wallet, after its terms were read and compared with `expect`. */
|
|
187
195
|
export async function takeOffer(config, input) {
|
|
188
196
|
const t0 = Date.now();
|
|
197
|
+
setStage('syncing the wallet');
|
|
189
198
|
const wallet = await syncedWallet(config, SYNC_WAIT_MS);
|
|
199
|
+
setStage('proving');
|
|
190
200
|
const taken = await wallet.takeOffer({ offer: input.offer, ...(input.expect ? { expect: input.expect } : {}) });
|
|
191
201
|
const terms = termsOut(taken.terms);
|
|
192
202
|
const id = halfId(taken.takerHalfB64);
|
package/dist/swap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../src/swap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"swap.js","sourceRoot":"","sources":["../src/swap.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -6,7 +6,7 @@ import { BUILDABLE_CALLS, BUILDABLE_ARTIFACTS, DEFAULT_ARTIFACT, buildSponsorabl
|
|
|
6
6
|
import { buildOffer, earliestPostedAt, halfJobIds, postedOfferIds, readOffer, revertHalf, sameOffer, settleBoardRows, settleHalfJob, swapWalletInfo, takenHalves, takeOffer, trackHalfJob, trackPostedHalf, } from './swap.js';
|
|
7
7
|
import { buildMint } from './factory.js';
|
|
8
8
|
import { resolveTxSource } from './built.js';
|
|
9
|
-
import { awaitJob, forgetStart, jobSession, startOnce } from './jobs.js';
|
|
9
|
+
import { awaitJob, callStage, forgetStart, jobSession, setStage, startOnce } from './jobs.js';
|
|
10
10
|
import { seedCreated, seedNotice } from './seed.js';
|
|
11
11
|
const HEX64 = /^[0-9a-fA-F]{64}$/;
|
|
12
12
|
const hex64 = (what) => z.string().regex(HEX64, `${what} must be 64 hex characters`);
|
|
@@ -248,7 +248,7 @@ export function registerTools(server, client, config) {
|
|
|
248
248
|
'(scaled values / digests / salts): treat as sensitive. Store canonicalDocument at your ' +
|
|
249
249
|
'storageRef; re-serializing with different key order will not re-hash equal.',
|
|
250
250
|
inputSchema: {
|
|
251
|
-
document: z.record(z.unknown())
|
|
251
|
+
document: z.record(z.string(), z.unknown())
|
|
252
252
|
.describe('The full document as a JSON object; all of it goes into payloadHash'),
|
|
253
253
|
proofFields: z.array(z.object({
|
|
254
254
|
field: z.string().min(1)
|
|
@@ -320,8 +320,12 @@ export function registerTools(server, client, config) {
|
|
|
320
320
|
const started = await startOnce(key, async () => {
|
|
321
321
|
const built = await buildSponsorable(config, { ...input, bind: false });
|
|
322
322
|
const { b64 } = await resolveTxSource({ txId: built.txId }, 'unboundTxB64');
|
|
323
|
+
setStage('handing over to the sponsor');
|
|
323
324
|
const job = await client.callAction('sponsorUnboundTransaction', { unboundTxB64: b64, idempotencyKey });
|
|
324
|
-
return {
|
|
325
|
+
return {
|
|
326
|
+
...job, attesterId: built.attesterId, contractAddress: input.contractAddress, buildMs: built.buildMs,
|
|
327
|
+
timings: { setupMs: built.setupMs, proveMs: built.proveMs },
|
|
328
|
+
};
|
|
325
329
|
});
|
|
326
330
|
const job = await awaitJob(client, config, started, extra, checkFor(input, String(started.attesterId)));
|
|
327
331
|
if (job.status === 'failed')
|
|
@@ -336,10 +340,10 @@ export function registerTools(server, client, config) {
|
|
|
336
340
|
'document yourself. With contentRoot and schemaId from prepare_document_proof it also ' +
|
|
337
341
|
'anchors the content root, which the field claims of submit_vault_call need. Returns ' +
|
|
338
342
|
'{ status, attesterId, payloadHash, contractAddress, metadataJson, txHash, transactionHash, ' +
|
|
339
|
-
'check }; check is the verify_attestation call that shows the record on-chain. ' + RETRY_HINT,
|
|
343
|
+
'timings, check }; check is the verify_attestation call that shows the record on-chain. ' + RETRY_HINT,
|
|
340
344
|
inputSchema: {
|
|
341
345
|
sha256: hex64('sha256').describe('sha256 of the document (64 hex); it becomes the payloadHash'),
|
|
342
|
-
metadata: z.record(z.unknown()).optional()
|
|
346
|
+
metadata: z.record(z.string(), z.unknown()).optional()
|
|
343
347
|
.describe('Public metadata; its sha256 is anchored with the hash. Default none'),
|
|
344
348
|
contentRoot: hex64('contentRoot').optional().describe('Content root from prepare_document_proof (64 hex); needs schemaId'),
|
|
345
349
|
schemaId: hex64('schemaId').optional().describe('Schema id from prepare_document_proof (64 hex); needs contentRoot'),
|
|
@@ -366,7 +370,7 @@ export function registerTools(server, client, config) {
|
|
|
366
370
|
return { ...anchor, payloadHash, metadataJson, contentRoot: { status: 'not anchored', next: rootNext } };
|
|
367
371
|
}
|
|
368
372
|
const root = await submitVaultCall({ contractAddress, call: 'anchorContentRoot', params: { payloadHash, contentRoot: args.contentRoot, schemaId: args.schemaId }, compiledArtifactRef: ref }, args.idempotencyKey && `${args.idempotencyKey}:root`, extra);
|
|
369
|
-
return { ...root, payloadHash, metadataJson, anchorTxHash: anchor.txHash };
|
|
373
|
+
return { ...root, payloadHash, metadataJson, anchorTxHash: anchor.txHash, anchorTimings: anchor.timings };
|
|
370
374
|
}));
|
|
371
375
|
server.registerTool('submit_vault_call', {
|
|
372
376
|
description: 'Run any AttestationVault call in one go: build, prove and sign it here with the caller ' +
|
|
@@ -376,16 +380,16 @@ export function registerTools(server, client, config) {
|
|
|
376
380
|
'(proveFieldsUnchangedExcept, proveFieldsDiffer), disclosure (grantDisclosure, ' +
|
|
377
381
|
'revokeDisclosure), passports and anchoring. The witness from prepare_document_proof is ' +
|
|
378
382
|
'used here and never sent. Returns { status, attesterId, contractAddress, txHash, ' +
|
|
379
|
-
'transactionHash, check }; check is the free verify call that shows the effect on-chain. ' +
|
|
383
|
+
'transactionHash, timings, check }; check is the free verify call that shows the effect on-chain. ' +
|
|
380
384
|
'A failed job says in `next` what to do. ' + RETRY_HINT,
|
|
381
385
|
inputSchema: {
|
|
382
386
|
contractAddress: CONTRACT,
|
|
383
387
|
call: z.enum(BUILDABLE_CALLS).describe('Which circuit to call'),
|
|
384
|
-
params: z.record(z.union([z.string(), z.number()]))
|
|
388
|
+
params: z.record(z.string(), z.union([z.string(), z.number()]))
|
|
385
389
|
.describe('The call parameters, listed per call in build_sponsorable_transaction'),
|
|
386
|
-
merkleProof: z.record(z.any()).optional()
|
|
390
|
+
merkleProof: z.record(z.string(), z.any()).optional()
|
|
387
391
|
.describe('WITNESS for the proveField* calls, as prepare_document_proof returns it for that field'),
|
|
388
|
-
docPair: z.record(z.any()).optional()
|
|
392
|
+
docPair: z.record(z.string(), z.any()).optional()
|
|
389
393
|
.describe('WITNESS { schema, openingA, openingB } for proveFieldsUnchangedExcept and proveFieldsDiffer'),
|
|
390
394
|
compiledArtifactRef: z.enum(BUILDABLE_ARTIFACTS).optional()
|
|
391
395
|
.describe("Vault lineage, default 'attestation-vault-32' (the sandbox vaults); 'attestation-vault' for a 16-slot vault"),
|
|
@@ -428,11 +432,11 @@ export function registerTools(server, client, config) {
|
|
|
428
432
|
inputSchema: {
|
|
429
433
|
contractAddress: CONTRACT,
|
|
430
434
|
call: z.enum(BUILDABLE_CALLS).describe('Which circuit to call'),
|
|
431
|
-
params: z.record(z.union([z.string(), z.number()]))
|
|
435
|
+
params: z.record(z.string(), z.union([z.string(), z.number()]))
|
|
432
436
|
.describe('The call parameters (see the per-call list in the description)'),
|
|
433
|
-
merkleProof: z.record(z.any()).optional()
|
|
437
|
+
merkleProof: z.record(z.string(), z.any()).optional()
|
|
434
438
|
.describe('WITNESS material for the proveField* calls, as prepare_document_proof returns it for that field (fieldValue/fieldDigest, fieldSalt, siblings, dirs, setProof). It is consumed by the local prover and never sent to NIGHTGATE'),
|
|
435
|
-
docPair: z.record(z.any()).optional()
|
|
439
|
+
docPair: z.record(z.string(), z.any()).optional()
|
|
436
440
|
.describe('WITNESS bundle { schema, openingA, openingB } for proveFieldsUnchangedExcept / proveFieldsDiffer; both documents must be prepared with the same ordered field list'),
|
|
437
441
|
bind: z.boolean().optional()
|
|
438
442
|
.describe('false (default): unbound for sponsor_unbound_transaction; true: finalized for sponsor_finalized_transaction'),
|
|
@@ -511,8 +515,11 @@ export function registerTools(server, client, config) {
|
|
|
511
515
|
}));
|
|
512
516
|
server.registerTool('get_swap_wallet', {
|
|
513
517
|
description: 'The shielded wallet this MCP server swaps from (the caller seed): address, ' +
|
|
514
|
-
'public keys, and per token type the balance
|
|
515
|
-
'the most ONE swap half can give (what its largest coins hold, up to maxInputs coins)
|
|
518
|
+
'public keys, and per token type the balance of the free coins, their number, `spendable`, ' +
|
|
519
|
+
'the most ONE swap half can give (what its largest coins hold, up to maxInputs coins), and ' +
|
|
520
|
+
'`pending`, what the halves built here bring back once their swaps land (the change and the ' +
|
|
521
|
+
'wanted coins). While a half can still land the wallet is worth balance plus pending; a half ' +
|
|
522
|
+
'can give only from balance, and revert_swap_offer moves a dropped half back into it. ' +
|
|
516
523
|
'Also lists the halves built here that are not handed over yet; one posted with ' +
|
|
517
524
|
'post_swap_offer carries offerId and boardStatus and leaves the list once its offer filled. The wallet syncs its ' +
|
|
518
525
|
'shielded coins only; a first sync from genesis takes about 5 minutes, during which the ' +
|
|
@@ -723,7 +730,9 @@ export function registerTools(server, client, config) {
|
|
|
723
730
|
description: 'Offers on the server\'s board. Without status: the open ones, newest first. status filled | ' +
|
|
724
731
|
'retired | expired | all reads the closed ones instead, ordered by last change; since keeps ' +
|
|
725
732
|
'offers changed after that instant, so status all + since polled repeatedly is the board\'s ' +
|
|
726
|
-
'change feed.
|
|
733
|
+
'change feed. With waitMs the server holds an empty answer until an offer matches or the ' +
|
|
734
|
+
'time is up, so a watcher makes one call per change instead of one per interval. ' +
|
|
735
|
+
'Filters are exact 64-hex token types and one tag. ' + BOARD_ROW_HINT +
|
|
727
736
|
' Every token may read the board.',
|
|
728
737
|
inputSchema: {
|
|
729
738
|
givesType: hex64('givesType').optional().describe('Only offers that give this token type'),
|
|
@@ -732,19 +741,24 @@ export function registerTools(server, client, config) {
|
|
|
732
741
|
limit: z.number().int().min(1).max(200).optional().describe('Default 50'),
|
|
733
742
|
status: OFFER_STATUS.optional().describe('Default open'),
|
|
734
743
|
since: z.string().datetime().optional().describe('ISO timestamp; only offers changed after it'),
|
|
744
|
+
waitMs: z.number().int().min(0).max(BOARD_WAIT_MAX_MS).optional()
|
|
745
|
+
.describe('Hold the call while nothing matches, up to this many ms (at most 25000); needs NIGHTGATE 0.38.0'),
|
|
735
746
|
},
|
|
736
747
|
}, run(async (args) => settled(await listOffers(client, { ...args, mine: null }))));
|
|
737
748
|
server.registerTool('my_swap_offers', {
|
|
738
749
|
description: 'The offers this caller posted on the board (a token: its grant\'s), open and closed, ' +
|
|
739
750
|
'ordered by last change: what is still open, what filled (filledTxHash), what expired or ' +
|
|
740
|
-
'was retired. status narrows to one state, since to offers changed after an instant
|
|
751
|
+
'was retired. status narrows to one state, since to offers changed after an instant, ' +
|
|
752
|
+
'waitMs holds an empty answer until one of them changes. ' +
|
|
741
753
|
BOARD_ROW_HINT,
|
|
742
754
|
inputSchema: {
|
|
743
755
|
status: OFFER_STATUS.optional().describe('Default all'),
|
|
744
756
|
since: z.string().datetime().optional().describe('ISO timestamp; only offers changed after it'),
|
|
745
757
|
limit: z.number().int().min(1).max(200).optional().describe('Default 50'),
|
|
758
|
+
waitMs: z.number().int().min(0).max(BOARD_WAIT_MAX_MS).optional()
|
|
759
|
+
.describe('Hold the call while nothing matches, up to this many ms (at most 25000); needs NIGHTGATE 0.38.0'),
|
|
746
760
|
},
|
|
747
|
-
}, run(async (args) => settled(await listOffers(client, { status: args.status ?? 'all', since: args.since, limit: args.limit, mine: true }))));
|
|
761
|
+
}, run(async (args) => settled(await listOffers(client, { status: args.status ?? 'all', since: args.since, limit: args.limit, mine: true, waitMs: args.waitMs }))));
|
|
748
762
|
server.registerTool('get_swap_offer', {
|
|
749
763
|
description: 'One board offer by id, open or closed, in the board\'s shape: status, filledTxHash once a ' +
|
|
750
764
|
'swap spent it, closedAt, changedAt. The way to follow an offer after post_swap_offer or ' +
|
|
@@ -858,7 +872,12 @@ function settled(rows) {
|
|
|
858
872
|
settleBoardRows(rows);
|
|
859
873
|
return rows;
|
|
860
874
|
}
|
|
861
|
-
/**
|
|
875
|
+
/** The board's long-poll cap: NIGHTGATE holds an empty answer at most this long. */
|
|
876
|
+
const BOARD_WAIT_MAX_MS = 25_000;
|
|
877
|
+
/**
|
|
878
|
+
* listSwapOffers with the seven parameters, null for the unused ones. `waitMs` is sent only
|
|
879
|
+
* when set: a server before NIGHTGATE 0.38.0 refuses a parameter it does not declare.
|
|
880
|
+
*/
|
|
862
881
|
function listOffers(client, args) {
|
|
863
882
|
return client.callFunction('listSwapOffers', {
|
|
864
883
|
givesType: args.givesType?.toLowerCase() ?? null,
|
|
@@ -868,6 +887,7 @@ function listOffers(client, args) {
|
|
|
868
887
|
status: args.status ?? null,
|
|
869
888
|
since: args.since ?? null,
|
|
870
889
|
mine: args.mine,
|
|
890
|
+
...(args.waitMs === undefined ? {} : { waitMs: args.waitMs }),
|
|
871
891
|
});
|
|
872
892
|
}
|
|
873
893
|
/**
|
|
@@ -879,9 +899,10 @@ export function wrapHandler(_client) {
|
|
|
879
899
|
return function run(fn) {
|
|
880
900
|
return async (args, extra) => {
|
|
881
901
|
const notice = {};
|
|
882
|
-
const
|
|
902
|
+
const stage = {};
|
|
903
|
+
const stopProgress = startProgress(extra, stage);
|
|
883
904
|
try {
|
|
884
|
-
const result = await seedNotice.run(notice, () => fn(args, extra));
|
|
905
|
+
const result = await callStage.run(stage, () => seedNotice.run(notice, () => fn(args, extra)));
|
|
885
906
|
const seed = notice.createdFile ? seedCreated(notice.createdFile) : undefined;
|
|
886
907
|
const out = seed && result && typeof result === 'object' && !Array.isArray(result) ? { ...result, seed } : result;
|
|
887
908
|
return { content: [{ type: 'text', text: JSON.stringify(out, null, 2) }] };
|
|
@@ -902,7 +923,7 @@ export function wrapHandler(_client) {
|
|
|
902
923
|
};
|
|
903
924
|
}
|
|
904
925
|
/** Progress every 5 s while a call runs, when the client asked for it with a progress token. */
|
|
905
|
-
function startProgress(extra) {
|
|
926
|
+
function startProgress(extra, stage) {
|
|
906
927
|
const token = extra?._meta?.progressToken;
|
|
907
928
|
if (token === undefined || !extra)
|
|
908
929
|
return () => { };
|
|
@@ -911,7 +932,7 @@ function startProgress(extra) {
|
|
|
911
932
|
const timer = setInterval(() => {
|
|
912
933
|
extra.sendNotification({
|
|
913
934
|
method: 'notifications/progress',
|
|
914
|
-
params: { progressToken: token, progress: ++n, message:
|
|
935
|
+
params: { progressToken: token, progress: ++n, message: `${stage.stage ?? 'working'}, ${Math.round((Date.now() - t0) / 1000)} s` },
|
|
915
936
|
}).catch(() => undefined);
|
|
916
937
|
}, 5_000);
|
|
917
938
|
timer.unref?.();
|