@opendatalabs/personal-server-ts-core 1.4.0 → 1.6.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/dist/api/index.d.ts +80 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +126 -68
- package/dist/api/index.js.map +1 -1
- package/dist/contracts/binary.d.ts +12 -0
- package/dist/contracts/binary.d.ts.map +1 -1
- package/dist/contracts/binary.js +31 -0
- package/dist/contracts/binary.js.map +1 -1
- package/dist/contracts/data.d.ts +21 -0
- package/dist/contracts/data.d.ts.map +1 -1
- package/dist/contracts/data.js +45 -4
- package/dist/contracts/data.js.map +1 -1
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/logging/access-log.d.ts +1 -1
- package/dist/logging/access-log.d.ts.map +1 -1
- package/dist/mcp/index.d.ts +1 -0
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/read-client.d.ts +23 -0
- package/dist/mcp/read-client.d.ts.map +1 -1
- package/dist/mcp/read-client.js +16 -4
- package/dist/mcp/read-client.js.map +1 -1
- package/dist/mcp/session.d.ts +160 -0
- package/dist/mcp/session.d.ts.map +1 -0
- package/dist/mcp/session.js +234 -0
- package/dist/mcp/session.js.map +1 -0
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +135 -15
- package/dist/mcp/tools.js.map +1 -1
- package/dist/policy/data-read.d.ts +8 -0
- package/dist/policy/data-read.d.ts.map +1 -1
- package/dist/policy/data-read.js +9 -2
- package/dist/policy/data-read.js.map +1 -1
- package/dist/policy/data-write.d.ts +69 -0
- package/dist/policy/data-write.d.ts.map +1 -0
- package/dist/policy/data-write.js +131 -0
- package/dist/policy/data-write.js.map +1 -0
- package/dist/policy/index.d.ts +2 -1
- package/dist/policy/index.d.ts.map +1 -1
- package/dist/policy/index.js +2 -1
- package/dist/policy/index.js.map +1 -1
- package/dist/write/attribution.d.ts +165 -0
- package/dist/write/attribution.d.ts.map +1 -0
- package/dist/write/attribution.js +277 -0
- package/dist/write/attribution.js.map +1 -0
- package/dist/write/index.d.ts +3 -0
- package/dist/write/index.d.ts.map +1 -0
- package/dist/write/index.js +3 -0
- package/dist/write/index.js.map +1 -0
- package/dist/write/session.d.ts +96 -0
- package/dist/write/session.d.ts.map +1 -0
- package/dist/write/session.js +136 -0
- package/dist/write/session.js.map +1 -0
- package/package.json +5 -1
package/dist/contracts/data.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type DataStoragePort } from "../ports/index.js";
|
|
2
2
|
import { type DataFileEnvelope } from "@opendatalabs/vana-sdk/browser";
|
|
3
3
|
import { type WriteResult } from "../storage/hierarchy/index.js";
|
|
4
|
+
import { type WriterAttribution } from "../write/attribution.js";
|
|
4
5
|
export type DataContractErrorCode = "INVALID_SCOPE" | "INVALID_BODY" | "NOT_FOUND";
|
|
5
6
|
export interface DataContractErrorBody {
|
|
6
7
|
error: DataContractErrorCode;
|
|
@@ -58,12 +59,30 @@ export interface ReadDataContractResult {
|
|
|
58
59
|
scope: string;
|
|
59
60
|
envelope: DataFileEnvelope;
|
|
60
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Thrown by the ingest contracts when the envelope was already written to
|
|
64
|
+
* storage but a later step (indexing) failed. The record is on disk and a
|
|
65
|
+
* re-index can surface it, so callers must treat the write as persisted:
|
|
66
|
+
* never retry it under the same proof, never release a replay reservation.
|
|
67
|
+
*/
|
|
68
|
+
export declare class IngestPersistedError extends Error {
|
|
69
|
+
readonly relativePath: string;
|
|
70
|
+
readonly cause: unknown;
|
|
71
|
+
constructor(relativePath: string, cause: unknown);
|
|
72
|
+
}
|
|
61
73
|
export interface IngestDataContractInput {
|
|
62
74
|
storage: DataStoragePort;
|
|
63
75
|
scopeParam: string;
|
|
64
76
|
body: unknown;
|
|
65
77
|
collectedAt: string;
|
|
66
78
|
status: "stored" | "syncing";
|
|
79
|
+
/**
|
|
80
|
+
* Builder attribution for delegated (write-session) writes. When present,
|
|
81
|
+
* it is stamped into the envelope `data` under the reserved `$writtenBy`
|
|
82
|
+
* key so it travels through the unchanged encrypt/upload/register path.
|
|
83
|
+
* Owner writes pass nothing and the envelope is byte-identical to today.
|
|
84
|
+
*/
|
|
85
|
+
attribution?: WriterAttribution;
|
|
67
86
|
}
|
|
68
87
|
export interface IngestDataContractResult {
|
|
69
88
|
ok: true;
|
|
@@ -86,6 +105,8 @@ export interface IngestBinaryDataContractInput {
|
|
|
86
105
|
metadata?: unknown;
|
|
87
106
|
collectedAt: string;
|
|
88
107
|
status: "stored" | "syncing";
|
|
108
|
+
/** Builder attribution for delegated writes (see IngestDataContractInput). */
|
|
109
|
+
attribution?: WriterAttribution;
|
|
89
110
|
}
|
|
90
111
|
export interface DeleteDataScopeContractInput {
|
|
91
112
|
storage: DataStoragePort;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/contracts/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/contracts/data.ts"],"names":[],"mappings":"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"}
|
package/dist/contracts/data.js
CHANGED
|
@@ -1,6 +1,31 @@
|
|
|
1
1
|
import { createDataFileEnvelope, ScopeSchema, } from "@opendatalabs/vana-sdk/browser";
|
|
2
2
|
import { buildBinaryEnvelopeData, sha256Hex } from "./binary.js";
|
|
3
3
|
import { buildDataBlocksAsync } from "../storage/blocks/build.js";
|
|
4
|
+
import { hasReservedWriterKey, stampWriterAttribution, } from "../write/attribution.js";
|
|
5
|
+
/**
|
|
6
|
+
* Thrown by the ingest contracts when the envelope was already written to
|
|
7
|
+
* storage but a later step (indexing) failed. The record is on disk and a
|
|
8
|
+
* re-index can surface it, so callers must treat the write as persisted:
|
|
9
|
+
* never retry it under the same proof, never release a replay reservation.
|
|
10
|
+
*/
|
|
11
|
+
export class IngestPersistedError extends Error {
|
|
12
|
+
relativePath;
|
|
13
|
+
cause;
|
|
14
|
+
constructor(relativePath, cause) {
|
|
15
|
+
super(`Envelope written to ${relativePath} but indexing failed: ${cause instanceof Error ? cause.message : String(cause)}`);
|
|
16
|
+
this.relativePath = relativePath;
|
|
17
|
+
this.cause = cause;
|
|
18
|
+
this.name = "IngestPersistedError";
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
async function indexWrittenEnvelope(storage, entry) {
|
|
22
|
+
try {
|
|
23
|
+
await storage.insertEntry(entry);
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
throw new IngestPersistedError(entry.path, err);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
4
29
|
function invalidScope(message) {
|
|
5
30
|
return {
|
|
6
31
|
ok: false,
|
|
@@ -129,7 +154,23 @@ export async function ingestDataContract(input) {
|
|
|
129
154
|
},
|
|
130
155
|
};
|
|
131
156
|
}
|
|
132
|
-
|
|
157
|
+
// The attribution key is server-stamped, never caller-supplied: a payload
|
|
158
|
+
// that carries it could forge (or shadow) an attribution. That holds for
|
|
159
|
+
// every JSON ingest, owner writes included, so consumers can trust that a
|
|
160
|
+
// stored $writtenBy was always produced by the server.
|
|
161
|
+
if (hasReservedWriterKey(input.body)) {
|
|
162
|
+
return {
|
|
163
|
+
ok: false,
|
|
164
|
+
status: 400,
|
|
165
|
+
body: {
|
|
166
|
+
error: "INVALID_BODY",
|
|
167
|
+
message: "Request body must not contain the reserved $writtenBy key",
|
|
168
|
+
},
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
const envelope = createDataFileEnvelope(scopeResult.scope, input.collectedAt, input.attribution
|
|
172
|
+
? stampWriterAttribution(input.body, input.attribution)
|
|
173
|
+
: input.body);
|
|
133
174
|
const writeResult = await input.storage.writeEnvelope(envelope);
|
|
134
175
|
try {
|
|
135
176
|
await writeBlockSidecars(input.storage, envelope);
|
|
@@ -137,7 +178,7 @@ export async function ingestDataContract(input) {
|
|
|
137
178
|
catch {
|
|
138
179
|
// Best-effort bounded sidecars: raw envelope storage remains the source of truth.
|
|
139
180
|
}
|
|
140
|
-
await input.storage
|
|
181
|
+
await indexWrittenEnvelope(input.storage, {
|
|
141
182
|
fileId: null,
|
|
142
183
|
schemaId: null,
|
|
143
184
|
path: writeResult.relativePath,
|
|
@@ -186,7 +227,7 @@ export async function ingestBinaryDataContract(input) {
|
|
|
186
227
|
contentHash,
|
|
187
228
|
metadata: input.metadata,
|
|
188
229
|
});
|
|
189
|
-
const envelope = createDataFileEnvelope(scopeResult.scope, input.collectedAt, data);
|
|
230
|
+
const envelope = createDataFileEnvelope(scopeResult.scope, input.collectedAt, input.attribution ? stampWriterAttribution(data, input.attribution) : data);
|
|
190
231
|
const writeResult = await input.storage.writeEnvelope(envelope);
|
|
191
232
|
try {
|
|
192
233
|
await writeBlockSidecars(input.storage, envelope);
|
|
@@ -194,7 +235,7 @@ export async function ingestBinaryDataContract(input) {
|
|
|
194
235
|
catch {
|
|
195
236
|
// Best-effort bounded sidecars: raw envelope storage remains the source of truth.
|
|
196
237
|
}
|
|
197
|
-
await input.storage
|
|
238
|
+
await indexWrittenEnvelope(input.storage, {
|
|
198
239
|
fileId: null,
|
|
199
240
|
schemaId: null,
|
|
200
241
|
path: writeResult.relativePath,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/contracts/data.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,WAAW,GAEZ,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/contracts/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { deleteDataScopeContract, ingestDataContract, ingestBinaryDataContract, listDataScopesContract, listDataVersionsContract, parseDataScopeContract, readDataContract, } from "./data.js";
|
|
1
|
+
export { deleteDataScopeContract, IngestPersistedError, ingestDataContract, ingestBinaryDataContract, listDataScopesContract, listDataVersionsContract, parseDataScopeContract, readDataContract, } from "./data.js";
|
|
2
2
|
export { BINARY_MARKER, BINARY_ENCODING, buildBinaryEnvelopeData, decodeBinaryEnvelope, isBinaryEnvelope, sha256Hex, bytesToBase64, base64ToBytes, parseMetadataHeader, stringifyMetadataHeader, } from "./binary.js";
|
|
3
3
|
export type { BinaryEnvelopeData, DecodedBinary } from "./binary.js";
|
|
4
4
|
export { configReadErrorContract, configWriteErrorContract, validateServerConfigContract, } from "./config.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EACV,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,wBAAwB,EACxB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,YAAY,EACV,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
|
package/dist/contracts/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { deleteDataScopeContract, ingestDataContract, ingestBinaryDataContract, listDataScopesContract, listDataVersionsContract, parseDataScopeContract, readDataContract, } from "./data.js";
|
|
1
|
+
export { deleteDataScopeContract, IngestPersistedError, ingestDataContract, ingestBinaryDataContract, listDataScopesContract, listDataVersionsContract, parseDataScopeContract, readDataContract, } from "./data.js";
|
|
2
2
|
export { BINARY_MARKER, BINARY_ENCODING, buildBinaryEnvelopeData, decodeBinaryEnvelope, isBinaryEnvelope, sha256Hex, bytesToBase64, base64ToBytes, parseMetadataHeader, stringifyMetadataHeader, } from "./binary.js";
|
|
3
3
|
export { configReadErrorContract, configWriteErrorContract, validateServerConfigContract, } from "./config.js";
|
|
4
4
|
export { approveDeviceSessionContract, createMemoryDeviceSessionStore, DEVICE_POLL_INTERVAL_MS, DEVICE_SESSION_TTL_MS, initiateDeviceSessionContract, pollDeviceSessionContract, provisionDeviceTokenContract, revokeDeviceTokenContract, } from "./auth-device.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,6BAA6B,EAC7B,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,kBAAkB,EAClB,8BAA8B,EAC9B,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-log.d.ts","sourceRoot":"","sources":["../../src/logging/access-log.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"access-log.d.ts","sourceRoot":"","sources":["../../src/logging/access-log.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C"}
|
package/dist/mcp/index.d.ts
CHANGED
package/dist/mcp/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
package/dist/mcp/index.js
CHANGED
package/dist/mcp/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
|
|
@@ -30,6 +30,13 @@ export interface McpScopeMetadata {
|
|
|
30
30
|
hasBlocks: boolean;
|
|
31
31
|
}
|
|
32
32
|
export interface McpDataReadClient {
|
|
33
|
+
/**
|
|
34
|
+
* True when reads through this client are x402-payment-enforced (a paid
|
|
35
|
+
* self-signing session). Payment-bypassing shortcuts — notably the optional
|
|
36
|
+
* `searchScopeIndex` preview path, which does not route through the data API
|
|
37
|
+
* auth port — MUST NOT be used when this is set.
|
|
38
|
+
*/
|
|
39
|
+
enforcesPayment?: boolean;
|
|
33
40
|
/**
|
|
34
41
|
* Perform `GET /v1/data?scopePrefix=…` as the connection grantee. This is
|
|
35
42
|
* used only for discovery/expanding wildcard grants before a grant-gated
|
|
@@ -61,6 +68,12 @@ export interface McpDataReadClient {
|
|
|
61
68
|
grantId: string;
|
|
62
69
|
cursor?: string;
|
|
63
70
|
maxBytes?: number;
|
|
71
|
+
/**
|
|
72
|
+
* Optional base64 `X-PAYMENT` proof (x402). Forwarded as a header on the
|
|
73
|
+
* in-process read request so a payment-enforcing auth port (self-signing
|
|
74
|
+
* MCP sessions) can settle it. The owner/OAuth path never sets this.
|
|
75
|
+
*/
|
|
76
|
+
payment?: string;
|
|
64
77
|
blockIds?: readonly string[];
|
|
65
78
|
}): Promise<McpDataReadBlocksResult>;
|
|
66
79
|
/**
|
|
@@ -83,6 +96,11 @@ export interface McpDataReadClient {
|
|
|
83
96
|
grantId: string;
|
|
84
97
|
at?: string;
|
|
85
98
|
fileId?: string;
|
|
99
|
+
/**
|
|
100
|
+
* Optional base64 `X-PAYMENT` proof (x402), forwarded like
|
|
101
|
+
* `readScopeBlocks` so a paid self-signing session can settle raw reads.
|
|
102
|
+
*/
|
|
103
|
+
payment?: string;
|
|
86
104
|
}): Promise<McpDataReadRawFileResult>;
|
|
87
105
|
/**
|
|
88
106
|
* Optional indexed search path. Implementations may return `missing` while
|
|
@@ -146,6 +164,11 @@ export interface CreateMcpDataReadClientOptions {
|
|
|
146
164
|
* expects after strip-base-path. Defaults to `/v1/data`.
|
|
147
165
|
*/
|
|
148
166
|
basePath?: string;
|
|
167
|
+
/**
|
|
168
|
+
* Marks reads through this client as x402-enforced (paid self-signing
|
|
169
|
+
* session). Surfaced as `McpDataReadClient.enforcesPayment`.
|
|
170
|
+
*/
|
|
171
|
+
enforcesPayment?: boolean;
|
|
149
172
|
}
|
|
150
173
|
export declare function createMcpDataReadClient(options: CreateMcpDataReadClientOptions): McpDataReadClient;
|
|
151
174
|
//# sourceMappingURL=read-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-client.d.ts","sourceRoot":"","sources":["../../src/mcp/read-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAInD,OAAO,EAGL,KAAK,yBAAyB,EAC/B,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE/B;;;;;OAKG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAElE;;;;;;;;OAQG;IACH,eAAe,CAAC,MAAM,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KAC9B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAErC;;;;;OAKG;IACH,iBAAiB,CAAC,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAEtC;;;;OAIG;IACH,gBAAgB,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"read-client.d.ts","sourceRoot":"","sources":["../../src/mcp/read-client.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/read-client.js
CHANGED
|
@@ -54,7 +54,10 @@ export function createMcpDataReadClient(options) {
|
|
|
54
54
|
const url = new URL(signingUri, options.serverOrigin).toString();
|
|
55
55
|
const request = new Request(url, {
|
|
56
56
|
method: "GET",
|
|
57
|
-
headers: {
|
|
57
|
+
headers: {
|
|
58
|
+
Authorization: authorization,
|
|
59
|
+
...(params.payment ? { "X-PAYMENT": params.payment } : {}),
|
|
60
|
+
},
|
|
58
61
|
});
|
|
59
62
|
try {
|
|
60
63
|
const authResult = await options.dataApiDeps.auth.authorizeBuilderRead({
|
|
@@ -62,6 +65,7 @@ export function createMcpDataReadClient(options) {
|
|
|
62
65
|
scope: params.scope,
|
|
63
66
|
grantId: params.grantId,
|
|
64
67
|
fileId: params.fileId,
|
|
68
|
+
...(params.at ? { at: params.at } : {}),
|
|
65
69
|
});
|
|
66
70
|
return { request, authResult };
|
|
67
71
|
}
|
|
@@ -92,6 +96,7 @@ export function createMcpDataReadClient(options) {
|
|
|
92
96
|
return { logId, timestamp, ipAddress, userAgent };
|
|
93
97
|
}
|
|
94
98
|
return {
|
|
99
|
+
enforcesPayment: options.enforcesPayment ?? false,
|
|
95
100
|
async listScopes({ scopePrefix, limit, offset } = {}) {
|
|
96
101
|
const params = new URLSearchParams();
|
|
97
102
|
if (scopePrefix)
|
|
@@ -136,7 +141,7 @@ export function createMcpDataReadClient(options) {
|
|
|
136
141
|
hasBlocks,
|
|
137
142
|
};
|
|
138
143
|
},
|
|
139
|
-
async readScopeBlocks({ scope, grantId, cursor, maxBytes, blockIds }) {
|
|
144
|
+
async readScopeBlocks({ scope, grantId, cursor, maxBytes, payment, blockIds, }) {
|
|
140
145
|
const storage = options.dataApiDeps.storage;
|
|
141
146
|
if (!storage.readScopeBlocks) {
|
|
142
147
|
throw new McpDataReadError(503, {
|
|
@@ -160,6 +165,10 @@ export function createMcpDataReadClient(options) {
|
|
|
160
165
|
scope,
|
|
161
166
|
grantId,
|
|
162
167
|
fileId: selectedEntry.fileId ?? undefined,
|
|
168
|
+
// The exact version this read serves (cursor-pinned or latest) —
|
|
169
|
+
// a payment-enforcing auth port binds the x402 settlement to it.
|
|
170
|
+
at: selectedEntry.collectedAt,
|
|
171
|
+
payment,
|
|
163
172
|
});
|
|
164
173
|
try {
|
|
165
174
|
const result = await storage.readScopeBlocks(scope, selectedEntry.collectedAt, {
|
|
@@ -232,7 +241,7 @@ export function createMcpDataReadClient(options) {
|
|
|
232
241
|
await writeReadAccessLog(request, { scope, grantId, authResult });
|
|
233
242
|
return manifest;
|
|
234
243
|
},
|
|
235
|
-
async readRawScopeFile({ scope, grantId, at, fileId }) {
|
|
244
|
+
async readRawScopeFile({ scope, grantId, at, fileId, payment }) {
|
|
236
245
|
const storage = options.dataApiDeps.storage;
|
|
237
246
|
const selectedEntry = storage.findEntry({
|
|
238
247
|
scope,
|
|
@@ -263,7 +272,10 @@ export function createMcpDataReadClient(options) {
|
|
|
263
272
|
const url = new URL(`${signingUri}?${query.toString()}`, options.serverOrigin).toString();
|
|
264
273
|
const request = new Request(url, {
|
|
265
274
|
method: "GET",
|
|
266
|
-
headers: {
|
|
275
|
+
headers: {
|
|
276
|
+
Authorization: authorization,
|
|
277
|
+
...(payment ? { "X-PAYMENT": payment } : {}),
|
|
278
|
+
},
|
|
267
279
|
});
|
|
268
280
|
const response = await handlePersonalServerDataRequest(request, options.dataApiDeps, { basePath });
|
|
269
281
|
if (!response.ok) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-client.js","sourceRoot":"","sources":["../../src/mcp/read-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"read-client.js","sourceRoot":"","sources":["../../src/mcp/read-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Self-signing MCP session (Option A / chatbot-first).
|
|
3
|
+
*
|
|
4
|
+
* A third-party app that holds its OWN key and a DCR grant proves control of
|
|
5
|
+
* that key ONCE — a Web3Signed handshake to `POST /mcp/session` — and the PS
|
|
6
|
+
* mints a short-lived bearer session token bound to `{ builderAddress, grantId }`.
|
|
7
|
+
* MCP tool calls then present that token as `Authorization: Bearer …`; each read
|
|
8
|
+
* authorizes as the builder via `verifyDataReadPolicy` (signer == grantee) with
|
|
9
|
+
* NO per-read signature and NO PS-held key.
|
|
10
|
+
*
|
|
11
|
+
* Contrast with the owner's-Claude flow, where the PS generates and holds a
|
|
12
|
+
* per-connection grantee key and signs reads itself. Here the app is
|
|
13
|
+
* self-custody; the PS only ever recovered its address (at handshake).
|
|
14
|
+
*/
|
|
15
|
+
import type { McpConnectionRecord } from "./types.js";
|
|
16
|
+
import type { ServerAccount } from "../keys/server-account.js";
|
|
17
|
+
import type { AuthSessionVerifierPort, GrantVerifierPort, RuntimeAvailabilityPort } from "../ports/index.js";
|
|
18
|
+
import type { PersonalServerApiAuthPort, PersonalServerDataApiDeps } from "../api/index.js";
|
|
19
|
+
import type { DataPortabilityGatewayConfig, GatewayClient } from "@opendatalabs/vana-sdk/browser";
|
|
20
|
+
export interface McpSessionRecord {
|
|
21
|
+
/** SHA-256 hex of the raw session token. Only the hash is stored. */
|
|
22
|
+
tokenHash: string;
|
|
23
|
+
/** The self-custody app's address (recovered from the handshake proof). */
|
|
24
|
+
builderAddress: `0x${string}`;
|
|
25
|
+
/** DCR grant id the app was issued (grantee == builderAddress). */
|
|
26
|
+
grantId: string;
|
|
27
|
+
scopes: string[];
|
|
28
|
+
createdAt: string;
|
|
29
|
+
expiresAtMs: number;
|
|
30
|
+
}
|
|
31
|
+
export interface McpSessionStore {
|
|
32
|
+
create(record: McpSessionRecord): Promise<void>;
|
|
33
|
+
/** Returns a live (non-expired) session, or null. */
|
|
34
|
+
getByTokenHash(tokenHash: string): Promise<McpSessionRecord | null>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* KNOWN LIMITATION: in-memory only. A process restart (or a second instance)
|
|
38
|
+
* starts with an empty store, so live session tokens die with the process and
|
|
39
|
+
* the client must re-handshake. Acceptable for today's single-instance
|
|
40
|
+
* Personal Server; persist via the host's state store before multi-instance.
|
|
41
|
+
*/
|
|
42
|
+
export declare function createInMemoryMcpSessionStore(): McpSessionStore;
|
|
43
|
+
/**
|
|
44
|
+
* Records consumed handshake-proof identifiers until they expire, so a still-
|
|
45
|
+
* valid Web3Signed proof cannot be replayed to mint a second session token.
|
|
46
|
+
*/
|
|
47
|
+
export interface McpProofReplayStore {
|
|
48
|
+
/**
|
|
49
|
+
* Atomically record `proofId` (remembered until `expiresAtMs`) and report
|
|
50
|
+
* whether it was ALREADY present and live — i.e. a replay. Returns `true`
|
|
51
|
+
* on replay, `false` when the proof is fresh (and now recorded).
|
|
52
|
+
*/
|
|
53
|
+
consume(proofId: string, expiresAtMs: number): Promise<boolean>;
|
|
54
|
+
/**
|
|
55
|
+
* Roll back a prior `consume` for `proofId` (e.g. when session persistence
|
|
56
|
+
* failed after the reservation). Optional — stores that can't release safely
|
|
57
|
+
* omit it and callers must tolerate its absence.
|
|
58
|
+
*/
|
|
59
|
+
release?(proofId: string): Promise<void>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* KNOWN LIMITATION: in-memory only. A process restart (or a second instance)
|
|
63
|
+
* forgets consumed proof ids, so a still-valid handshake proof could be
|
|
64
|
+
* replayed once against the fresh process. The blast radius is bounded by the
|
|
65
|
+
* proof's own expiry, and today's Personal Server runs single-instance, so we
|
|
66
|
+
* document rather than persist. Persist via the host's state store (do not
|
|
67
|
+
* invent a new storage layer) before running multiple instances.
|
|
68
|
+
*/
|
|
69
|
+
export declare function createInMemoryMcpProofReplayStore(): McpProofReplayStore;
|
|
70
|
+
export interface CreateMcpSessionInput {
|
|
71
|
+
builderAddress: `0x${string}`;
|
|
72
|
+
grantId: string;
|
|
73
|
+
/**
|
|
74
|
+
* Handshake-proof replay guard. When supplied together with a `replayStore`,
|
|
75
|
+
* a proof id already seen (and still live) is rejected instead of minting a
|
|
76
|
+
* fresh token. `expiresAtMs` bounds how long the id is remembered (the
|
|
77
|
+
* proof's own expiry).
|
|
78
|
+
*/
|
|
79
|
+
proof?: {
|
|
80
|
+
id: string;
|
|
81
|
+
expiresAtMs: number;
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
export interface CreateMcpSessionOptions {
|
|
85
|
+
store: McpSessionStore;
|
|
86
|
+
authSessionVerifier: AuthSessionVerifierPort;
|
|
87
|
+
grantVerifier: GrantVerifierPort;
|
|
88
|
+
/**
|
|
89
|
+
* This server's owner address. The grant's grantor MUST equal it — mirrors
|
|
90
|
+
* `verifyDataReadPolicy`'s ownership binding (see policy/data-read.ts).
|
|
91
|
+
* Required (not optional) so TypeScript flags any caller that would mint a
|
|
92
|
+
* session for a grant issued by a different owner.
|
|
93
|
+
*/
|
|
94
|
+
serverOwner: `0x${string}`;
|
|
95
|
+
randomToken: () => string;
|
|
96
|
+
ttlMs?: number;
|
|
97
|
+
now?: () => number;
|
|
98
|
+
/** Optional replay guard for the handshake proof (see `input.proof`). */
|
|
99
|
+
replayStore?: McpProofReplayStore;
|
|
100
|
+
}
|
|
101
|
+
export interface CreateMcpSessionResult {
|
|
102
|
+
accessToken: string;
|
|
103
|
+
expiresInSeconds: number;
|
|
104
|
+
grantId: string;
|
|
105
|
+
scopes: string[];
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Validate the handshake identity and mint a session token. Per-scope / expiry
|
|
109
|
+
* enforcement is authoritative at read time (`verifyDataReadPolicy`), so this
|
|
110
|
+
* does the minimal checks that give a clear handshake error: builder registered,
|
|
111
|
+
* grant exists + not revoked, and grantee == builder.
|
|
112
|
+
*/
|
|
113
|
+
export declare function createMcpSession(input: CreateMcpSessionInput, options: CreateMcpSessionOptions): Promise<CreateMcpSessionResult>;
|
|
114
|
+
/**
|
|
115
|
+
* An auth port bound to one session's `{ builderAddress, grantId }`. Reads
|
|
116
|
+
* authorize by running `verifyDataReadPolicy` with the builder address proven at
|
|
117
|
+
* handshake — no signature needed. Owner ops are refused.
|
|
118
|
+
*/
|
|
119
|
+
/**
|
|
120
|
+
* x402 payment binding for a paid (self-signing) session. When present, every
|
|
121
|
+
* read runs the same challenge-or-settle cycle as an external builder's
|
|
122
|
+
* `GET /v1/data/:scope`. Omit it (owner's-Claude path) to keep reads free.
|
|
123
|
+
*/
|
|
124
|
+
export interface McpSessionPaymentConfig {
|
|
125
|
+
/** Payment-enabled data-API deps (storage, serverSigner, serverAddress, …). */
|
|
126
|
+
dataApiDeps: PersonalServerDataApiDeps;
|
|
127
|
+
gateway: Pick<GatewayClient, "getGrant">;
|
|
128
|
+
gatewayConfig: DataPortabilityGatewayConfig;
|
|
129
|
+
gatewayUrl: string;
|
|
130
|
+
}
|
|
131
|
+
export declare function createMcpSessionAuthPort(params: {
|
|
132
|
+
builderAddress: `0x${string}`;
|
|
133
|
+
grantId: string;
|
|
134
|
+
authSessionVerifier: AuthSessionVerifierPort;
|
|
135
|
+
grantVerifier: GrantVerifierPort;
|
|
136
|
+
/**
|
|
137
|
+
* This server's owner address, required by `verifyDataReadPolicy` to bind
|
|
138
|
+
* every session read to a grant issued by THIS server's owner.
|
|
139
|
+
*/
|
|
140
|
+
serverOwner: `0x${string}`;
|
|
141
|
+
runtimeAvailability?: RuntimeAvailabilityPort;
|
|
142
|
+
/** Present only for paid self-signing sessions; absent = free. */
|
|
143
|
+
payment?: McpSessionPaymentConfig;
|
|
144
|
+
}): PersonalServerApiAuthPort;
|
|
145
|
+
export interface McpSessionConnection {
|
|
146
|
+
connection: McpConnectionRecord;
|
|
147
|
+
account: ServerAccount;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Build a synthetic connection record + a throwaway signing account for the
|
|
151
|
+
* streamable `/mcp` handler. The MCP read client still signs its in-process
|
|
152
|
+
* request (the read path requires an account), but the session auth port
|
|
153
|
+
* ignores that signature and authorizes as the real builder — so this key is
|
|
154
|
+
* disposable and never leaves the process.
|
|
155
|
+
*/
|
|
156
|
+
export declare function buildMcpSessionConnection(session: Pick<McpSessionRecord, "builderAddress" | "grantId" | "scopes">, options?: {
|
|
157
|
+
id?: string;
|
|
158
|
+
now?: () => number;
|
|
159
|
+
}): McpSessionConnection;
|
|
160
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}
|