@rockhopper-co/mcp-server 0.5.0 → 0.7.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 +134 -1
- package/README.md +34 -10
- package/dist/api-client.d.ts +56 -5
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +86 -11
- package/dist/api-client.js.map +1 -1
- package/dist/auth/device-grant-client.d.ts +80 -0
- package/dist/auth/device-grant-client.d.ts.map +1 -0
- package/dist/auth/device-grant-client.js +138 -0
- package/dist/auth/device-grant-client.js.map +1 -0
- package/dist/auth/resolve-auth.d.ts +52 -0
- package/dist/auth/resolve-auth.d.ts.map +1 -0
- package/dist/auth/resolve-auth.js +100 -0
- package/dist/auth/resolve-auth.js.map +1 -0
- package/dist/auth/token-store.d.ts +51 -0
- package/dist/auth/token-store.d.ts.map +1 -0
- package/dist/auth/token-store.js +98 -0
- package/dist/auth/token-store.js.map +1 -0
- package/dist/cli.js +37 -11
- package/dist/cli.js.map +1 -1
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +20 -9
- package/dist/prompts/index.js.map +1 -1
- package/dist/resources/changes.d.ts.map +1 -1
- package/dist/resources/changes.js +8 -2
- package/dist/resources/changes.js.map +1 -1
- package/dist/resources/orchestration-guide.md +1 -1
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +113 -20
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/write-files.js +4 -4
- package/dist/tools/write-files.js.map +1 -1
- package/dist/tools/write-reviews.d.ts.map +1 -1
- package/dist/tools/write-reviews.js +3 -1
- package/dist/tools/write-reviews.js.map +1 -1
- package/dist/types.d.ts +23 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/zod-schemas.d.ts +111 -0
- package/dist/zod-schemas.d.ts.map +1 -0
- package/dist/zod-schemas.js +62 -0
- package/dist/zod-schemas.js.map +1 -0
- package/package.json +6 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,eAAe,CAAC,MAAiB,EAAE,GAAc;IAC/D,MAAM,CAAC,cAAc,CACnB,wBAAwB,EACxB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EACT,+EAA+E;QACjF,UAAU,EAAE;YACV,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;SAClE;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QACrB,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../src/resources/changes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../src/resources/changes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,CAoCN"}
|
|
@@ -10,13 +10,19 @@ export function registerChangeResources(server, api) {
|
|
|
10
10
|
description: 'Pending cell-level changes not yet attributed to a version for a file',
|
|
11
11
|
mimeType: 'application/json',
|
|
12
12
|
}, async (uri, { fileMsId }) => {
|
|
13
|
-
|
|
13
|
+
// KI-097: switched to cursor-paginated route. Resource returns the
|
|
14
|
+
// full envelope (`{changes, nextCursor, totalCount, snapshotId, ...}`)
|
|
15
|
+
// so consumers can paginate by re-reading the resource with a
|
|
16
|
+
// different cursor — though most clients will treat this as a
|
|
17
|
+
// single read. Resource shape is now the paginated envelope, not
|
|
18
|
+
// a bare array.
|
|
19
|
+
const page = await api.getUnattributedChangesPaginated(fileMsId);
|
|
14
20
|
return {
|
|
15
21
|
contents: [
|
|
16
22
|
{
|
|
17
23
|
uri: uri.href,
|
|
18
24
|
mimeType: 'application/json',
|
|
19
|
-
text: JSON.stringify(
|
|
25
|
+
text: JSON.stringify(page, null, 2),
|
|
20
26
|
},
|
|
21
27
|
],
|
|
22
28
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/resources/changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAI3E,MAAM,UAAU,uBAAuB,CACrC,MAAiB,EACjB,GAAc;IAEd,+EAA+E;IAC/E,gFAAgF;IAChF,+DAA+D;IAC/D,MAAM,CAAC,gBAAgB,CACrB,sBAAsB,EACtB,IAAI,gBAAgB,CAAC,uCAAuC,EAAE;QAC5D,IAAI,EAAE,SAAS;KAChB,CAAC,EACF;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,uEAAuE;QACzE,QAAQ,EAAE,kBAAkB;KAC7B,EACD,KAAK,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1B,MAAM,
|
|
1
|
+
{"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/resources/changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAI3E,MAAM,UAAU,uBAAuB,CACrC,MAAiB,EACjB,GAAc;IAEd,+EAA+E;IAC/E,gFAAgF;IAChF,+DAA+D;IAC/D,MAAM,CAAC,gBAAgB,CACrB,sBAAsB,EACtB,IAAI,gBAAgB,CAAC,uCAAuC,EAAE;QAC5D,IAAI,EAAE,SAAS;KAChB,CAAC,EACF;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,uEAAuE;QACzE,QAAQ,EAAE,kBAAkB;KAC7B,EACD,KAAK,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1B,mEAAmE;QACnE,uEAAuE;QACvE,8DAA8D;QAC9D,8DAA8D;QAC9D,iEAAiE;QACjE,gBAAgB;QAChB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,+BAA+B,CACpD,QAAkB,CACnB,CAAC;QACF,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,GAAG,CAAC,IAAI;oBACb,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;iBACpC;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -8,7 +8,7 @@ Rockhopper uses three distinct identifiers. Mixing them is the most common cause
|
|
|
8
8
|
|
|
9
9
|
| ID | Type | Where it comes from | Where it goes |
|
|
10
10
|
|----|------|---------------------|---------------|
|
|
11
|
-
| `fileMsId` | string | `list_files` response, `rockhopper://files` resource | Tools that act on a file: `get_file_versions`, `get_file_comments`, `add_comment`, `create_version`, `discard_changes`, `get_cell_history`, `get_unattributed_changes`, `
|
|
11
|
+
| `fileMsId` | string | `list_files` response, `rockhopper://files` resource | Tools that act on a file: `get_file_versions`, `get_file_comments`, `add_comment`, `create_version`, `discard_changes`, `get_cell_history`, `get_unattributed_changes`, `rename_file` |
|
|
12
12
|
| `versionId` | number | `get_file_versions` response (`internalId` field), `create_version` response | Tools that act on a specific version snapshot: `get_reviews`, `create_review_request`, `approve_review`, `cancel_review` |
|
|
13
13
|
| `versionInternalId` | number | `get_file_comments` response (comments scope to a version) | Comment-thread tools: `add_comment`, `reply_to_comment`, `resolve_comment` |
|
|
14
14
|
|
package/dist/server.js
CHANGED
|
@@ -19,7 +19,7 @@ export function createServer(apiClient, options) {
|
|
|
19
19
|
'versions, comments, reviews, or cell history. Write operations ' +
|
|
20
20
|
'(add_comment, reply_to_comment, resolve_comment, create_review_request, ' +
|
|
21
21
|
'approve_review, cancel_review, create_version, discard_changes, ' +
|
|
22
|
-
'
|
|
22
|
+
'rename_file) require a read-write scoped token. ' +
|
|
23
23
|
'File IDs use the platformId field (e.g. from list_files output).',
|
|
24
24
|
});
|
|
25
25
|
registerResources(server, apiClient);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAA6B,MAAM,kBAAkB,CAAC;AAE5E,MAAM,UAAU,YAAY,CAC1B,SAAoB,EACpB,OAA8B;IAE9B,MAAM,QAAQ,GAAG,OAAO,EAAE,KAAK,KAAK,WAAW,CAAC;IAEhD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE,QAAQ;YACpB,CAAC,CAAC,yDAAyD;gBACzD,oEAAoE;gBACpE,gDAAgD;gBAChD,gEAAgE;gBAChE,kEAAkE;YACpE,CAAC,CAAC,0DAA0D;gBAC1D,oEAAoE;gBACpE,iEAAiE;gBACjE,0EAA0E;gBAC1E,kEAAkE;gBAClE,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAA6B,MAAM,kBAAkB,CAAC;AAE5E,MAAM,UAAU,YAAY,CAC1B,SAAoB,EACpB,OAA8B;IAE9B,MAAM,QAAQ,GAAG,OAAO,EAAE,KAAK,KAAK,WAAW,CAAC;IAEhD,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE,QAAQ;YACpB,CAAC,CAAC,yDAAyD;gBACzD,oEAAoE;gBACpE,gDAAgD;gBAChD,gEAAgE;gBAChE,kEAAkE;YACpE,CAAC,CAAC,0DAA0D;gBAC1D,oEAAoE;gBACpE,iEAAiE;gBACjE,0EAA0E;gBAC1E,kEAAkE;gBAClE,kDAAkD;gBAClD,kEAAkE;KACvE,CACF,CAAC;IAEF,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrC,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC1C,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEnC,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,CA4MN"}
|
package/dist/tools/search.js
CHANGED
|
@@ -2,18 +2,28 @@ import { z } from 'zod';
|
|
|
2
2
|
export function registerSearchTool(server, api) {
|
|
3
3
|
server.registerTool('search_files', {
|
|
4
4
|
title: 'Search Files',
|
|
5
|
-
description: 'Search enrolled files by name
|
|
6
|
-
'
|
|
5
|
+
description: 'Search enrolled files by name (default), comment text, version ' +
|
|
6
|
+
'descriptions, or all of the above. Returns matching files with ' +
|
|
7
|
+
'their metadata including uncommitted change status.',
|
|
7
8
|
inputSchema: {
|
|
8
|
-
query: z.string().describe('Search query
|
|
9
|
+
query: z.string().describe('Search query'),
|
|
10
|
+
matchIn: z
|
|
11
|
+
.enum(['name', 'comments', 'versions', 'all'])
|
|
12
|
+
.optional()
|
|
13
|
+
.describe('Where to search: "name" (default — file-name substring), ' +
|
|
14
|
+
'"comments" (comment text on the file), "versions" (committed ' +
|
|
15
|
+
'version descriptions), or "all" (any of the above).'),
|
|
9
16
|
},
|
|
10
17
|
annotations: {
|
|
11
18
|
readOnlyHint: true,
|
|
12
19
|
openWorldHint: false,
|
|
13
20
|
},
|
|
14
|
-
}, async ({ query }) => {
|
|
21
|
+
}, async ({ query, matchIn }) => {
|
|
15
22
|
try {
|
|
16
|
-
const files = await api.listEnrolledFiles({
|
|
23
|
+
const files = await api.listEnrolledFiles({
|
|
24
|
+
search: query,
|
|
25
|
+
matchIn,
|
|
26
|
+
});
|
|
17
27
|
const summary = files
|
|
18
28
|
.map((f) => `- **${f.name}** (id: ${f.platformId}, type: ${f.fileType})` +
|
|
19
29
|
(f.hasUncommittedChanges ? ' [uncommitted changes]' : ''))
|
|
@@ -44,36 +54,102 @@ export function registerSearchTool(server, api) {
|
|
|
44
54
|
server.registerTool('get_unattributed_changes', {
|
|
45
55
|
title: 'Get Unattributed Changes',
|
|
46
56
|
description: 'Get pending cell-level changes that have not been attributed to a ' +
|
|
47
|
-
'committed version yet.
|
|
57
|
+
'committed version yet. Two modes: (1) provide `sheetName` to get ' +
|
|
58
|
+
'every change on a single worksheet (no pagination — bounded by ' +
|
|
59
|
+
'sheet size); (2) omit `sheetName` for the file-wide cursor-paginated ' +
|
|
60
|
+
'view (rows are capped per response with a summary line; pass `cursor` ' +
|
|
61
|
+
'returned by the previous call to fetch the next page).',
|
|
48
62
|
inputSchema: {
|
|
49
63
|
fileMsId: z.string().describe('Platform ID of the enrolled file'),
|
|
50
64
|
sheetName: z
|
|
51
65
|
.string()
|
|
52
66
|
.optional()
|
|
53
|
-
.describe('Filter to a specific worksheet'
|
|
67
|
+
.describe('Filter to a specific worksheet. When set, ignores `cursor` and ' +
|
|
68
|
+
'returns the unpaginated sheet view.'),
|
|
69
|
+
cursor: z
|
|
70
|
+
.string()
|
|
71
|
+
.optional()
|
|
72
|
+
.describe('Opaque cursor from a previous response\'s pagination hint. ' +
|
|
73
|
+
'Only valid with no `sheetName` (file-wide paginated mode). ' +
|
|
74
|
+
'Snapshot expires 30 minutes after the first request — older ' +
|
|
75
|
+
'cursors return an SNAPSHOT_EXPIRED error and the caller must ' +
|
|
76
|
+
'restart from the first page.'),
|
|
54
77
|
},
|
|
55
78
|
annotations: {
|
|
56
79
|
readOnlyHint: true,
|
|
57
80
|
openWorldHint: false,
|
|
58
81
|
},
|
|
59
|
-
}, async ({ fileMsId, sheetName }) => {
|
|
82
|
+
}, async ({ fileMsId, sheetName, cursor }) => {
|
|
60
83
|
try {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
84
|
+
if (sheetName) {
|
|
85
|
+
// Sheet-filtered mode: bounded by sheet size, no pagination needed.
|
|
86
|
+
// Audit (2026-05-23) measured: `Summary` sheet on a 12 MB file
|
|
87
|
+
// returned 9 rows clean. This is the practical workaround when the
|
|
88
|
+
// caller already knows which sheet to drill into.
|
|
89
|
+
const changes = await api.getUnattributedChangesBySheet(fileMsId, sheetName);
|
|
90
|
+
const body = formatChangeRows(changes);
|
|
91
|
+
return {
|
|
92
|
+
content: [
|
|
93
|
+
{
|
|
94
|
+
type: 'text',
|
|
95
|
+
text: changes.length
|
|
96
|
+
? `${changes.length} unattributed change(s) on sheet "${sheetName}":\n\n${body}`
|
|
97
|
+
: `No unattributed changes on sheet "${sheetName}".`,
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
// File-wide mode: paginated. Backend caps each page at 1000 rows;
|
|
103
|
+
// we cap display at MAX_DISPLAYED to keep MCP responses under the
|
|
104
|
+
// 25k-token client limit (audit measured one file at 12.5 MB / 28k
|
|
105
|
+
// rows on the unpaginated route — KI-097).
|
|
106
|
+
const MAX_DISPLAYED = 200;
|
|
107
|
+
const page = await api.getUnattributedChangesPaginated(fileMsId, cursor);
|
|
108
|
+
if (page.changes.length === 0) {
|
|
109
|
+
return {
|
|
110
|
+
content: [
|
|
111
|
+
{
|
|
112
|
+
type: 'text',
|
|
113
|
+
text: page.totalCount === 0
|
|
114
|
+
? 'No unattributed changes found for this file.'
|
|
115
|
+
: `End of pages reached (${page.totalCount} total across the file).`,
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
const displayed = page.changes.slice(0, MAX_DISPLAYED);
|
|
121
|
+
const body = formatChangeRows(displayed);
|
|
122
|
+
const summary = summarizeBySheet(page.changes);
|
|
123
|
+
const hidden = page.changes.length - displayed.length;
|
|
124
|
+
const lines = [];
|
|
125
|
+
// Header line: this page's slice + total + per-sheet hint
|
|
126
|
+
lines.push(`Showing ${displayed.length} of ${page.changes.length} change(s) on this page (${page.totalCount} total across the file).`);
|
|
127
|
+
if (summary.length > 0) {
|
|
128
|
+
const topSheets = summary
|
|
129
|
+
.slice(0, 5)
|
|
130
|
+
.map((s) => `${s.sheetName} (${s.count})`)
|
|
131
|
+
.join(', ');
|
|
132
|
+
lines.push(`Top sheets on this page: ${topSheets}.`);
|
|
133
|
+
}
|
|
134
|
+
lines.push('');
|
|
135
|
+
lines.push(body);
|
|
136
|
+
// Pagination hints
|
|
137
|
+
const hints = [];
|
|
138
|
+
if (hidden > 0) {
|
|
139
|
+
hints.push(`${hidden} more row(s) on this page not shown (cap is ${MAX_DISPLAYED}). Pass \`sheetName="<name>"\` to drill into a single sheet.`);
|
|
140
|
+
}
|
|
141
|
+
if (page.nextCursor) {
|
|
142
|
+
hints.push(`More pages available. Pass \`cursor="${page.nextCursor}"\` to fetch the next page (snapshot valid for 30 minutes).`);
|
|
143
|
+
}
|
|
144
|
+
if (hints.length > 0) {
|
|
145
|
+
lines.push('');
|
|
146
|
+
lines.push(...hints);
|
|
147
|
+
}
|
|
70
148
|
return {
|
|
71
149
|
content: [
|
|
72
150
|
{
|
|
73
151
|
type: 'text',
|
|
74
|
-
text:
|
|
75
|
-
? `${changes.length} unattributed change(s):\n\n${summary}`
|
|
76
|
-
: 'No unattributed changes found.',
|
|
152
|
+
text: lines.join('\n'),
|
|
77
153
|
},
|
|
78
154
|
],
|
|
79
155
|
};
|
|
@@ -91,4 +167,21 @@ export function registerSearchTool(server, api) {
|
|
|
91
167
|
}
|
|
92
168
|
});
|
|
93
169
|
}
|
|
170
|
+
function formatChangeRows(changes) {
|
|
171
|
+
return changes
|
|
172
|
+
.map((c) => `- **${c.sheetName}!${c.cellAddress}** (${c.changeType}): ` +
|
|
173
|
+
`${JSON.stringify(c.oldValue)} → ${JSON.stringify(c.newValue)}` +
|
|
174
|
+
(c.byUserPlatformId ? ` — by ${c.byUserPlatformId}` : '') +
|
|
175
|
+
` — ${c.createdAt}`)
|
|
176
|
+
.join('\n');
|
|
177
|
+
}
|
|
178
|
+
function summarizeBySheet(changes) {
|
|
179
|
+
const counts = new Map();
|
|
180
|
+
for (const c of changes) {
|
|
181
|
+
counts.set(c.sheetName, (counts.get(c.sheetName) ?? 0) + 1);
|
|
182
|
+
}
|
|
183
|
+
return Array.from(counts.entries())
|
|
184
|
+
.map(([sheetName, count]) => ({ sheetName, count }))
|
|
185
|
+
.sort((a, b) => b.count - a.count);
|
|
186
|
+
}
|
|
94
187
|
//# sourceMappingURL=search.js.map
|
package/dist/tools/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,kBAAkB,CAChC,MAAiB,EACjB,GAAc;IAEd,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,cAAc;QACrB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export function registerWriteFileTool(server, api) {
|
|
3
|
-
server.registerTool('
|
|
4
|
-
title: '
|
|
5
|
-
description: '
|
|
3
|
+
server.registerTool('rename_file', {
|
|
4
|
+
title: 'Rename File',
|
|
5
|
+
description: 'Rename an enrolled file. The new name is the display name shown across Rockhopper.',
|
|
6
6
|
inputSchema: {
|
|
7
7
|
fileMsId: z.string().describe('Platform ID of the enrolled file'),
|
|
8
|
-
name: z.string().min(1).max(255).describe('New
|
|
8
|
+
name: z.string().min(1).max(255).describe('New name for the file'),
|
|
9
9
|
},
|
|
10
10
|
annotations: {
|
|
11
11
|
readOnlyHint: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-files.js","sourceRoot":"","sources":["../../src/tools/write-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,qBAAqB,CACnC,MAAiB,EACjB,GAAc;IAEd,MAAM,CAAC,YAAY,CACjB,
|
|
1
|
+
{"version":3,"file":"write-files.js","sourceRoot":"","sources":["../../src/tools/write-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,qBAAqB,CACnC,MAAiB,EACjB,GAAc;IAEd,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EACT,oFAAoF;QACtF,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YACjE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;SACnE;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;SACrB;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAE9D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,oBAAoB,IAAI,CAAC,IAAI,UAAU,IAAI,CAAC,UAAU,IAAI;qBACjE;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACzF;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-reviews.d.ts","sourceRoot":"","sources":["../../src/tools/write-reviews.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"write-reviews.d.ts","sourceRoot":"","sources":["../../src/tools/write-reviews.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,SAAS,GACb,IAAI,CAkLN"}
|
|
@@ -120,7 +120,9 @@ export function registerWriteReviewTools(server, api) {
|
|
|
120
120
|
}, async ({ reviewId }) => {
|
|
121
121
|
try {
|
|
122
122
|
const review = await api.getReview(reviewId);
|
|
123
|
-
|
|
123
|
+
// Backend's ReviewRequestStatus enum is uppercase (PENDING/APPROVED/CANCELLED).
|
|
124
|
+
// Defensive .toUpperCase() survives future backend casing changes.
|
|
125
|
+
if (review.status?.toUpperCase() !== 'PENDING') {
|
|
124
126
|
return {
|
|
125
127
|
content: [
|
|
126
128
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-reviews.js","sourceRoot":"","sources":["../../src/tools/write-reviews.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"write-reviews.js","sourceRoot":"","sources":["../../src/tools/write-reviews.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,wBAAwB,CACtC,MAAiB,EACjB,GAAc;IAEd,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,sEAAsE;YACtE,yDAAyD;YACzD,wEAAwE;YACxE,oFAAoF;QACtF,WAAW,EAAE;YACX,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,CAAC,2CAA2C,CAAC;YACxD,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,CAAC;iBACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;iBAClC,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,0CAA0C,CAAC;SACxD;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,KAAK;SACtB;KACF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;QACzD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,mBAAmB,CAAC;gBAC3C,SAAS;gBACT,OAAO;gBACP,WAAW;gBACX,WAAW;aACZ,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EACF,+BAA+B,MAAM,CAAC,EAAE,MAAM;4BAC9C,aAAa,MAAM,CAAC,OAAO,KAAK;4BAChC,WAAW,MAAM,CAAC,MAAM,IAAI;4BAC5B,eAAe,WAAW,CAAC,MAAM,cAAc;qBAClD;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBAC3F;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,gEAAgE;QAClE,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YACpE,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,yBAAyB,CAAC;SACvC;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;SACrB;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAE5D,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EACF,UAAU,MAAM,CAAC,EAAE,YAAY;4BAC/B,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;qBACtC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,sBAAsB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACrF;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EACT,kEAAkE;YAClE,sGAAsG;QACxG,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,CAAC,oCAAoC,CAAC;SAClD;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;SACrB;KACF,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;QACrB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC7C,gFAAgF;YAChF,mEAAmE;YACnE,IAAI,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,CAAC;gBAC/C,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,UAAU,QAAQ,qCAAqC,MAAM,CAAC,MAAM,IAAI;yBAC/E;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAEnD,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EACF,UAAU,SAAS,CAAC,EAAE,eAAe;4BACrC,aAAa,SAAS,CAAC,OAAO,GAAG;qBACpC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBAC3F;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -91,8 +91,30 @@ export interface UnattributedChange {
|
|
|
91
91
|
createdAt: string;
|
|
92
92
|
updatedAt: string;
|
|
93
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Envelope returned by the backend's paginated unattributed-changes route
|
|
96
|
+
* (`GET /unattributed-changes/paginated/:fileMsId`). Cursor-based snapshot
|
|
97
|
+
* pagination with a 1k-row page cap + 30-minute snapshot TTL. See KI-102 in
|
|
98
|
+
* `knowledge-base/docs/known-issues.md` for the route history; the bare
|
|
99
|
+
* `:fileMsId/v2` route is shadowed in the controller, so this dedicated
|
|
100
|
+
* non-shadowable prefix is what mcp-server uses.
|
|
101
|
+
*/
|
|
102
|
+
export interface PaginatedUnattributedResponse {
|
|
103
|
+
changes: UnattributedChange[];
|
|
104
|
+
nextCursor: string | null;
|
|
105
|
+
totalCount: number;
|
|
106
|
+
snapshotId: string;
|
|
107
|
+
snapshotCreatedAt: string;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* KI-096: matches the backend's `?format=mcp` projection on cell-history
|
|
111
|
+
* (`GET /file-versions/file/:fileMsId/cell-history?format=mcp`, added by
|
|
112
|
+
* backend PR #478). `versionId` is a semver string (`"v<major>.<minor>.<patch>"`),
|
|
113
|
+
* NOT a numeric internal id — was previously typed `number` which was
|
|
114
|
+
* one root cause of the audit's `Version undefined` symptom.
|
|
115
|
+
*/
|
|
94
116
|
export interface CellHistoryEntry {
|
|
95
|
-
versionId:
|
|
117
|
+
versionId: string;
|
|
96
118
|
value: unknown;
|
|
97
119
|
changedBy: string | null;
|
|
98
120
|
changedAt: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for ApiClient response validation (KI-096).
|
|
3
|
+
*
|
|
4
|
+
* Opt-in per call site via the `responseSchema` argument to
|
|
5
|
+
* `ApiClient.request()`. Parse failures throw with a clear message so
|
|
6
|
+
* future backend↔mcp-server contract drift fails loudly instead of
|
|
7
|
+
* silently rendering `undefined` in tool outputs (as it did pre-fix for
|
|
8
|
+
* `get_cell_history`, `resolve_comment`, and `rename_file`).
|
|
9
|
+
*
|
|
10
|
+
* Each schema only declares fields the formatters actually consume —
|
|
11
|
+
* unknown fields are stripped, missing required fields throw. Optional
|
|
12
|
+
* fields keep their typed-as-undefined shape if absent.
|
|
13
|
+
*
|
|
14
|
+
* Schemas live in their own file rather than alongside `types.ts` so a
|
|
15
|
+
* future sweep ticket can migrate the remaining ApiClient methods
|
|
16
|
+
* without each fix needing to touch the shared types module.
|
|
17
|
+
*/
|
|
18
|
+
import { z } from 'zod';
|
|
19
|
+
/**
|
|
20
|
+
* Backend `PATCH /file-chat/:chatId` returns the updated FileChat
|
|
21
|
+
* entity after KI-096 (was UpdateResult). The formatter only reads
|
|
22
|
+
* `internalId` + `resolved`, but the schema captures the common
|
|
23
|
+
* surface that mcp-server depends on.
|
|
24
|
+
*/
|
|
25
|
+
export declare const FileChatSchema: z.ZodObject<{
|
|
26
|
+
internalId: z.ZodNumber;
|
|
27
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
28
|
+
resolved: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
29
|
+
cellReference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
30
|
+
createdAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
31
|
+
updatedAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
32
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
33
|
+
internalId: z.ZodNumber;
|
|
34
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
35
|
+
resolved: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
36
|
+
cellReference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
37
|
+
createdAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
38
|
+
updatedAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
39
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
40
|
+
internalId: z.ZodNumber;
|
|
41
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
42
|
+
resolved: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
43
|
+
cellReference: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
44
|
+
createdAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
45
|
+
updatedAt: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
|
|
46
|
+
}, z.ZodTypeAny, "passthrough">>;
|
|
47
|
+
/**
|
|
48
|
+
* Backend `PATCH /enrolled-files/:fileMsId` returns the updated
|
|
49
|
+
* EnrolledFile entity after KI-096 (was UpdateResult). The
|
|
50
|
+
* `rename_file` formatter reads `name` + `platformId`.
|
|
51
|
+
*/
|
|
52
|
+
export declare const EnrolledFileSchema: z.ZodObject<{
|
|
53
|
+
internalId: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
platformId: z.ZodString;
|
|
55
|
+
name: z.ZodString;
|
|
56
|
+
fileType: z.ZodOptional<z.ZodString>;
|
|
57
|
+
driveMsId: z.ZodOptional<z.ZodString>;
|
|
58
|
+
hasUncommittedChanges: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
59
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
60
|
+
internalId: z.ZodOptional<z.ZodNumber>;
|
|
61
|
+
platformId: z.ZodString;
|
|
62
|
+
name: z.ZodString;
|
|
63
|
+
fileType: z.ZodOptional<z.ZodString>;
|
|
64
|
+
driveMsId: z.ZodOptional<z.ZodString>;
|
|
65
|
+
hasUncommittedChanges: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
66
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
67
|
+
internalId: z.ZodOptional<z.ZodNumber>;
|
|
68
|
+
platformId: z.ZodString;
|
|
69
|
+
name: z.ZodString;
|
|
70
|
+
fileType: z.ZodOptional<z.ZodString>;
|
|
71
|
+
driveMsId: z.ZodOptional<z.ZodString>;
|
|
72
|
+
hasUncommittedChanges: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
73
|
+
}, z.ZodTypeAny, "passthrough">>;
|
|
74
|
+
/**
|
|
75
|
+
* Backend `GET /file-versions/file/:fileMsId/cell-history?format=mcp`
|
|
76
|
+
* returns the normalized projection added by KI-096. The mcp-server
|
|
77
|
+
* formatter reads all four fields.
|
|
78
|
+
*/
|
|
79
|
+
export declare const CellHistoryEntrySchema: z.ZodObject<{
|
|
80
|
+
versionId: z.ZodString;
|
|
81
|
+
value: z.ZodUnknown;
|
|
82
|
+
changedBy: z.ZodNullable<z.ZodString>;
|
|
83
|
+
changedAt: z.ZodString;
|
|
84
|
+
}, "strip", z.ZodTypeAny, {
|
|
85
|
+
versionId: string;
|
|
86
|
+
changedBy: string | null;
|
|
87
|
+
changedAt: string;
|
|
88
|
+
value?: unknown;
|
|
89
|
+
}, {
|
|
90
|
+
versionId: string;
|
|
91
|
+
changedBy: string | null;
|
|
92
|
+
changedAt: string;
|
|
93
|
+
value?: unknown;
|
|
94
|
+
}>;
|
|
95
|
+
export declare const CellHistoryEntryArraySchema: z.ZodArray<z.ZodObject<{
|
|
96
|
+
versionId: z.ZodString;
|
|
97
|
+
value: z.ZodUnknown;
|
|
98
|
+
changedBy: z.ZodNullable<z.ZodString>;
|
|
99
|
+
changedAt: z.ZodString;
|
|
100
|
+
}, "strip", z.ZodTypeAny, {
|
|
101
|
+
versionId: string;
|
|
102
|
+
changedBy: string | null;
|
|
103
|
+
changedAt: string;
|
|
104
|
+
value?: unknown;
|
|
105
|
+
}, {
|
|
106
|
+
versionId: string;
|
|
107
|
+
changedBy: string | null;
|
|
108
|
+
changedAt: string;
|
|
109
|
+
value?: unknown;
|
|
110
|
+
}>, "many">;
|
|
111
|
+
//# sourceMappingURL=zod-schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zod-schemas.d.ts","sourceRoot":"","sources":["../src/zod-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;gCASX,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;gCASf,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;EAKjC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;WAAkC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for ApiClient response validation (KI-096).
|
|
3
|
+
*
|
|
4
|
+
* Opt-in per call site via the `responseSchema` argument to
|
|
5
|
+
* `ApiClient.request()`. Parse failures throw with a clear message so
|
|
6
|
+
* future backend↔mcp-server contract drift fails loudly instead of
|
|
7
|
+
* silently rendering `undefined` in tool outputs (as it did pre-fix for
|
|
8
|
+
* `get_cell_history`, `resolve_comment`, and `rename_file`).
|
|
9
|
+
*
|
|
10
|
+
* Each schema only declares fields the formatters actually consume —
|
|
11
|
+
* unknown fields are stripped, missing required fields throw. Optional
|
|
12
|
+
* fields keep their typed-as-undefined shape if absent.
|
|
13
|
+
*
|
|
14
|
+
* Schemas live in their own file rather than alongside `types.ts` so a
|
|
15
|
+
* future sweep ticket can migrate the remaining ApiClient methods
|
|
16
|
+
* without each fix needing to touch the shared types module.
|
|
17
|
+
*/
|
|
18
|
+
import { z } from 'zod';
|
|
19
|
+
/**
|
|
20
|
+
* Backend `PATCH /file-chat/:chatId` returns the updated FileChat
|
|
21
|
+
* entity after KI-096 (was UpdateResult). The formatter only reads
|
|
22
|
+
* `internalId` + `resolved`, but the schema captures the common
|
|
23
|
+
* surface that mcp-server depends on.
|
|
24
|
+
*/
|
|
25
|
+
export const FileChatSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
internalId: z.number().int(),
|
|
28
|
+
message: z.string().nullable().optional(),
|
|
29
|
+
resolved: z.boolean().nullable().optional(),
|
|
30
|
+
cellReference: z.string().nullable().optional(),
|
|
31
|
+
createdAt: z.union([z.string(), z.date()]).optional(),
|
|
32
|
+
updatedAt: z.union([z.string(), z.date()]).optional(),
|
|
33
|
+
})
|
|
34
|
+
.passthrough();
|
|
35
|
+
/**
|
|
36
|
+
* Backend `PATCH /enrolled-files/:fileMsId` returns the updated
|
|
37
|
+
* EnrolledFile entity after KI-096 (was UpdateResult). The
|
|
38
|
+
* `rename_file` formatter reads `name` + `platformId`.
|
|
39
|
+
*/
|
|
40
|
+
export const EnrolledFileSchema = z
|
|
41
|
+
.object({
|
|
42
|
+
internalId: z.number().int().optional(),
|
|
43
|
+
platformId: z.string(),
|
|
44
|
+
name: z.string(),
|
|
45
|
+
fileType: z.string().optional(),
|
|
46
|
+
driveMsId: z.string().optional(),
|
|
47
|
+
hasUncommittedChanges: z.boolean().nullable().optional(),
|
|
48
|
+
})
|
|
49
|
+
.passthrough();
|
|
50
|
+
/**
|
|
51
|
+
* Backend `GET /file-versions/file/:fileMsId/cell-history?format=mcp`
|
|
52
|
+
* returns the normalized projection added by KI-096. The mcp-server
|
|
53
|
+
* formatter reads all four fields.
|
|
54
|
+
*/
|
|
55
|
+
export const CellHistoryEntrySchema = z.object({
|
|
56
|
+
versionId: z.string(),
|
|
57
|
+
value: z.unknown(),
|
|
58
|
+
changedBy: z.string().nullable(),
|
|
59
|
+
changedAt: z.string(),
|
|
60
|
+
});
|
|
61
|
+
export const CellHistoryEntryArraySchema = z.array(CellHistoryEntrySchema);
|
|
62
|
+
//# sourceMappingURL=zod-schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zod-schemas.js","sourceRoot":"","sources":["../src/zod-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC3C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC/C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtD,CAAC;KACD,WAAW,EAAE,CAAC;AAEjB;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzD,CAAC;KACD,WAAW,EAAE,CAAC;AAEjB;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rockhopper-co/mcp-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Rockhopper MCP server — expose file metadata, versions, reviews, and comments to AI tools",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -45,13 +45,18 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@modelcontextprotocol/sdk": "^1.12.1",
|
|
48
|
+
"keytar": "^7.9.0",
|
|
48
49
|
"zod": "^3.24.4"
|
|
49
50
|
},
|
|
50
51
|
"devDependencies": {
|
|
52
|
+
"@eslint/js": "^10.0.1",
|
|
51
53
|
"@types/node": "^22.15.2",
|
|
52
54
|
"@vitest/coverage-v8": "^3.2.4",
|
|
55
|
+
"eslint": "^10.4.0",
|
|
56
|
+
"globals": "^17.6.0",
|
|
53
57
|
"tsx": "^4.19.4",
|
|
54
58
|
"typescript": "^5.8.3",
|
|
59
|
+
"typescript-eslint": "^8.59.4",
|
|
55
60
|
"vitest": "^3.1.2",
|
|
56
61
|
"zod-to-json-schema": "^3.24.6"
|
|
57
62
|
},
|