@aotter/mantle-runtime 0.1.0-alpha.9 → 0.1.2-alpha.2
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 +74 -4
- package/dist/MantleRuntime.js +14 -6
- package/dist/MantleRuntime.js.map +1 -1
- package/dist/domain/model/EntryRow.d.ts +16 -16
- package/dist/domain/model/EntryRow.d.ts.map +1 -1
- package/dist/domain/model/EntryRow.js +34 -0
- package/dist/domain/model/EntryRow.js.map +1 -1
- package/dist/domain/port/DatabaseDriver.d.ts +2 -2
- package/dist/domain/port/DatabaseDriver.d.ts.map +1 -1
- package/dist/domain/port/EntryReader.d.ts +38 -3
- package/dist/domain/port/EntryReader.d.ts.map +1 -1
- package/dist/domain/port/EntryRepository.d.ts +13 -6
- package/dist/domain/port/EntryRepository.d.ts.map +1 -1
- package/dist/domain/port/index.d.ts +2 -2
- package/dist/domain/port/index.d.ts.map +1 -1
- package/dist/domain/port/index.js.map +1 -1
- package/dist/domain/service/CallableCapabilityProjector.d.ts +28 -0
- package/dist/domain/service/CallableCapabilityProjector.d.ts.map +1 -0
- package/dist/domain/service/CallableCapabilityProjector.js +67 -0
- package/dist/domain/service/CallableCapabilityProjector.js.map +1 -0
- package/dist/domain/service/EntryMutationDiagnostics.d.ts.map +1 -1
- package/dist/domain/service/EntryMutationDiagnostics.js +11 -1
- package/dist/domain/service/EntryMutationDiagnostics.js.map +1 -1
- package/dist/domain/service/PathMatcher.d.ts +7 -0
- package/dist/domain/service/PathMatcher.d.ts.map +1 -1
- package/dist/domain/service/PathMatcher.js +56 -0
- package/dist/domain/service/PathMatcher.js.map +1 -1
- package/dist/domain/service/RuntimePlanCompiler.d.ts +7 -2
- package/dist/domain/service/RuntimePlanCompiler.d.ts.map +1 -1
- package/dist/domain/service/RuntimePlanCompiler.js +1 -0
- package/dist/domain/service/RuntimePlanCompiler.js.map +1 -1
- package/dist/domain/service/index.d.ts +1 -0
- package/dist/domain/service/index.d.ts.map +1 -1
- package/dist/domain/service/index.js +1 -0
- package/dist/domain/service/index.js.map +1 -1
- package/dist/domain/service/io/JoinedEntryReader.d.ts.map +1 -1
- package/dist/domain/service/io/JoinedEntryReader.js +2 -3
- package/dist/domain/service/io/JoinedEntryReader.js.map +1 -1
- package/dist/index.d.ts +12 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts +1 -0
- package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts.map +1 -1
- package/dist/infrastructure/boot/SqliteMigrationRunner.js +71 -12
- package/dist/infrastructure/boot/SqliteMigrationRunner.js.map +1 -1
- package/dist/infrastructure/boot/bootState.d.ts +2 -0
- package/dist/infrastructure/boot/bootState.d.ts.map +1 -1
- package/dist/infrastructure/boot/bootState.js +3 -1
- package/dist/infrastructure/boot/bootState.js.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.d.ts +4 -15
- package/dist/infrastructure/boot/canonicalMigrations.d.ts.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.js +14 -200
- package/dist/infrastructure/boot/canonicalMigrations.js.map +1 -1
- package/dist/infrastructure/boot/index.d.ts +2 -2
- package/dist/infrastructure/boot/index.d.ts.map +1 -1
- package/dist/infrastructure/boot/index.js +2 -2
- package/dist/infrastructure/boot/index.js.map +1 -1
- package/dist/infrastructure/http/createMantleRequestHandler.d.ts +3 -0
- package/dist/infrastructure/http/createMantleRequestHandler.d.ts.map +1 -1
- package/dist/infrastructure/http/createMantleRequestHandler.js +36 -15
- package/dist/infrastructure/http/createMantleRequestHandler.js.map +1 -1
- package/dist/infrastructure/http/readJsonBody.d.ts +8 -0
- package/dist/infrastructure/http/readJsonBody.d.ts.map +1 -0
- package/dist/infrastructure/http/readJsonBody.js +36 -0
- package/dist/infrastructure/http/readJsonBody.js.map +1 -0
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts +22 -17
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts.map +1 -1
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js +89 -86
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js.map +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.d.ts +11 -9
- package/dist/infrastructure/mcp/McpToolCatalog.d.ts.map +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.js +70 -80
- package/dist/infrastructure/mcp/McpToolCatalog.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts +15 -20
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js +291 -331
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.d.ts +2 -0
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js +5 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js.map +1 -1
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.d.ts +2 -2
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.js +5 -5
- package/dist/infrastructure/persistence/LifecycleHookingEntryRepository.js.map +1 -1
- package/dist/infrastructure/persistence/Pagination.d.ts +6 -0
- package/dist/infrastructure/persistence/Pagination.d.ts.map +1 -1
- package/dist/infrastructure/persistence/Pagination.js +25 -0
- package/dist/infrastructure/persistence/Pagination.js.map +1 -1
- package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts +15 -1
- package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts.map +1 -1
- package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js +64 -9
- package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js.map +1 -1
- package/dist/infrastructure/storage/SqliteMigrationArtifact.d.ts +19 -0
- package/dist/infrastructure/storage/SqliteMigrationArtifact.d.ts.map +1 -0
- package/dist/infrastructure/storage/SqliteMigrationArtifact.js +41 -0
- package/dist/infrastructure/storage/SqliteMigrationArtifact.js.map +1 -0
- package/dist/infrastructure/storage/SqliteSchemaTables.d.ts +23 -0
- package/dist/infrastructure/storage/SqliteSchemaTables.d.ts.map +1 -0
- package/dist/infrastructure/storage/SqliteSchemaTables.js +244 -0
- package/dist/infrastructure/storage/SqliteSchemaTables.js.map +1 -0
- package/dist/infrastructure/storage/SqliteViewCompiler.d.ts +3 -5
- package/dist/infrastructure/storage/SqliteViewCompiler.d.ts.map +1 -1
- package/dist/infrastructure/storage/SqliteViewCompiler.js +20 -51
- package/dist/infrastructure/storage/SqliteViewCompiler.js.map +1 -1
- package/dist/infrastructure/testing/HttpBenchmarkHarness.d.ts +26 -1
- package/dist/infrastructure/testing/HttpBenchmarkHarness.d.ts.map +1 -1
- package/dist/infrastructure/testing/HttpBenchmarkHarness.js +27 -12
- package/dist/infrastructure/testing/HttpBenchmarkHarness.js.map +1 -1
- package/dist/infrastructure/testing/IndexCoverageHarness.d.ts.map +1 -1
- package/dist/infrastructure/testing/IndexCoverageHarness.js +19 -31
- package/dist/infrastructure/testing/IndexCoverageHarness.js.map +1 -1
- package/dist/infrastructure/testing/StorageConformance.d.ts +32 -0
- package/dist/infrastructure/testing/StorageConformance.d.ts.map +1 -0
- package/dist/infrastructure/testing/StorageConformance.js +306 -0
- package/dist/infrastructure/testing/StorageConformance.js.map +1 -0
- package/dist/testing-storage.d.ts +3 -0
- package/dist/testing-storage.d.ts.map +1 -0
- package/dist/testing-storage.js +3 -0
- package/dist/testing-storage.js.map +1 -0
- package/dist/usecase/content/ArchiveUseCase.js +4 -4
- package/dist/usecase/content/ArchiveUseCase.js.map +1 -1
- package/dist/usecase/content/DeleteEntryUseCase.js +4 -4
- package/dist/usecase/content/DeleteEntryUseCase.js.map +1 -1
- package/dist/usecase/content/GetEntryUseCase.d.ts +1 -2
- package/dist/usecase/content/GetEntryUseCase.d.ts.map +1 -1
- package/dist/usecase/content/GetEntryUseCase.js +2 -6
- package/dist/usecase/content/GetEntryUseCase.js.map +1 -1
- package/dist/usecase/content/ListEntriesUseCase.d.ts +1 -1
- package/dist/usecase/content/ListEntriesUseCase.d.ts.map +1 -1
- package/dist/usecase/content/ListEntriesUseCase.js +18 -2
- package/dist/usecase/content/ListEntriesUseCase.js.map +1 -1
- package/dist/usecase/content/RequestPublishUseCase.js +4 -4
- package/dist/usecase/content/RequestPublishUseCase.js.map +1 -1
- package/dist/usecase/content/UnpublishUseCase.js +4 -4
- package/dist/usecase/content/UnpublishUseCase.js.map +1 -1
- package/dist/usecase/content/UpdateDraftUseCase.js +4 -4
- package/dist/usecase/content/UpdateDraftUseCase.js.map +1 -1
- package/dist/usecase/dto/content/index.d.ts +8 -5
- package/dist/usecase/dto/content/index.d.ts.map +1 -1
- package/dist/usecase/media/DeleteMediaAssetUseCase.d.ts +3 -3
- package/dist/usecase/media/DeleteMediaAssetUseCase.d.ts.map +1 -1
- package/dist/usecase/media/DeleteMediaAssetUseCase.js +35 -19
- package/dist/usecase/media/DeleteMediaAssetUseCase.js.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +8 -2
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js +98 -16
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js.map +1 -1
- package/dist/usecase/procedure/InvokeProcedureUseCase.js +2 -2
- package/dist/usecase/procedure/InvokeProcedureUseCase.js.map +1 -1
- package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts.map +1 -1
- package/dist/usecase/site/UpdateSiteSettingsUseCase.js +8 -1
- package/dist/usecase/site/UpdateSiteSettingsUseCase.js.map +1 -1
- package/package.json +9 -5
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { DiagnosticError, redactForWire, runtimeDiagnostic, } from "@aotter/mantle-spec";
|
|
2
|
-
import {
|
|
3
|
-
import { CREATE_DRAFT_PREFIX, CREATE_RECORD_PREFIX, QUERY_VIEW_PREFIX, UPDATE_DRAFT_PREFIX, UPDATE_RECORD_PREFIX, buildMcpToolCatalog, extractCollectionSegment, } from "./McpToolCatalog.js";
|
|
1
|
+
import { DiagnosticError, meetsRole, mcpToolNameSegment, redactForWire, runtimeDiagnostic, resolveLifecycle, } from "@aotter/mantle-spec";
|
|
2
|
+
import { CREATE_DRAFT_PREFIX, CONTENT_LIFECYCLE_TOOLS, CREATE_RECORD_PREFIX, UPDATE_DRAFT_PREFIX, UPDATE_RECORD_PREFIX, buildMcpToolCatalog, extractCollectionSegment, } from "./McpToolCatalog.js";
|
|
4
3
|
import { jsonRpcError, jsonRpcOk, jsonRpcOkRaw, } from "./McpResponses.js";
|
|
5
4
|
import packageJson from "../../../package.json" with { type: "json" };
|
|
5
|
+
import { JsonBodyTooLargeError, readJsonBody } from "../http/readJsonBody.js";
|
|
6
6
|
export const MCP_PROTOCOL_VERSION = "2025-11-25";
|
|
7
7
|
export class McpJsonRpcDispatcher {
|
|
8
8
|
useCases;
|
|
@@ -17,9 +17,7 @@ export class McpJsonRpcDispatcher {
|
|
|
17
17
|
* collection name. */
|
|
18
18
|
schemaBySegment;
|
|
19
19
|
readOnlyCollections;
|
|
20
|
-
|
|
21
|
-
/** tool-name → Procedure manifest, for MCP triggers (#281). */
|
|
22
|
-
procedureByToolName;
|
|
20
|
+
capabilityByToolName;
|
|
23
21
|
constructor(useCases, schemas, options = {}) {
|
|
24
22
|
this.useCases = useCases;
|
|
25
23
|
this.schemas = schemas;
|
|
@@ -28,8 +26,7 @@ export class McpJsonRpcDispatcher {
|
|
|
28
26
|
surface: options.surface ?? "staff",
|
|
29
27
|
mediaEnabled: useCases.media !== undefined,
|
|
30
28
|
mediaPurposes: useCases.media?.purposes,
|
|
31
|
-
|
|
32
|
-
procedures: options.procedures,
|
|
29
|
+
capabilities: options.capabilities,
|
|
33
30
|
});
|
|
34
31
|
this.catalogWireJson = `{"tools":${JSON.stringify(this.catalog)}}`;
|
|
35
32
|
this.catalogToolNames = new Set(this.catalog.map((tool) => tool.name));
|
|
@@ -38,15 +35,9 @@ export class McpJsonRpcDispatcher {
|
|
|
38
35
|
for (const s of schemas)
|
|
39
36
|
map.set(mcpToolNameSegment(s.metadata.name), s.metadata.name);
|
|
40
37
|
this.schemaBySegment = map;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
this.viewBySegment = views;
|
|
45
|
-
const procs = new Map();
|
|
46
|
-
for (const p of options.procedures ?? []) {
|
|
47
|
-
procs.set(mcpToolNameSegment(p.metadata.name), p);
|
|
48
|
-
}
|
|
49
|
-
this.procedureByToolName = procs;
|
|
38
|
+
this.capabilityByToolName = new Map((options.capabilities ?? [])
|
|
39
|
+
.filter((item) => item.surface === (options.surface ?? "staff"))
|
|
40
|
+
.map((item) => [item.name, item]));
|
|
50
41
|
}
|
|
51
42
|
async dispatch(req, ctx) {
|
|
52
43
|
if (req.method !== "POST") {
|
|
@@ -54,9 +45,12 @@ export class McpJsonRpcDispatcher {
|
|
|
54
45
|
}
|
|
55
46
|
let body;
|
|
56
47
|
try {
|
|
57
|
-
body = (await req
|
|
48
|
+
body = (await readJsonBody(req));
|
|
58
49
|
}
|
|
59
|
-
catch {
|
|
50
|
+
catch (error) {
|
|
51
|
+
if (error instanceof JsonBodyTooLargeError) {
|
|
52
|
+
return new Response(error.message, { status: 413 });
|
|
53
|
+
}
|
|
60
54
|
return jsonRpcError(null, -32700, "parse error");
|
|
61
55
|
}
|
|
62
56
|
if (!body
|
|
@@ -123,17 +117,12 @@ export class McpJsonRpcDispatcher {
|
|
|
123
117
|
}
|
|
124
118
|
}
|
|
125
119
|
async dispatchToolByName(name, args, ctx) {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
// collision check runs at boot so we don't have to disambiguate
|
|
130
|
-
// here.
|
|
131
|
-
const procedure = this.procedureByToolName.get(name);
|
|
132
|
-
if (procedure) {
|
|
133
|
-
if (!this.useCases.invokeProcedure)
|
|
120
|
+
const capability = this.capabilityByToolName.get(name);
|
|
121
|
+
if (capability?.kind === "procedure") {
|
|
122
|
+
if (!this.useCases.invokeTrigger)
|
|
134
123
|
return UNKNOWN_TOOL;
|
|
135
|
-
const result = await this.useCases.
|
|
136
|
-
|
|
124
|
+
const result = await this.useCases.invokeTrigger.execute({
|
|
125
|
+
trigger: capability.trigger,
|
|
137
126
|
input: args,
|
|
138
127
|
ctx,
|
|
139
128
|
pathPrefix: `MCP ${name}`,
|
|
@@ -142,20 +131,15 @@ export class McpJsonRpcDispatcher {
|
|
|
142
131
|
throw new DiagnosticError(result.diagnostic);
|
|
143
132
|
return result.data;
|
|
144
133
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
// resolve a staff View while staff MCP can list and invoke it.
|
|
148
|
-
const viewSegment = extractCollectionSegment(name, QUERY_VIEW_PREFIX);
|
|
149
|
-
if (viewSegment) {
|
|
150
|
-
const view = this.viewBySegment.get(viewSegment);
|
|
151
|
-
if (!view || !this.useCases.executeView)
|
|
134
|
+
if (capability?.kind === "view") {
|
|
135
|
+
if (!this.useCases.executeView)
|
|
152
136
|
return UNKNOWN_TOOL;
|
|
153
137
|
// Use the adapter-normalized caller so the executeView use case can
|
|
154
138
|
// evaluate `requires.auth.all`. Without
|
|
155
139
|
// this, every auth-gated public-surface View returned
|
|
156
140
|
// UNAUTHENTICATED for every caller including authenticated staff.
|
|
157
141
|
const result = await this.useCases.executeView.execute({
|
|
158
|
-
view,
|
|
142
|
+
view: capability.manifest,
|
|
159
143
|
options: {
|
|
160
144
|
params: stripViewReservedArgs(args),
|
|
161
145
|
page: typeof args["page"] === "number" ? args["page"] : undefined,
|
|
@@ -171,77 +155,56 @@ export class McpJsonRpcDispatcher {
|
|
|
171
155
|
if ((this.options.surface ?? "staff") === "public") {
|
|
172
156
|
return UNKNOWN_TOOL;
|
|
173
157
|
}
|
|
158
|
+
const minimumRole = genericStaffToolMinimumRole(name);
|
|
159
|
+
if (minimumRole)
|
|
160
|
+
this.assertStaffRole(name, ctx, minimumRole);
|
|
174
161
|
switch (name) {
|
|
175
|
-
case "list_entries": {
|
|
176
|
-
const collection = args["collection"];
|
|
177
|
-
if (typeof collection !== "string")
|
|
178
|
-
return MISSING_ARG;
|
|
179
|
-
// MCP exposes the cursored shape so agents can walk pages
|
|
180
|
-
// through `nextCursor`. App code reaches for `execute()`
|
|
181
|
-
// instead and gets a flat array.
|
|
182
|
-
return this.useCases.listEntries.executePage({
|
|
183
|
-
collection,
|
|
184
|
-
status: args["status"],
|
|
185
|
-
search: typeof args["search"] === "string" ? args["search"] : undefined,
|
|
186
|
-
sort: typeof args["sort"] === "string"
|
|
187
|
-
? {
|
|
188
|
-
field: args["sort"],
|
|
189
|
-
direction: args["direction"] === "asc" ? "asc" : "desc",
|
|
190
|
-
}
|
|
191
|
-
: undefined,
|
|
192
|
-
limit: typeof args["limit"] === "number" ? args["limit"] : undefined,
|
|
193
|
-
cursor: typeof args["cursor"] === "string" ? args["cursor"] : undefined,
|
|
194
|
-
cursorDirection: args["cursorDirection"] === "backward" ? "backward" : "forward",
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
case "get_entry": {
|
|
198
|
-
const id = args["id"];
|
|
199
|
-
if (typeof id !== "string")
|
|
200
|
-
return MISSING_ARG;
|
|
201
|
-
return this.useCases.getEntry.execute({ id });
|
|
202
|
-
}
|
|
203
162
|
case "request_publish": {
|
|
204
163
|
const id = args["id"];
|
|
205
|
-
|
|
164
|
+
const collection = args["collection"];
|
|
165
|
+
if (typeof id !== "string" || typeof collection !== "string")
|
|
206
166
|
return MISSING_ARG;
|
|
207
|
-
await this.assertEntryMutable(id, name);
|
|
167
|
+
await this.assertEntryMutable(id, name, collection);
|
|
208
168
|
return this.useCases.requestPublish.execute({
|
|
209
|
-
id,
|
|
169
|
+
id, collection,
|
|
210
170
|
ctx,
|
|
211
|
-
originalInput:
|
|
171
|
+
originalInput: { id },
|
|
212
172
|
});
|
|
213
173
|
}
|
|
214
174
|
case "unpublish_entry": {
|
|
215
175
|
const id = args["id"];
|
|
216
|
-
|
|
176
|
+
const collection = args["collection"];
|
|
177
|
+
if (typeof id !== "string" || typeof collection !== "string")
|
|
217
178
|
return MISSING_ARG;
|
|
218
|
-
await this.assertEntryMutable(id, name);
|
|
179
|
+
await this.assertEntryMutable(id, name, collection);
|
|
219
180
|
return this.useCases.unpublish.execute({
|
|
220
|
-
id,
|
|
181
|
+
id, collection,
|
|
221
182
|
ctx,
|
|
222
|
-
originalInput:
|
|
183
|
+
originalInput: { id },
|
|
223
184
|
});
|
|
224
185
|
}
|
|
225
186
|
case "archive_entry": {
|
|
226
187
|
const id = args["id"];
|
|
227
|
-
|
|
188
|
+
const collection = args["collection"];
|
|
189
|
+
if (typeof id !== "string" || typeof collection !== "string")
|
|
228
190
|
return MISSING_ARG;
|
|
229
|
-
await this.assertEntryMutable(id, name);
|
|
191
|
+
await this.assertEntryMutable(id, name, collection);
|
|
230
192
|
return this.useCases.archive.execute({
|
|
231
|
-
id,
|
|
193
|
+
id, collection,
|
|
232
194
|
ctx,
|
|
233
|
-
originalInput:
|
|
195
|
+
originalInput: { id },
|
|
234
196
|
});
|
|
235
197
|
}
|
|
236
198
|
case "delete_entry": {
|
|
237
199
|
const id = args["id"];
|
|
238
|
-
|
|
200
|
+
const collection = args["collection"];
|
|
201
|
+
if (typeof id !== "string" || typeof collection !== "string")
|
|
239
202
|
return MISSING_ARG;
|
|
240
|
-
await this.assertEntryMutable(id, name);
|
|
203
|
+
await this.assertEntryMutable(id, name, collection);
|
|
241
204
|
return this.useCases.deleteEntry.execute({
|
|
242
|
-
id,
|
|
205
|
+
id, collection,
|
|
243
206
|
ctx,
|
|
244
|
-
originalInput:
|
|
207
|
+
originalInput: { id },
|
|
245
208
|
});
|
|
246
209
|
}
|
|
247
210
|
case "create_media_upload": {
|
|
@@ -321,12 +284,11 @@ export class McpJsonRpcDispatcher {
|
|
|
321
284
|
const expected = args["expected_version"];
|
|
322
285
|
if (typeof id !== "string" || typeof expected !== "number")
|
|
323
286
|
return MISSING_ARG;
|
|
324
|
-
|
|
325
|
-
// the collection on the chokepoint args because UpdateDraft
|
|
326
|
-
// looks it up from the existing row.
|
|
287
|
+
await this.assertEntryMutable(id, name, collection);
|
|
327
288
|
const data = stripReservedArgs(args);
|
|
328
289
|
return this.useCases.updateDraft.execute({
|
|
329
290
|
id,
|
|
291
|
+
collection,
|
|
330
292
|
expectedVersion: expected,
|
|
331
293
|
data,
|
|
332
294
|
ctx,
|
|
@@ -337,8 +299,28 @@ export class McpJsonRpcDispatcher {
|
|
|
337
299
|
}
|
|
338
300
|
}
|
|
339
301
|
}
|
|
340
|
-
|
|
341
|
-
const
|
|
302
|
+
assertStaffRole(toolName, ctx, minimumRole) {
|
|
303
|
+
const role = ctx.staff?.role;
|
|
304
|
+
if (role && meetsRole(role, minimumRole))
|
|
305
|
+
return;
|
|
306
|
+
throw new DiagnosticError(runtimeDiagnostic({
|
|
307
|
+
code: "AUTH_DENIED",
|
|
308
|
+
severity: "error",
|
|
309
|
+
path: `MCP ${toolName}`,
|
|
310
|
+
expected: `${minimumRole} role or higher for the signed-in staff user`,
|
|
311
|
+
message: `Tool '${toolName}' requires the ${minimumRole} role.`,
|
|
312
|
+
}));
|
|
313
|
+
}
|
|
314
|
+
async assertEntryMutable(id, toolName, collection) {
|
|
315
|
+
const entry = await this.useCases.getEntry.execute({ id, collection });
|
|
316
|
+
const schema = this.schemas.find((s) => s.metadata.name === entry.collection);
|
|
317
|
+
if (CONTENT_LIFECYCLE_TOOLS.has(toolName) && (!schema || resolveLifecycle(schema) === "operational")) {
|
|
318
|
+
throw new DiagnosticError(runtimeDiagnostic({
|
|
319
|
+
code: "CONFLICT", severity: "error", path: `MCP ${toolName}`,
|
|
320
|
+
value: entry.collection, expected: "a content lifecycle",
|
|
321
|
+
message: `Tool '${toolName}' requires a content lifecycle; '${entry.collection}' does not support publishing transitions. Use its declared Procedures.`,
|
|
322
|
+
}));
|
|
323
|
+
}
|
|
342
324
|
if (!this.readOnlyCollections.has(entry.collection))
|
|
343
325
|
return;
|
|
344
326
|
throw new DiagnosticError(runtimeDiagnostic({
|
|
@@ -353,6 +335,27 @@ export class McpJsonRpcDispatcher {
|
|
|
353
335
|
}
|
|
354
336
|
const UNKNOWN_TOOL = Symbol("unknown-tool");
|
|
355
337
|
const MISSING_ARG = Symbol("missing-arg");
|
|
338
|
+
const EDITOR_GENERIC_TOOLS = new Set([
|
|
339
|
+
"request_publish",
|
|
340
|
+
"unpublish_entry",
|
|
341
|
+
"archive_entry",
|
|
342
|
+
"delete_entry",
|
|
343
|
+
"create_media_upload",
|
|
344
|
+
"commit_media_upload",
|
|
345
|
+
]);
|
|
346
|
+
function genericStaffToolMinimumRole(name) {
|
|
347
|
+
if (EDITOR_GENERIC_TOOLS.has(name))
|
|
348
|
+
return "editor";
|
|
349
|
+
if (extractCollectionSegment(name, CREATE_RECORD_PREFIX) ||
|
|
350
|
+
extractCollectionSegment(name, UPDATE_RECORD_PREFIX)) {
|
|
351
|
+
return "editor";
|
|
352
|
+
}
|
|
353
|
+
if (extractCollectionSegment(name, CREATE_DRAFT_PREFIX) ||
|
|
354
|
+
extractCollectionSegment(name, UPDATE_DRAFT_PREFIX)) {
|
|
355
|
+
return "contributor";
|
|
356
|
+
}
|
|
357
|
+
return null;
|
|
358
|
+
}
|
|
356
359
|
/**
|
|
357
360
|
* Strip the `id` + `expected_version` envelope keys before passing
|
|
358
361
|
* the rest to the chokepoint as `data`. Per-collection update tools
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpJsonRpcDispatcher.js","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpJsonRpcDispatcher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"McpJsonRpcDispatcher.js","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpJsonRpcDispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type MediaPurposePolicy, type
|
|
1
|
+
import { type MediaPurposePolicy, type SchemaManifest } from "@aotter/mantle-spec";
|
|
2
|
+
import type { RuntimeCallableCapability } from "../../domain/service/CallableCapabilityProjector.js";
|
|
2
3
|
/**
|
|
3
|
-
* MCP tool catalog. Mix of generic tools
|
|
4
|
-
* that take only an `id`) plus per-collection emitted authoring
|
|
4
|
+
* MCP tool catalog. Mix of generic lifecycle tools plus per-collection emitted authoring
|
|
5
5
|
* tools (`create_draft_*` / `update_draft_*` for authored content,
|
|
6
6
|
* `create_record_*` / `update_record_*` for operational records)
|
|
7
7
|
* with the Schema's properties inlined into the tool's `inputSchema`
|
|
@@ -29,8 +29,12 @@ import { type MediaPurposePolicy, type ProcedureManifest, type SchemaManifest, t
|
|
|
29
29
|
*/
|
|
30
30
|
export interface McpToolDefinition {
|
|
31
31
|
readonly name: string;
|
|
32
|
+
readonly title?: string;
|
|
32
33
|
readonly description: string;
|
|
33
34
|
readonly inputSchema: Record<string, unknown>;
|
|
35
|
+
readonly annotations?: {
|
|
36
|
+
readonly readOnlyHint?: boolean;
|
|
37
|
+
};
|
|
34
38
|
}
|
|
35
39
|
export declare const COMMIT_MEDIA_UPLOAD_TOOL: McpToolDefinition;
|
|
36
40
|
export declare const GENERIC_TOOLS: readonly McpToolDefinition[];
|
|
@@ -60,14 +64,12 @@ export interface BuildMcpToolCatalogOpts {
|
|
|
60
64
|
/** Staff surface exposes authoring / lifecycle tools. Public
|
|
61
65
|
* surface exposes only read-only View queries for v0.1. */
|
|
62
66
|
readonly surface?: McpToolSurface;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
* matching Procedures here. The catalog factory does NOT re-filter
|
|
67
|
-
* by surface — caller is authoritative. */
|
|
68
|
-
readonly procedures?: ReadonlyArray<ProcedureManifest>;
|
|
67
|
+
/** Sealed-plan callable projection. The same descriptors drive
|
|
68
|
+
* discovery and tools/call routing. */
|
|
69
|
+
readonly capabilities?: readonly RuntimeCallableCapability[];
|
|
69
70
|
}
|
|
70
71
|
export declare function buildMcpToolCatalog(schemas: ReadonlyArray<SchemaManifest>, opts?: BuildMcpToolCatalogOpts): readonly McpToolDefinition[];
|
|
72
|
+
export declare const CONTENT_LIFECYCLE_TOOLS: ReadonlySet<string>;
|
|
71
73
|
/** Re-export the naming util from `domain/service/` so existing
|
|
72
74
|
* consumers of `McpToolCatalog` (the dispatcher) keep their import
|
|
73
75
|
* surface stable. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolCatalog.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpToolCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"McpToolCatalog.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/mcp/McpToolCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAEV,yBAAyB,EAE1B,MAAM,qDAAqD,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;KACjC,CAAC;CACH;AAED,eAAO,MAAM,wBAAwB,EAAE,iBAiBtC,CAAC;AAqGF,eAAO,MAAM,aAAa,EAAE,SAAS,iBAAiB,EAqCrD,CAAC;AAEF,eAAO,MAAM,mBAAmB,kBAA0B,CAAC;AAC3D,eAAO,MAAM,mBAAmB,kBAA0B,CAAC;AAC3D,eAAO,MAAM,oBAAoB,mBAA2B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,mBAA2B,CAAC;AAC7D,eAAO,MAAM,iBAAiB,gBAAwB,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEhD;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC;;uCAEmC;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;sDAKkD;IAClD,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACvD;gEAC4D;IAC5D,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC;4CACwC;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;CAC9D;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,EACtC,IAAI,GAAE,uBAA4B,GACjC,SAAS,iBAAiB,EAAE,CA2B9B;AAED,eAAO,MAAM,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAEtD,CAAC;AAqFH;;sBAEsB;AACtB;oEACoE;AACpE,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAIf"}
|