@rockhopper-co/mcp-server 0.7.0 → 0.10.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.
Files changed (52) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +31 -0
  3. package/dist/api-client.d.ts +83 -3
  4. package/dist/api-client.d.ts.map +1 -1
  5. package/dist/api-client.js +171 -10
  6. package/dist/api-client.js.map +1 -1
  7. package/dist/auth/device-grant-client.d.ts.map +1 -1
  8. package/dist/auth/device-grant-client.js +3 -1
  9. package/dist/auth/device-grant-client.js.map +1 -1
  10. package/dist/cli.js +39 -1
  11. package/dist/cli.js.map +1 -1
  12. package/dist/correlation.d.ts +9 -0
  13. package/dist/correlation.d.ts.map +1 -0
  14. package/dist/correlation.js +26 -0
  15. package/dist/correlation.js.map +1 -0
  16. package/dist/logger.d.ts +42 -0
  17. package/dist/logger.d.ts.map +1 -0
  18. package/dist/logger.js +159 -0
  19. package/dist/logger.js.map +1 -0
  20. package/dist/not-ready.d.ts +95 -0
  21. package/dist/not-ready.d.ts.map +1 -0
  22. package/dist/not-ready.js +151 -0
  23. package/dist/not-ready.js.map +1 -0
  24. package/dist/prompts/index.d.ts.map +1 -1
  25. package/dist/prompts/index.js +8 -0
  26. package/dist/prompts/index.js.map +1 -1
  27. package/dist/resources/changes.d.ts.map +1 -1
  28. package/dist/resources/changes.js +6 -0
  29. package/dist/resources/changes.js.map +1 -1
  30. package/dist/resources/orchestration-guide.md +23 -3
  31. package/dist/resources/teams.d.ts.map +1 -1
  32. package/dist/resources/teams.js +7 -1
  33. package/dist/resources/teams.js.map +1 -1
  34. package/dist/server.d.ts.map +1 -1
  35. package/dist/server.js +40 -1
  36. package/dist/server.js.map +1 -1
  37. package/dist/tools/get-cell-history.d.ts.map +1 -1
  38. package/dist/tools/get-cell-history.js +28 -4
  39. package/dist/tools/get-cell-history.js.map +1 -1
  40. package/dist/tools/search.d.ts.map +1 -1
  41. package/dist/tools/search.js +13 -1
  42. package/dist/tools/search.js.map +1 -1
  43. package/dist/tools/write-reviews.d.ts.map +1 -1
  44. package/dist/tools/write-reviews.js +58 -4
  45. package/dist/tools/write-reviews.js.map +1 -1
  46. package/dist/types.d.ts +58 -0
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/zod-schemas.d.ts +30 -54
  49. package/dist/zod-schemas.d.ts.map +1 -1
  50. package/dist/zod-schemas.js +24 -0
  51. package/dist/zod-schemas.js.map +1 -1
  52. package/package.json +22 -10
@@ -27,23 +27,9 @@ export declare const FileChatSchema: z.ZodObject<{
27
27
  message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
28
28
  resolved: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
29
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">>;
30
+ createdAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodDate]>>;
31
+ updatedAt: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodDate]>>;
32
+ }, z.core.$loose>;
47
33
  /**
48
34
  * Backend `PATCH /enrolled-files/:fileMsId` returns the updated
49
35
  * EnrolledFile entity after KI-096 (was UpdateResult). The
@@ -56,21 +42,7 @@ export declare const EnrolledFileSchema: z.ZodObject<{
56
42
  fileType: z.ZodOptional<z.ZodString>;
57
43
  driveMsId: z.ZodOptional<z.ZodString>;
58
44
  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">>;
45
+ }, z.core.$loose>;
74
46
  /**
75
47
  * Backend `GET /file-versions/file/:fileMsId/cell-history?format=mcp`
76
48
  * returns the normalized projection added by KI-096. The mcp-server
@@ -81,31 +53,35 @@ export declare const CellHistoryEntrySchema: z.ZodObject<{
81
53
  value: z.ZodUnknown;
82
54
  changedBy: z.ZodNullable<z.ZodString>;
83
55
  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
- }>;
56
+ formula: z.ZodOptional<z.ZodNullable<z.ZodString>>;
57
+ provenance: z.ZodOptional<z.ZodString>;
58
+ actorKind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
59
+ drivingHuman: z.ZodOptional<z.ZodNullable<z.ZodString>>;
60
+ formatted: z.ZodOptional<z.ZodString>;
61
+ }, z.core.$strip>;
95
62
  export declare const CellHistoryEntryArraySchema: z.ZodArray<z.ZodObject<{
96
63
  versionId: z.ZodString;
97
64
  value: z.ZodUnknown;
98
65
  changedBy: z.ZodNullable<z.ZodString>;
99
66
  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">;
67
+ formula: z.ZodOptional<z.ZodNullable<z.ZodString>>;
68
+ provenance: z.ZodOptional<z.ZodString>;
69
+ actorKind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ drivingHuman: z.ZodOptional<z.ZodNullable<z.ZodString>>;
71
+ formatted: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$strip>>;
73
+ /**
74
+ * Backend `GET /file-versions/file/:fileMsId/fold-status` (KI-1399) — the
75
+ * authoritative queue read the strict no-partial gate consults before any
76
+ * change-history surface serves a row (plan 02 ruling 5). Schema-parsed
77
+ * because a drifted/absent `foldPending` must fail loudly: silently
78
+ * `undefined` would coerce falsy and serve partial rows, which is the exact
79
+ * failure the gate exists to prevent.
80
+ */
81
+ export declare const FoldStatusSchema: z.ZodObject<{
82
+ fileMsId: z.ZodOptional<z.ZodString>;
83
+ foldPending: z.ZodBoolean;
84
+ foldTargetVersionId: z.ZodNullable<z.ZodNumber>;
85
+ checkedAt: z.ZodOptional<z.ZodString>;
86
+ }, z.core.$loose>;
111
87
  //# sourceMappingURL=zod-schemas.d.ts.map
