@gwdn/nexus-mcp 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/server.js CHANGED
@@ -85,6 +85,9 @@ import { appendSessionEntry, appendSessionEntrySchema, } from './tools/append-se
85
85
  import { createTask, createTaskSchema } from './tools/create-task.js';
86
86
  import { addDecisionComment, addDecisionCommentSchema, listDecisionComments, listDecisionCommentsSchema, } from './tools/decision-comments.js';
87
87
  import { ingestDocument, ingestDocumentSchema, } from './tools/ingest-document.js';
88
+ import { classifyDocument, classifyDocumentSchema, } from './tools/classify-document.js';
89
+ import { updateDocument, updateDocumentSchema, } from './tools/update-document.js';
90
+ import { deleteDocument, deleteDocumentSchema, } from './tools/delete-document.js';
88
91
  import { acknowledgeLetter, acknowledgeLetterSchema, listInbox, listInboxSchema, listOutbox, listOutboxSchema, } from './tools/letter-inbox.js';
89
92
  import { createLetter, createLetterSchema, replyLetter, replyLetterSchema, } from './tools/letters.js';
90
93
  import { listDocuments, listDocumentsSchema, } from './tools/list-documents.js';
@@ -146,6 +149,9 @@ server.tool('task_note', 'Append a note to an existing task. Notes are append-on
146
149
  server.tool('task_list', 'List tasks for a project with optional status filtering. Returns tasks ordered by creation date (newest first).', listTasksSchema, withIdentity(listTasks));
147
150
  server.tool('doc_ingest', 'Push text or markdown content into a project knowledge base. Creates an ingest item that can later be classified. Useful for agents to persist research results, generated documents, or extracted knowledge.', ingestDocumentSchema, withIdentity(ingestDocument));
148
151
  server.tool('doc_list', 'List ingested documents for a project with optional source filtering. Returns documents ordered by creation date (newest first).', listDocumentsSchema, withIdentity(listDocuments));
152
+ server.tool('doc_classify', 'Update the classification of an ingest item. Valid classifications: unclassified, research_note, planning_item, decision_input, reference, archive.', classifyDocumentSchema, withIdentity(classifyDocument));
153
+ server.tool('doc_update', 'Update title, body, or source_url of an ingest item. Supports full body replacement or append mode via append_body. At least one field must be provided.', updateDocumentSchema, withIdentity(updateDocument));
154
+ server.tool('doc_delete', 'Delete an ingest item from a project knowledge base. This action is irreversible.', deleteDocumentSchema, withIdentity(deleteDocument));
149
155
  server.tool('session_append', 'Append an entry to an existing session. Enforces session write isolation: only the session creator can append entries.', appendSessionEntrySchema, withIdentity(appendSessionEntry));
150
156
  server.tool('session_create', 'Create a new work session for a project. Returns the session ID. The session starts in open status and must be closed explicitly via session_close.', createSessionSchema, withIdentity(createSession));
151
157
  server.tool('session_close', 'Close an open session. Sets status to closed, optionally records a summary and next entry point. Only the session creator can close it.', closeSessionSchema, withIdentity(closeSession));
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * doc_classify -- Layer 2 Coordination
3
+ *
4
+ * Update the classification of an ingest item.
5
+ * Delegates to POST /api/mcp/documents (action: doc_classify).
6
+ */
7
+ import { z } from 'zod';
8
+ export declare const classifyDocumentSchema: {
9
+ document_id: z.ZodString;
10
+ classification: z.ZodEnum<{
11
+ research_note: "research_note";
12
+ planning_item: "planning_item";
13
+ unclassified: "unclassified";
14
+ decision_input: "decision_input";
15
+ reference: "reference";
16
+ archive: "archive";
17
+ }>;
18
+ };
19
+ type ClassifyDocumentArgs = {
20
+ document_id: string;
21
+ classification: string;
22
+ user_id: string;
23
+ };
24
+ export declare function classifyDocument(args: ClassifyDocumentArgs): Promise<{
25
+ content: {
26
+ type: "text";
27
+ text: string;
28
+ }[];
29
+ isError: boolean;
30
+ } | {
31
+ content: {
32
+ type: "text";
33
+ text: string;
34
+ }[];
35
+ isError?: undefined;
36
+ }>;
37
+ export {};
38
+ //# sourceMappingURL=classify-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classify-document.d.ts","sourceRoot":"","sources":["../../src/tools/classify-document.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,sBAAsB;;;;;;;;;;CAYlC,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB;;;;;;;;;;;;GAwBhE"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * doc_classify -- Layer 2 Coordination
3
+ *
4
+ * Update the classification of an ingest item.
5
+ * Delegates to POST /api/mcp/documents (action: doc_classify).
6
+ */
7
+ import { z } from 'zod';
8
+ import { nexusPost } from '../nexus-api.js';
9
+ export const classifyDocumentSchema = {
10
+ document_id: z.string().uuid().describe('Document UUID to classify'),
11
+ classification: z
12
+ .enum([
13
+ 'unclassified',
14
+ 'research_note',
15
+ 'planning_item',
16
+ 'decision_input',
17
+ 'reference',
18
+ 'archive',
19
+ ])
20
+ .describe('New classification for the document'),
21
+ };
22
+ export async function classifyDocument(args) {
23
+ const result = await nexusPost('/api/mcp/documents', {
24
+ action: 'doc_classify',
25
+ document_id: args.document_id,
26
+ classification: args.classification,
27
+ });
28
+ if (!result.ok) {
29
+ return {
30
+ content: [
31
+ {
32
+ type: 'text',
33
+ text: JSON.stringify({ error: result.error }, null, 2),
34
+ },
35
+ ],
36
+ isError: true,
37
+ };
38
+ }
39
+ return {
40
+ content: [
41
+ { type: 'text', text: JSON.stringify(result.data, null, 2) },
42
+ ],
43
+ };
44
+ }
45
+ //# sourceMappingURL=classify-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classify-document.js","sourceRoot":"","sources":["../../src/tools/classify-document.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACpE,cAAc,EAAE,CAAC;SACd,IAAI,CAAC;QACJ,cAAc;QACd,eAAe;QACf,eAAe;QACf,gBAAgB;QAChB,WAAW;QACX,SAAS;KACV,CAAC;SACD,QAAQ,CAAC,qCAAqC,CAAC;CACnD,CAAA;AAQD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B;IAC/D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE;QACnD,MAAM,EAAE,cAAc;QACtB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;SACtE;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * doc_delete -- Layer 2 Coordination
3
+ *
4
+ * Delete an ingest item from a project's knowledge base.
5
+ * Delegates to POST /api/mcp/documents (action: doc_delete).
6
+ */
7
+ import { z } from 'zod';
8
+ export declare const deleteDocumentSchema: {
9
+ document_id: z.ZodString;
10
+ };
11
+ type DeleteDocumentArgs = {
12
+ document_id: string;
13
+ user_id: string;
14
+ };
15
+ export declare function deleteDocument(args: DeleteDocumentArgs): Promise<{
16
+ content: {
17
+ type: "text";
18
+ text: string;
19
+ }[];
20
+ isError: boolean;
21
+ } | {
22
+ content: {
23
+ type: "text";
24
+ text: string;
25
+ }[];
26
+ isError?: undefined;
27
+ }>;
28
+ export {};
29
+ //# sourceMappingURL=delete-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-document.d.ts","sourceRoot":"","sources":["../../src/tools/delete-document.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,oBAAoB;;CAEhC,CAAA;AAED,KAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB;;;;;;;;;;;;GAuB5D"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * doc_delete -- Layer 2 Coordination
3
+ *
4
+ * Delete an ingest item from a project's knowledge base.
5
+ * Delegates to POST /api/mcp/documents (action: doc_delete).
6
+ */
7
+ import { z } from 'zod';
8
+ import { nexusPost } from '../nexus-api.js';
9
+ export const deleteDocumentSchema = {
10
+ document_id: z.string().uuid().describe('Document UUID to delete'),
11
+ };
12
+ export async function deleteDocument(args) {
13
+ const result = await nexusPost('/api/mcp/documents', {
14
+ action: 'doc_delete',
15
+ document_id: args.document_id,
16
+ });
17
+ if (!result.ok) {
18
+ return {
19
+ content: [
20
+ {
21
+ type: 'text',
22
+ text: JSON.stringify({ error: result.error }, null, 2),
23
+ },
24
+ ],
25
+ isError: true,
26
+ };
27
+ }
28
+ return {
29
+ content: [
30
+ { type: 'text', text: JSON.stringify(result.data, null, 2) },
31
+ ],
32
+ };
33
+ }
34
+ //# sourceMappingURL=delete-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-document.js","sourceRoot":"","sources":["../../src/tools/delete-document.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACnE,CAAA;AAOD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAwB;IAC3D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE;QACnD,MAAM,EAAE,YAAY;QACpB,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;SACtE;KACF,CAAA;AACH,CAAC"}
@@ -86,11 +86,11 @@ export declare const rvDecideSchema: {
86
86
  review_id: z.ZodString;
87
87
  transition: z.ZodEnum<{
88
88
  accept: "accept";
89
+ archive: "archive";
89
90
  submit: "submit";
90
91
  reject: "reject";
91
92
  request_revision: "request_revision";
92
93
  resubmit: "resubmit";
93
- archive: "archive";
94
94
  }>;
95
95
  rationale: z.ZodOptional<z.ZodString>;
96
96
  };
@@ -0,0 +1,38 @@
1
+ /**
2
+ * doc_update -- Layer 2 Coordination
3
+ *
4
+ * Update title, body, or source_url of an ingest item.
5
+ * Supports full body replacement or append mode.
6
+ * Delegates to POST /api/mcp/documents (action: doc_update).
7
+ */
8
+ import { z } from 'zod';
9
+ export declare const updateDocumentSchema: {
10
+ document_id: z.ZodString;
11
+ title: z.ZodOptional<z.ZodString>;
12
+ body: z.ZodOptional<z.ZodString>;
13
+ source_url: z.ZodOptional<z.ZodString>;
14
+ append_body: z.ZodOptional<z.ZodString>;
15
+ };
16
+ type UpdateDocumentArgs = {
17
+ document_id: string;
18
+ title?: string;
19
+ body?: string;
20
+ source_url?: string;
21
+ append_body?: string;
22
+ user_id: string;
23
+ };
24
+ export declare function updateDocument(args: UpdateDocumentArgs): Promise<{
25
+ content: {
26
+ type: "text";
27
+ text: string;
28
+ }[];
29
+ isError: boolean;
30
+ } | {
31
+ content: {
32
+ type: "text";
33
+ text: string;
34
+ }[];
35
+ isError?: undefined;
36
+ }>;
37
+ export {};
38
+ //# sourceMappingURL=update-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-document.d.ts","sourceRoot":"","sources":["../../src/tools/update-document.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,oBAAoB;;;;;;CAgBhC,CAAA;AAED,KAAK,kBAAkB,GAAG;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB;;;;;;;;;;;;GA2B5D"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * doc_update -- Layer 2 Coordination
3
+ *
4
+ * Update title, body, or source_url of an ingest item.
5
+ * Supports full body replacement or append mode.
6
+ * Delegates to POST /api/mcp/documents (action: doc_update).
7
+ */
8
+ import { z } from 'zod';
9
+ import { nexusPost } from '../nexus-api.js';
10
+ export const updateDocumentSchema = {
11
+ document_id: z.string().uuid().describe('Document UUID to update'),
12
+ title: z.string().max(500).optional().describe('New document title'),
13
+ body: z
14
+ .string()
15
+ .max(100_000)
16
+ .optional()
17
+ .describe('New document body (replaces existing content)'),
18
+ source_url: z.string().url().optional().describe('Updated source URL'),
19
+ append_body: z
20
+ .string()
21
+ .max(100_000)
22
+ .optional()
23
+ .describe('Content to append to existing body (ignored if body is also provided)'),
24
+ };
25
+ export async function updateDocument(args) {
26
+ const result = await nexusPost('/api/mcp/documents', {
27
+ action: 'doc_update',
28
+ document_id: args.document_id,
29
+ title: args.title,
30
+ body: args.body,
31
+ source_url: args.source_url,
32
+ append_body: args.append_body,
33
+ });
34
+ if (!result.ok) {
35
+ return {
36
+ content: [
37
+ {
38
+ type: 'text',
39
+ text: JSON.stringify({ error: result.error }, null, 2),
40
+ },
41
+ ],
42
+ isError: true,
43
+ };
44
+ }
45
+ return {
46
+ content: [
47
+ { type: 'text', text: JSON.stringify(result.data, null, 2) },
48
+ ],
49
+ };
50
+ }
51
+ //# sourceMappingURL=update-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-document.js","sourceRoot":"","sources":["../../src/tools/update-document.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACpE,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,OAAO,CAAC;SACZ,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACtE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,OAAO,CAAC;SACZ,QAAQ,EAAE;SACV,QAAQ,CACP,uEAAuE,CACxE;CACJ,CAAA;AAWD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAwB;IAC3D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE;QACnD,MAAM,EAAE,YAAY;QACpB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAA;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;SACtE;KACF,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gwdn/nexus-mcp",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "description": "MCP server for the Nexus platform",
5
5
  "type": "module",
6
6
  "main": "dist/server.js",
@@ -78,9 +78,9 @@ describe('MCP Server: withIdentity wrapper', () => {
78
78
  })
79
79
 
80
80
  describe('MCP Server: Schema exports', () => {
81
- const EXPECTED_TOOL_COUNT = 45
81
+ const EXPECTED_TOOL_COUNT = 48
82
82
 
83
- it('should register exactly 45 tools in server.ts', () => {
83
+ it('should register exactly 48 tools in server.ts', () => {
84
84
  // Static analysis: count server.tool( calls in server.ts as a regression guard.
85
85
  // If you add or remove a tool, update EXPECTED_TOOL_COUNT above.
86
86
  const serverSource = readFileSync(
package/src/server.ts CHANGED
@@ -109,6 +109,18 @@ import {
109
109
  ingestDocument,
110
110
  ingestDocumentSchema,
111
111
  } from './tools/ingest-document.js'
112
+ import {
113
+ classifyDocument,
114
+ classifyDocumentSchema,
115
+ } from './tools/classify-document.js'
116
+ import {
117
+ updateDocument,
118
+ updateDocumentSchema,
119
+ } from './tools/update-document.js'
120
+ import {
121
+ deleteDocument,
122
+ deleteDocumentSchema,
123
+ } from './tools/delete-document.js'
112
124
  import {
113
125
  acknowledgeLetter,
114
126
  acknowledgeLetterSchema,
@@ -354,6 +366,27 @@ server.tool(
354
366
  withIdentity(listDocuments),
355
367
  )
356
368
 
369
+ server.tool(
370
+ 'doc_classify',
371
+ 'Update the classification of an ingest item. Valid classifications: unclassified, research_note, planning_item, decision_input, reference, archive.',
372
+ classifyDocumentSchema,
373
+ withIdentity(classifyDocument),
374
+ )
375
+
376
+ server.tool(
377
+ 'doc_update',
378
+ 'Update title, body, or source_url of an ingest item. Supports full body replacement or append mode via append_body. At least one field must be provided.',
379
+ updateDocumentSchema,
380
+ withIdentity(updateDocument),
381
+ )
382
+
383
+ server.tool(
384
+ 'doc_delete',
385
+ 'Delete an ingest item from a project knowledge base. This action is irreversible.',
386
+ deleteDocumentSchema,
387
+ withIdentity(deleteDocument),
388
+ )
389
+
357
390
  server.tool(
358
391
  'session_append',
359
392
  'Append an entry to an existing session. Enforces session write isolation: only the session creator can append entries.',
@@ -0,0 +1,55 @@
1
+ /**
2
+ * doc_classify -- Layer 2 Coordination
3
+ *
4
+ * Update the classification of an ingest item.
5
+ * Delegates to POST /api/mcp/documents (action: doc_classify).
6
+ */
7
+
8
+ import { z } from 'zod'
9
+ import { nexusPost } from '../nexus-api.js'
10
+
11
+ export const classifyDocumentSchema = {
12
+ document_id: z.string().uuid().describe('Document UUID to classify'),
13
+ classification: z
14
+ .enum([
15
+ 'unclassified',
16
+ 'research_note',
17
+ 'planning_item',
18
+ 'decision_input',
19
+ 'reference',
20
+ 'archive',
21
+ ])
22
+ .describe('New classification for the document'),
23
+ }
24
+
25
+ type ClassifyDocumentArgs = {
26
+ document_id: string
27
+ classification: string
28
+ user_id: string
29
+ }
30
+
31
+ export async function classifyDocument(args: ClassifyDocumentArgs) {
32
+ const result = await nexusPost('/api/mcp/documents', {
33
+ action: 'doc_classify',
34
+ document_id: args.document_id,
35
+ classification: args.classification,
36
+ })
37
+
38
+ if (!result.ok) {
39
+ return {
40
+ content: [
41
+ {
42
+ type: 'text' as const,
43
+ text: JSON.stringify({ error: result.error }, null, 2),
44
+ },
45
+ ],
46
+ isError: true,
47
+ }
48
+ }
49
+
50
+ return {
51
+ content: [
52
+ { type: 'text' as const, text: JSON.stringify(result.data, null, 2) },
53
+ ],
54
+ }
55
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * doc_delete -- Layer 2 Coordination
3
+ *
4
+ * Delete an ingest item from a project's knowledge base.
5
+ * Delegates to POST /api/mcp/documents (action: doc_delete).
6
+ */
7
+
8
+ import { z } from 'zod'
9
+ import { nexusPost } from '../nexus-api.js'
10
+
11
+ export const deleteDocumentSchema = {
12
+ document_id: z.string().uuid().describe('Document UUID to delete'),
13
+ }
14
+
15
+ type DeleteDocumentArgs = {
16
+ document_id: string
17
+ user_id: string
18
+ }
19
+
20
+ export async function deleteDocument(args: DeleteDocumentArgs) {
21
+ const result = await nexusPost('/api/mcp/documents', {
22
+ action: 'doc_delete',
23
+ document_id: args.document_id,
24
+ })
25
+
26
+ if (!result.ok) {
27
+ return {
28
+ content: [
29
+ {
30
+ type: 'text' as const,
31
+ text: JSON.stringify({ error: result.error }, null, 2),
32
+ },
33
+ ],
34
+ isError: true,
35
+ }
36
+ }
37
+
38
+ return {
39
+ content: [
40
+ { type: 'text' as const, text: JSON.stringify(result.data, null, 2) },
41
+ ],
42
+ }
43
+ }
@@ -0,0 +1,66 @@
1
+ /**
2
+ * doc_update -- Layer 2 Coordination
3
+ *
4
+ * Update title, body, or source_url of an ingest item.
5
+ * Supports full body replacement or append mode.
6
+ * Delegates to POST /api/mcp/documents (action: doc_update).
7
+ */
8
+
9
+ import { z } from 'zod'
10
+ import { nexusPost } from '../nexus-api.js'
11
+
12
+ export const updateDocumentSchema = {
13
+ document_id: z.string().uuid().describe('Document UUID to update'),
14
+ title: z.string().max(500).optional().describe('New document title'),
15
+ body: z
16
+ .string()
17
+ .max(100_000)
18
+ .optional()
19
+ .describe('New document body (replaces existing content)'),
20
+ source_url: z.string().url().optional().describe('Updated source URL'),
21
+ append_body: z
22
+ .string()
23
+ .max(100_000)
24
+ .optional()
25
+ .describe(
26
+ 'Content to append to existing body (ignored if body is also provided)',
27
+ ),
28
+ }
29
+
30
+ type UpdateDocumentArgs = {
31
+ document_id: string
32
+ title?: string
33
+ body?: string
34
+ source_url?: string
35
+ append_body?: string
36
+ user_id: string
37
+ }
38
+
39
+ export async function updateDocument(args: UpdateDocumentArgs) {
40
+ const result = await nexusPost('/api/mcp/documents', {
41
+ action: 'doc_update',
42
+ document_id: args.document_id,
43
+ title: args.title,
44
+ body: args.body,
45
+ source_url: args.source_url,
46
+ append_body: args.append_body,
47
+ })
48
+
49
+ if (!result.ok) {
50
+ return {
51
+ content: [
52
+ {
53
+ type: 'text' as const,
54
+ text: JSON.stringify({ error: result.error }, null, 2),
55
+ },
56
+ ],
57
+ isError: true,
58
+ }
59
+ }
60
+
61
+ return {
62
+ content: [
63
+ { type: 'text' as const, text: JSON.stringify(result.data, null, 2) },
64
+ ],
65
+ }
66
+ }