@@ -1 +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"}
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;;;;;;;iBASX,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;;;;;iBASf,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;iBAajC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;kBAAkC,CAAC;AAE3E;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB;;;;;iBAOb,CAAC"}
@@ -57,6 +57,30 @@ export const CellHistoryEntrySchema = z.object({
57
57
  value: z.unknown(),
58
58
  changedBy: z.string().nullable(),
59
59
  changedAt: z.string(),
60
+ // ENG-1638 (P3-2) remainder: the widened ledger-served projection. Optional —
61
+ // the legacy normalized fallback (not-eligible file / Google / old backend)
62
+ // carries only the four core fields.
63
+ formula: z.string().nullable().optional(),
64
+ provenance: z.string().optional(),
65
+ actorKind: z.string().nullable().optional(),
66
+ drivingHuman: z.string().nullable().optional(),
67
+ formatted: z.string().optional(),
60
68
  });
61
69
  export const CellHistoryEntryArraySchema = z.array(CellHistoryEntrySchema);
70
+ /**
71
+ * Backend `GET /file-versions/file/:fileMsId/fold-status` (KI-1399) — the
72
+ * authoritative queue read the strict no-partial gate consults before any
73
+ * change-history surface serves a row (plan 02 ruling 5). Schema-parsed
74
+ * because a drifted/absent `foldPending` must fail loudly: silently
75
+ * `undefined` would coerce falsy and serve partial rows, which is the exact
76
+ * failure the gate exists to prevent.
77
+ */
78
+ export const FoldStatusSchema = z
79
+ .object({
80
+ fileMsId: z.string().optional(),
81
+ foldPending: z.boolean(),
82
+ foldTargetVersionId: z.number().int().nullable(),
83
+ checkedAt: z.string().optional(),
84
+ })
85
+ .passthrough();
62
86
  //# sourceMappingURL=zod-schemas.js.map
@@ -1 +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"}
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;IACrB,8EAA8E;IAC9E,4EAA4E;IAC5E,qCAAqC;IACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC3C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,WAAW,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rockhopper-co/mcp-server",
3
- "version": "0.7.0",
3
+ "version": "0.10.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",
@@ -46,20 +46,32 @@
46
46
  "dependencies": {
47
47
  "@modelcontextprotocol/sdk": "^1.12.1",
48
48
  "keytar": "^7.9.0",
49
- "zod": "^3.24.4"
49
+ "pino": "^10.3.1",
50
+ "pino-roll": "^4.0.0",
51
+ "zod": "^4.4.3"
50
52
  },
51
53
  "devDependencies": {
52
54
  "@eslint/js": "^10.0.1",
53
- "@types/node": "^22.15.2",
54
- "@vitest/coverage-v8": "^3.2.4",
55
- "eslint": "^10.4.0",
56
- "globals": "^17.6.0",
57
- "tsx": "^4.19.4",
58
- "typescript": "^5.8.3",
59
- "typescript-eslint": "^8.59.4",
60
- "vitest": "^3.1.2",
55
+ "@types/node": "^26.1.1",
56
+ "@vitest/coverage-v8": "^4.1.10",
57
+ "eslint": "^10.7.0",
58
+ "globals": "^17.7.0",
59
+ "tsx": "^4.23.1",
60
+ "typescript": "^6.0.3",
61
+ "typescript-eslint": "^8.65.0",
62
+ "vitest": "^4.1.10",
61
63
  "zod-to-json-schema": "^3.24.6"
62
64
  },
65
+ "overrides": {
66
+ "@hono/node-server@1": "^1.19.17",
67
+ "body-parser@2": "^2.3.0",
68
+ "brace-expansion@5": "^5.0.7",
69
+ "fast-uri@3": "^3.1.5",
70
+ "hono@4": "^4.12.34",
71
+ "ip-address@10": "^10.3.1",
72
+ "postcss@8": "^8.5.18",
73
+ "qs@6": "^6.15.2"
74
+ },
63
75
  "keywords": [
64
76
  "mcp",
65
77
  "model-context-protocol",