@withpica/mcp-server 2.95.3 → 2.95.4

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 (199) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.intro.md +115 -0
  3. package/README.md +188 -204
  4. package/dist/lib/changelog.generated.d.ts +2 -2
  5. package/dist/lib/changelog.generated.d.ts.map +1 -1
  6. package/dist/lib/changelog.generated.js +2 -2
  7. package/dist/lib/changelog.generated.js.map +1 -1
  8. package/dist/prompts/index.js +2 -2
  9. package/dist/resources/agent-guide.d.ts +50 -4
  10. package/dist/resources/agent-guide.d.ts.map +1 -1
  11. package/dist/resources/agent-guide.js +109 -18
  12. package/dist/resources/agent-guide.js.map +1 -1
  13. package/dist/resources/index.d.ts.map +1 -1
  14. package/dist/resources/index.js +81 -2
  15. package/dist/resources/index.js.map +1 -1
  16. package/dist/resources/llms-primer.d.ts +1 -1
  17. package/dist/resources/llms-primer.d.ts.map +1 -1
  18. package/dist/resources/llms-primer.js +1 -1
  19. package/dist/resources/required-schemas.generated.d.ts +3 -12
  20. package/dist/resources/required-schemas.generated.d.ts.map +1 -1
  21. package/dist/resources/required-schemas.generated.js +3 -18
  22. package/dist/resources/required-schemas.generated.js.map +1 -1
  23. package/dist/resources/required-schemas.source.d.ts.map +1 -1
  24. package/dist/resources/required-schemas.source.js +13 -15
  25. package/dist/resources/required-schemas.source.js.map +1 -1
  26. package/dist/server-instructions.d.ts +2 -2
  27. package/dist/server-instructions.d.ts.map +1 -1
  28. package/dist/server-instructions.js +3 -3
  29. package/dist/skills/skills.generated.d.ts.map +1 -1
  30. package/dist/skills/skills.generated.js +18 -9
  31. package/dist/skills/skills.generated.js.map +1 -1
  32. package/dist/tools/agent-identity.d.ts.map +1 -1
  33. package/dist/tools/agent-identity.js +2 -1
  34. package/dist/tools/agent-identity.js.map +1 -1
  35. package/dist/tools/agreement-types.d.ts.map +1 -1
  36. package/dist/tools/agreement-types.js +23 -11
  37. package/dist/tools/agreement-types.js.map +1 -1
  38. package/dist/tools/agreements.d.ts.map +1 -1
  39. package/dist/tools/agreements.js +17 -9
  40. package/dist/tools/agreements.js.map +1 -1
  41. package/dist/tools/analytics.d.ts.map +1 -1
  42. package/dist/tools/analytics.js +6 -3
  43. package/dist/tools/analytics.js.map +1 -1
  44. package/dist/tools/assets.d.ts.map +1 -1
  45. package/dist/tools/assets.js +20 -13
  46. package/dist/tools/assets.js.map +1 -1
  47. package/dist/tools/audio-files.d.ts.map +1 -1
  48. package/dist/tools/audio-files.js +5 -3
  49. package/dist/tools/audio-files.js.map +1 -1
  50. package/dist/tools/bulk.d.ts.map +1 -1
  51. package/dist/tools/bulk.js +15 -9
  52. package/dist/tools/bulk.js.map +1 -1
  53. package/dist/tools/collaborators.d.ts.map +1 -1
  54. package/dist/tools/collaborators.js +41 -16
  55. package/dist/tools/collaborators.js.map +1 -1
  56. package/dist/tools/comparisons.d.ts.map +1 -1
  57. package/dist/tools/comparisons.js +2 -1
  58. package/dist/tools/comparisons.js.map +1 -1
  59. package/dist/tools/credits.d.ts +4 -3
  60. package/dist/tools/credits.d.ts.map +1 -1
  61. package/dist/tools/credits.js +16 -88
  62. package/dist/tools/credits.js.map +1 -1
  63. package/dist/tools/custody.d.ts.map +1 -1
  64. package/dist/tools/custody.js +43 -10
  65. package/dist/tools/custody.js.map +1 -1
  66. package/dist/tools/dashboard.d.ts.map +1 -1
  67. package/dist/tools/dashboard.js +22 -19
  68. package/dist/tools/dashboard.js.map +1 -1
  69. package/dist/tools/directory.d.ts.map +1 -1
  70. package/dist/tools/directory.js +7 -4
  71. package/dist/tools/directory.js.map +1 -1
  72. package/dist/tools/discovery.d.ts +66 -10
  73. package/dist/tools/discovery.d.ts.map +1 -1
  74. package/dist/tools/discovery.js +212 -25
  75. package/dist/tools/discovery.js.map +1 -1
  76. package/dist/tools/disputes.d.ts.map +1 -1
  77. package/dist/tools/disputes.js +3 -0
  78. package/dist/tools/disputes.js.map +1 -1
  79. package/dist/tools/documents.d.ts.map +1 -1
  80. package/dist/tools/documents.js +9 -6
  81. package/dist/tools/documents.js.map +1 -1
  82. package/dist/tools/enrichment.d.ts.map +1 -1
  83. package/dist/tools/enrichment.js +92 -14
  84. package/dist/tools/enrichment.js.map +1 -1
  85. package/dist/tools/error-envelope.d.ts +44 -0
  86. package/dist/tools/error-envelope.d.ts.map +1 -0
  87. package/dist/tools/error-envelope.js +17 -0
  88. package/dist/tools/error-envelope.js.map +1 -0
  89. package/dist/tools/exports.d.ts.map +1 -1
  90. package/dist/tools/exports.js +24 -9
  91. package/dist/tools/exports.js.map +1 -1
  92. package/dist/tools/groups.d.ts.map +1 -1
  93. package/dist/tools/groups.js +1 -0
  94. package/dist/tools/groups.js.map +1 -1
  95. package/dist/tools/import-documents.d.ts.map +1 -1
  96. package/dist/tools/import-documents.js +3 -2
  97. package/dist/tools/import-documents.js.map +1 -1
  98. package/dist/tools/import.d.ts.map +1 -1
  99. package/dist/tools/import.js +71 -38
  100. package/dist/tools/import.js.map +1 -1
  101. package/dist/tools/index.d.ts +53 -4
  102. package/dist/tools/index.d.ts.map +1 -1
  103. package/dist/tools/index.js +124 -36
  104. package/dist/tools/index.js.map +1 -1
  105. package/dist/tools/licensing.d.ts.map +1 -1
  106. package/dist/tools/licensing.js +6 -2
  107. package/dist/tools/licensing.js.map +1 -1
  108. package/dist/tools/memory.d.ts.map +1 -1
  109. package/dist/tools/memory.js +8 -4
  110. package/dist/tools/memory.js.map +1 -1
  111. package/dist/tools/metadata.d.ts +7 -1
  112. package/dist/tools/metadata.d.ts.map +1 -1
  113. package/dist/tools/metadata.js +31 -2
  114. package/dist/tools/metadata.js.map +1 -1
  115. package/dist/tools/multimedia.d.ts.map +1 -1
  116. package/dist/tools/multimedia.js +7 -3
  117. package/dist/tools/multimedia.js.map +1 -1
  118. package/dist/tools/notes.d.ts.map +1 -1
  119. package/dist/tools/notes.js +9 -6
  120. package/dist/tools/notes.js.map +1 -1
  121. package/dist/tools/notifications.d.ts.map +1 -1
  122. package/dist/tools/notifications.js +16 -27
  123. package/dist/tools/notifications.js.map +1 -1
  124. package/dist/tools/people.d.ts.map +1 -1
  125. package/dist/tools/people.js +8 -5
  126. package/dist/tools/people.js.map +1 -1
  127. package/dist/tools/projects.d.ts.map +1 -1
  128. package/dist/tools/projects.js +16 -12
  129. package/dist/tools/projects.js.map +1 -1
  130. package/dist/tools/recording-custody.d.ts.map +1 -1
  131. package/dist/tools/recording-custody.js +9 -5
  132. package/dist/tools/recording-custody.js.map +1 -1
  133. package/dist/tools/recording-samples.d.ts.map +1 -1
  134. package/dist/tools/recording-samples.js +25 -6
  135. package/dist/tools/recording-samples.js.map +1 -1
  136. package/dist/tools/recordings.d.ts +10 -0
  137. package/dist/tools/recordings.d.ts.map +1 -1
  138. package/dist/tools/recordings.js +32 -19
  139. package/dist/tools/recordings.js.map +1 -1
  140. package/dist/tools/recovery-hints.d.ts.map +1 -1
  141. package/dist/tools/recovery-hints.js +35 -17
  142. package/dist/tools/recovery-hints.js.map +1 -1
  143. package/dist/tools/release-rich.js +5 -5
  144. package/dist/tools/release-rich.js.map +1 -1
  145. package/dist/tools/releases.d.ts.map +1 -1
  146. package/dist/tools/releases.js +21 -12
  147. package/dist/tools/releases.js.map +1 -1
  148. package/dist/tools/royalties.d.ts.map +1 -1
  149. package/dist/tools/royalties.js +12 -6
  150. package/dist/tools/royalties.js.map +1 -1
  151. package/dist/tools/send.d.ts.map +1 -1
  152. package/dist/tools/send.js +7 -4
  153. package/dist/tools/send.js.map +1 -1
  154. package/dist/tools/sessions.d.ts.map +1 -1
  155. package/dist/tools/sessions.js +8 -4
  156. package/dist/tools/sessions.js.map +1 -1
  157. package/dist/tools/settings.d.ts.map +1 -1
  158. package/dist/tools/settings.js +10 -4
  159. package/dist/tools/settings.js.map +1 -1
  160. package/dist/tools/share-links.d.ts.map +1 -1
  161. package/dist/tools/share-links.js +7 -3
  162. package/dist/tools/share-links.js.map +1 -1
  163. package/dist/tools/share-send.d.ts.map +1 -1
  164. package/dist/tools/share-send.js +15 -5
  165. package/dist/tools/share-send.js.map +1 -1
  166. package/dist/tools/shows.d.ts +31 -0
  167. package/dist/tools/shows.d.ts.map +1 -0
  168. package/dist/tools/shows.js +307 -0
  169. package/dist/tools/shows.js.map +1 -0
  170. package/dist/tools/skills.d.ts.map +1 -1
  171. package/dist/tools/skills.js +7 -0
  172. package/dist/tools/skills.js.map +1 -1
  173. package/dist/tools/split-sheets.d.ts.map +1 -1
  174. package/dist/tools/split-sheets.js +19 -12
  175. package/dist/tools/split-sheets.js.map +1 -1
  176. package/dist/tools/statements.js +2 -2
  177. package/dist/tools/statements.js.map +1 -1
  178. package/dist/tools/storage-config.d.ts.map +1 -1
  179. package/dist/tools/storage-config.js +5 -3
  180. package/dist/tools/storage-config.js.map +1 -1
  181. package/dist/tools/subscription.d.ts +69 -19
  182. package/dist/tools/subscription.d.ts.map +1 -1
  183. package/dist/tools/subscription.js +98 -255
  184. package/dist/tools/subscription.js.map +1 -1
  185. package/dist/tools/sync-placements.d.ts.map +1 -1
  186. package/dist/tools/sync-placements.js +10 -5
  187. package/dist/tools/sync-placements.js.map +1 -1
  188. package/dist/tools/telegram.d.ts.map +1 -1
  189. package/dist/tools/telegram.js +16 -24
  190. package/dist/tools/telegram.js.map +1 -1
  191. package/dist/tools/users.d.ts.map +1 -1
  192. package/dist/tools/users.js +12 -6
  193. package/dist/tools/users.js.map +1 -1
  194. package/dist/tools/works.d.ts.map +1 -1
  195. package/dist/tools/works.js +13 -10
  196. package/dist/tools/works.js.map +1 -1
  197. package/package.json +7 -3
  198. package/server.json +2 -2
  199. package/.claude/settings.local.json +0 -5
@@ -1,4 +1,5 @@
1
1
  // Copyright (c) 2025-2026 Withpica Ltd. All rights reserved.
2
+ import { typedError } from "./error-envelope.js";
2
3
  import { formatSuccess, formatAsText, mapGapsToHints, } from "@withpica/mcp-utils";
3
4
  import { buildIntegrityPressure } from "./integrity-hints.js";
4
5
  const VALID_DOMAINS = [
@@ -127,7 +128,10 @@ export class ImportTools {
127
128
  "Pass EITHER `file_content` (raw CSV string) OR `file_id` (from pica_upload_complete). " +
128
129
  "Always run pica_import_validate first to check for errors. " +
129
130
  "Use dry_run: true to preview what would be imported without actually creating records. " +
130
- "Max 10,000 rows per import.",
131
+ "A call runs synchronously under a ~2 minute budget, so the server imports at most row_limit rows per call " +
132
+ "(default 2,000) and returns rowRange.nextOffset when the file has more rows: call again with " +
133
+ "row_offset = nextOffset, and stop when it is null. For a file over ~2,000 rows, upload it once with " +
134
+ "pica_upload_file → pica_upload_complete and pass file_id, so the CSV is not re-sent on every call.",
131
135
  workflows: "infrastructure",
132
136
  vernacular_kind: "specialist",
133
137
  vernacular_reason: "Specialist context; not yet covered by the Creator Question Atlas — pending telemetry-driven addition per ADR-226 Phase 4 substrate writes.",
@@ -181,14 +185,27 @@ export class ImportTools {
181
185
  conflict_strategy: {
182
186
  type: "string",
183
187
  enum: ["error", "skip"],
184
- description: "How to handle DB unique-constraint collisions (e.g. duplicate tunecode/iswc). " +
185
- "'error' (default): a single duplicate fails the whole batch. " +
186
- "'skip': fall back to per-row insert; duplicates become warnings, the rest still land.",
188
+ description: "How to handle DB unique-constraint collisions (e.g. duplicate tunecode/iswc, or two rows with the same title and artist). " +
189
+ "'skip' (default): fall back to per-row insert; the duplicate row becomes a warning, every other row in the batch still lands. " +
190
+ "'error': a single duplicate fails the whole batch opt in only if you need all-or-nothing per batch.",
187
191
  },
188
192
  batch_size: {
189
193
  type: "number",
190
194
  description: "Number of rows to process per batch (default: 50, max: 1000)",
191
195
  },
196
+ row_offset: {
197
+ type: "integer",
198
+ minimum: 0,
199
+ description: "Continuation cursor: index of the first data row to import (0-based, default 0). " +
200
+ "Pass the rowRange.nextOffset from the previous reply to continue a large file.",
201
+ },
202
+ row_limit: {
203
+ type: "integer",
204
+ minimum: 1,
205
+ maximum: 10000,
206
+ description: "Rows to import in this call (default 2,000). Keep it at the default unless the rows are trivially cheap; " +
207
+ "a call the budget ends commits what it wrote and reports nothing.",
208
+ },
192
209
  },
193
210
  required: ["domain", "mapping"],
194
211
  },
@@ -202,7 +219,8 @@ export class ImportTools {
202
219
  audiences: ["stdio", "http", "public"],
203
220
  tier: "read",
204
221
  description: "Get the available target fields for an import domain. Returns field names, labels, types, " +
205
- "and whether they are required. Useful for understanding what columns a CSV should have.",
222
+ "and whether they are required. Useful for understanding what columns a CSV should have. " +
223
+ "For a ready-made example CSV instead, use pica_import_template.",
206
224
  workflows: "infrastructure",
207
225
  vernacular_kind: "specialist",
208
226
  vernacular_reason: "Specialist context; not yet covered by the Creator Question Atlas — pending telemetry-driven addition per ADR-226 Phase 4 substrate writes.",
@@ -227,7 +245,8 @@ export class ImportTools {
227
245
  audiences: ["stdio", "http", "public"],
228
246
  tier: "read",
229
247
  description: "Get an example CSV template for an import domain. Returns a CSV string with headers " +
230
- "and example rows that can be used as a starting point.",
248
+ "and example rows that can be used as a starting point. " +
249
+ "For the field list — names, types, and which are required — use pica_import_fields.",
231
250
  workflows: "infrastructure",
232
251
  vernacular_kind: "specialist",
233
252
  vernacular_reason: "Specialist context; not yet covered by the Creator Question Atlas — pending telemetry-driven addition per ADR-226 Phase 4 substrate writes.",
@@ -253,11 +272,10 @@ export class ImportTools {
253
272
  tier: "write",
254
273
  description: "Import works from a Spotify or Deezer URL — extracts each track's metadata (including its ISRC) and saves it to your catalog. " +
255
274
  "Use when the user asks: 'extract the isrc from this spotify link', 'save the isrc', 'get the isrc for this track', 'import this spotify link/album/playlist'. " +
256
- "Paste a track, album, or playlist link " +
257
- "and PICA will fetch all tracks and create works, recordings, people, and performer credits automatically. " +
258
275
  "Two-step flow: first call without confirm to preview tracks, then call with confirm: true to execute.\n\n" +
259
276
  "Supported platforms: Spotify (track/album/playlist), Deezer (track/album/playlist).\n" +
260
- "Apple Music and artist profile URLs are not yet supported.\n\n" +
277
+ "Apple Music and artist profile URLs are not yet supported. " +
278
+ "For a YouTube video, use pica_import_youtube_link; this one takes Spotify and Deezer links.\n\n" +
261
279
  "Each imported track creates: a work (with title, ISRC, UPC, label, artwork), " +
262
280
  "a recording (with ISRC, linked to work), people records for artists, " +
263
281
  "performer credits, and multimedia links. Enrichment cascades fire automatically. " +
@@ -304,12 +322,12 @@ export class ImportTools {
304
322
  "Two-step flow: first call without confirm to preview the video + classification + " +
305
323
  "work match, then call with confirm: true to execute.\n\n" +
306
324
  "Each imported video creates: a recording (with version_type, youtube_video_id, duration, " +
307
- "artist name, thumbnail as album art), a multimedia_items row linked to the work via " +
308
- "multimedia_work_links. The post-import enrichment cascade hydrates view/like counts " +
325
+ "artist name, thumbnail as album art) and a multimedia entry linked to the work. " +
326
+ "The post-import enrichment cascade hydrates view/like counts " +
309
327
  "onto the recording.\n\n" +
310
328
  "Set refresh: true to re-fetch view/like/comment counts for a video that's already " +
311
- "linked to a recording in this org instead of importing a duplicate — use this to " +
312
- "update stale stats on a video you've imported before.\n\n" +
329
+ "linked to a recording in this org instead of importing a duplicate.\n\n" +
330
+ "For a Spotify or Deezer link, use pica_import_streaming_link; this one takes YouTube URLs.\n\n" +
313
331
  "→ then: pica_credits_update (add songwriting credits), pica_recordings_inspect (check gaps)",
314
332
  workflows: "infrastructure",
315
333
  vernacular_kind: "specialist",
@@ -395,10 +413,7 @@ export class ImportTools {
395
413
  // agents. Surface the message instead — matches the sibling pattern
396
414
  // in importStreamingLink/importYouTubeLink.
397
415
  const message = error instanceof Error ? error.message : String(error);
398
- return {
399
- content: [{ type: "text", text: `CSV analyze failed: ${message}` }],
400
- isError: true,
401
- };
416
+ return typedError("CSV_ANALYZE_FAILED", `CSV analyze failed: ${message}`);
402
417
  }
403
418
  }
404
419
  async validateImport(args) {
@@ -434,8 +449,13 @@ export class ImportTools {
434
449
  const options = {
435
450
  dryRun: args.dry_run ?? false,
436
451
  skipInvalidRows: args.skip_invalid_rows ?? false,
437
- conflictStrategy: args.conflict_strategy,
452
+ // Explicit, not inherited: the executor defaults to "skip" too, but an
453
+ // agent reading this call's echoed options must see the strategy it
454
+ // actually ran under (the 2026-08-17 import ran "error" four times).
455
+ conflictStrategy: args.conflict_strategy ?? "skip",
438
456
  batchSize: args.batch_size,
457
+ rowOffset: args.row_offset,
458
+ rowLimit: args.row_limit,
439
459
  };
440
460
  const result = await this.pica.imports.execute(args.file_id
441
461
  ? {
@@ -451,13 +471,42 @@ export class ImportTools {
451
471
  options,
452
472
  });
453
473
  const prefix = result.dryRun ? "[DRY RUN] " : "";
454
- return formatSuccess(`${prefix}Import complete: ${result.importedCount} created, ` +
474
+ // A live run that wrote rows AND has rows that FAILED is a partial
475
+ // commit, not a failure: the created rows are already in the catalogue.
476
+ // Say so, and say what NOT to do — the 2026-08-17 agent re-sent a
477
+ // 2,239-row file three times because the reply read as "failed"
478
+ // (FIX_LOG 2026-08-24). The route computes `partial` from
479
+ // severity:"error" rows only; trust it, and only fall back to the same
480
+ // rule when talking to a server that predates the field. A skipped
481
+ // duplicate is a WARNING and must not trip this — under the default
482
+ // conflict strategy that is the ordinary clean-import case.
483
+ const hardErrors = result.errors.filter((e) => e.severity === "error").length;
484
+ const partial = typeof result.partial === "boolean"
485
+ ? result.partial
486
+ : !result.dryRun &&
487
+ hardErrors > 0 &&
488
+ (result.importedCount > 0 || result.updatedCount > 0);
489
+ // ADR-314 continuation: the server imports one slice per call and says
490
+ // where the next one starts. Repeat the instruction in prose — an agent
491
+ // acts on the sentence, not on a field it did not ask about.
492
+ const range = result.rowRange;
493
+ const continuation = range && range.nextOffset !== null && range.nextOffset !== undefined
494
+ ? ` Rows ${range.offset + 1}-${range.offset + range.count} of ${range.totalRowsInFile} processed; ` +
495
+ `call pica_import_execute again with row_offset: ${range.nextOffset} (same file_id or file_content, same mapping) to continue.`
496
+ : "";
497
+ return formatSuccess(`${prefix}Import ${partial ? "PARTIALLY complete" : "complete"}: ${result.importedCount} created, ` +
455
498
  `${result.updatedCount} updated, ${result.skippedCount} skipped. ` +
456
- `${result.errors.length} errors.`, {
499
+ `${result.errors.length} errors/warnings.` +
500
+ (partial
501
+ ? " The created rows are saved. Do NOT re-send the whole file: read the errors below and re-send only the rows that failed."
502
+ : "") +
503
+ continuation, {
457
504
  importedCount: result.importedCount,
458
505
  updatedCount: result.updatedCount,
459
506
  skippedCount: result.skippedCount,
460
507
  dryRun: result.dryRun,
508
+ partial,
509
+ rowRange: range,
461
510
  errors: result.errors.length > 0 ? result.errors.slice(0, 10) : undefined,
462
511
  createdRecords: result.createdRecords.length <= 20
463
512
  ? result.createdRecords
@@ -591,15 +640,7 @@ export class ImportTools {
591
640
  }
592
641
  catch (error) {
593
642
  const message = error instanceof Error ? error.message : String(error);
594
- return {
595
- content: [
596
- {
597
- type: "text",
598
- text: `Streaming import failed: ${message}`,
599
- },
600
- ],
601
- isError: true,
602
- };
643
+ return typedError("STREAMING_IMPORT_FAILED", `Streaming import failed: ${message}`);
603
644
  }
604
645
  }
605
646
  async importYouTubeLink(args) {
@@ -684,15 +725,7 @@ export class ImportTools {
684
725
  }
685
726
  catch (error) {
686
727
  const message = error instanceof Error ? error.message : String(error);
687
- return {
688
- content: [
689
- {
690
- type: "text",
691
- text: `YouTube import failed: ${message}`,
692
- },
693
- ],
694
- isError: true,
695
- };
728
+ return typedError("YOUTUBE_IMPORT_FAILED", `YouTube import failed: ${message}`);
696
729
  }
697
730
  }
698
731
  }
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/tools/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/tools/import.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ export type WorkflowTag = "work-required" | "recording-required" | "work-credits
60
60
  * Universal coverage: every tool declares its kind. Phase 7 lint promotes
61
61
  * the field to a required-with-blocking check; Phase 3 (this commit)
62
62
  * leaves it optional during the bulk-classification ramp and flips it to
63
- * required in the same commit once all 244 tools have been populated by
63
+ * required in the same commit once every registered tool has been populated by
64
64
  * `scripts/bulk-classify-vernacular-kind.ts`.
65
65
  */
66
66
  export type VernacularKind = "creator-entry" | "internal" | "specialist";
@@ -242,9 +242,10 @@ export interface ToolDefinition {
242
242
  * on the WRAPPED tool (executeTool re-derives gates from the inner tool's
243
243
  * tier; `app/api/mcp/route.ts` re-checks the inner tool's required scopes),
244
244
  * NOT on the wrapper. The wrapper itself can therefore cause writes/deletes,
245
- * so it must advertise `readOnlyHint:false` + `openWorldHint:true`. listTools()
246
- * merges these over the tier-derived hints. Advisory only — no effect on
247
- * scope, confirmation, freshness, or audit enforcement.
245
+ * so it must advertise `readOnlyHint:false` + `openWorldHint:true`.
246
+ * `deriveAnnotations()` merges these over the tier-derived hints, so both the
247
+ * flat and the layered surface see them. Advisory only — no effect on scope,
248
+ * confirmation, freshness, or audit enforcement.
248
249
  */
249
250
  annotationOverrides?: {
250
251
  readOnlyHint?: boolean;
@@ -389,6 +390,54 @@ declare function sanitizeAuditParams(args: Record<string, any>): Record<string,
389
390
  export declare const _internal: {
390
391
  sanitizeAuditParams: typeof sanitizeAuditParams;
391
392
  };
393
+ /**
394
+ * The four MCP-spec annotation hints plus `title`, derived from one place.
395
+ *
396
+ * Before this existed the derivation lived inline in `listTools()`, so the
397
+ * layered-discovery surface (`pica_tool_details` → `buildToolDetail` in
398
+ * discovery.ts) fell back to the tool's *declared* `annotations` — which most
399
+ * tools never declare, so it answered `annotations: null` for the large
400
+ * majority of the registry while the flat surface answered real hints for the
401
+ * same tool (measured 2026-08-24). Connector clients only ever see the layered
402
+ * surface, so they could not tell a delete from a read.
403
+ *
404
+ * ADR-230 — declared `tier` is the source of truth for the two hints that
405
+ * describe AUTHORITY. Declared `annotations.readOnlyHint` /
406
+ * `annotations.destructiveHint` are NOT read: they would let a declaration
407
+ * contradict the tier that actually drives the confirmation token and the
408
+ * `destructive:*` scope. `metadata.risk` is a quiet fallback for a tool that
409
+ * somehow bypassed lint Rule 13.
410
+ *
411
+ * Two hints a declaration CAN set, because neither describes authority and
412
+ * nothing enforces against either:
413
+ *
414
+ * - `openWorldHint` — a declaration may RAISE it (never lower it); the name
415
+ * patterns in `EXTERNAL_SIDE_EFFECT_PATTERNS` raise it on their own.
416
+ * - `idempotentHint` — a declared value WINS outright (ruling 2026-08-24).
417
+ * The tier-derived value is a guess from `TOOL_METADATA.retry_safe` plus
418
+ * "destructive is never idempotent", and it was wrong on four tools whose
419
+ * authors had said otherwise in the definition — `pica_storage_disconnect`
420
+ * is destructive-tier and its own description reads "Idempotent — calling
421
+ * on an already-PICA-managed org is a no-op". The author knows; the
422
+ * heuristic does not.
423
+ *
424
+ * `annotationOverrides` still merges last, so it beats all of the above.
425
+ *
426
+ * Agreement between the two surfaces is pinned by "listTools() and
427
+ * pica_tool_details agree on the four core hints" in
428
+ * `src/__tests__/tools/tool-details-contract.test.ts`; the precedence rules
429
+ * themselves are pinned by the synthetic-definition cases in the same file.
430
+ * `scripts/ci/check-agent-readability.mjs` (`tier-annotation-mismatch`)
431
+ * applies the identical rule when it looks for declarations the derivation
432
+ * silently discards.
433
+ */
434
+ export declare function deriveAnnotations(definition: ToolDefinition): {
435
+ title?: string;
436
+ readOnlyHint: boolean;
437
+ destructiveHint: boolean;
438
+ idempotentHint: boolean;
439
+ openWorldHint: boolean;
440
+ };
392
441
  export declare class ToolRegistry {
393
442
  private tools;
394
443
  private pica;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { RecordingsTools } from "./recordings.js";
8
8
  import { SearchTools } from "./search.js";
9
9
  import { LicensingTools } from "./licensing.js";
10
10
  import { BookingsTools } from "./bookings.js";
11
+ import { ShowsTools } from "./shows.js";
11
12
  import { CreditsTools } from "./credits.js";
12
13
  import { AudioFilesTools } from "./audio-files.js";
13
14
  import { MultimediaTools } from "./multimedia.js";
@@ -288,6 +289,116 @@ function toWireDefinition(definition) {
288
289
  delete wire[field];
289
290
  return wire;
290
291
  }
292
+ /**
293
+ * Tools whose effect leaves PICA — email, invites, Telegram, the send hub.
294
+ * Pattern-derived so a new tool inherits the classification without an edit.
295
+ * Feeds BOTH the `createsExternalSideEffects` extended annotation and the
296
+ * MCP-spec `openWorldHint`, which is the same claim in the spec's words.
297
+ */
298
+ const EXTERNAL_SIDE_EFFECT_PATTERNS = [
299
+ "telegram",
300
+ "_send_",
301
+ "_send",
302
+ "send_message",
303
+ "send_resend",
304
+ "team_comms_send",
305
+ "_notify_user",
306
+ "_invite",
307
+ ];
308
+ function hasExternalSideEffects(toolName) {
309
+ return EXTERNAL_SIDE_EFFECT_PATTERNS.some((p) => toolName.includes(p));
310
+ }
311
+ /**
312
+ * The four MCP-spec annotation hints plus `title`, derived from one place.
313
+ *
314
+ * Before this existed the derivation lived inline in `listTools()`, so the
315
+ * layered-discovery surface (`pica_tool_details` → `buildToolDetail` in
316
+ * discovery.ts) fell back to the tool's *declared* `annotations` — which most
317
+ * tools never declare, so it answered `annotations: null` for the large
318
+ * majority of the registry while the flat surface answered real hints for the
319
+ * same tool (measured 2026-08-24). Connector clients only ever see the layered
320
+ * surface, so they could not tell a delete from a read.
321
+ *
322
+ * ADR-230 — declared `tier` is the source of truth for the two hints that
323
+ * describe AUTHORITY. Declared `annotations.readOnlyHint` /
324
+ * `annotations.destructiveHint` are NOT read: they would let a declaration
325
+ * contradict the tier that actually drives the confirmation token and the
326
+ * `destructive:*` scope. `metadata.risk` is a quiet fallback for a tool that
327
+ * somehow bypassed lint Rule 13.
328
+ *
329
+ * Two hints a declaration CAN set, because neither describes authority and
330
+ * nothing enforces against either:
331
+ *
332
+ * - `openWorldHint` — a declaration may RAISE it (never lower it); the name
333
+ * patterns in `EXTERNAL_SIDE_EFFECT_PATTERNS` raise it on their own.
334
+ * - `idempotentHint` — a declared value WINS outright (ruling 2026-08-24).
335
+ * The tier-derived value is a guess from `TOOL_METADATA.retry_safe` plus
336
+ * "destructive is never idempotent", and it was wrong on four tools whose
337
+ * authors had said otherwise in the definition — `pica_storage_disconnect`
338
+ * is destructive-tier and its own description reads "Idempotent — calling
339
+ * on an already-PICA-managed org is a no-op". The author knows; the
340
+ * heuristic does not.
341
+ *
342
+ * `annotationOverrides` still merges last, so it beats all of the above.
343
+ *
344
+ * Agreement between the two surfaces is pinned by "listTools() and
345
+ * pica_tool_details agree on the four core hints" in
346
+ * `src/__tests__/tools/tool-details-contract.test.ts`; the precedence rules
347
+ * themselves are pinned by the synthetic-definition cases in the same file.
348
+ * `scripts/ci/check-agent-readability.mjs` (`tier-annotation-mismatch`)
349
+ * applies the identical rule when it looks for declarations the derivation
350
+ * silently discards.
351
+ */
352
+ export function deriveAnnotations(definition) {
353
+ const metadata = getToolMetadata(definition.name);
354
+ const declaredTier = definition.tier;
355
+ const openWorldHint = hasExternalSideEffects(definition.name) ||
356
+ definition.annotations?.openWorldHint === true;
357
+ // Advisory-hint overrides (the pica_execute dispatcher is the only current
358
+ // user) merged last so they win over the tier-derived hints.
359
+ const overrides = definition.annotationOverrides ?? {};
360
+ // A declared idempotentHint wins over the tier-derived guess (see header).
361
+ // `{}` when undeclared, so the spread is a no-op rather than an `undefined`
362
+ // that would clobber the computed value.
363
+ const declaredIdempotent = typeof definition.annotations?.idempotentHint === "boolean"
364
+ ? { idempotentHint: definition.annotations.idempotentHint }
365
+ : {};
366
+ if (declaredTier && metadata) {
367
+ return {
368
+ title: metadata.display_name,
369
+ readOnlyHint: declaredTier === "read",
370
+ destructiveHint: declaredTier === "destructive",
371
+ idempotentHint: declaredTier !== "destructive" && metadata.retry_safe,
372
+ openWorldHint,
373
+ ...declaredIdempotent,
374
+ ...overrides,
375
+ };
376
+ }
377
+ if (metadata) {
378
+ return {
379
+ title: metadata.display_name,
380
+ readOnlyHint: metadata.risk === "safe",
381
+ destructiveHint: metadata.risk === "destructive",
382
+ idempotentHint: metadata.risk !== "destructive" && metadata.retry_safe,
383
+ openWorldHint,
384
+ ...declaredIdempotent,
385
+ ...overrides,
386
+ };
387
+ }
388
+ // No TOOL_METADATA entry — the lobby meta-tools (sign_in/out, discover,
389
+ // tool_details, execute). Source from declared tier; default to read when
390
+ // tier is somehow missing (lint blocks; defensive only).
391
+ const tierForHints = declaredTier ?? "read";
392
+ return {
393
+ title: definition.name,
394
+ readOnlyHint: tierForHints === "read",
395
+ destructiveHint: tierForHints === "destructive",
396
+ idempotentHint: false,
397
+ openWorldHint,
398
+ ...declaredIdempotent,
399
+ ...overrides,
400
+ };
401
+ }
291
402
  export class ToolRegistry {
292
403
  tools;
293
404
  pica;
@@ -411,6 +522,11 @@ export class ToolRegistry {
411
522
  bookingsTools.getTools().forEach((tool) => {
412
523
  this.tools.set(tool.definition.name, tool);
413
524
  });
525
+ // Shows tools (ADR-313) — live shows and tour credits
526
+ const showsTools = new ShowsTools(pica);
527
+ showsTools.getTools().forEach((tool) => {
528
+ this.tools.set(tool.definition.name, tool);
529
+ });
414
530
  // Credits tools
415
531
  const creditsTools = new CreditsTools(pica);
416
532
  creditsTools.getTools().forEach((tool) => {
@@ -893,18 +1009,11 @@ export class ToolRegistry {
893
1009
  ...definition,
894
1010
  description: injectMetadataIntoDescription(tool.definition.description, metadata),
895
1011
  annotations: {
896
- title: metadata.display_name,
897
- readOnlyHint: declaredTier === "read",
898
- destructiveHint: declaredTier === "destructive",
899
- idempotentHint: declaredTier !== "destructive" && metadata.retry_safe,
900
- openWorldHint: false,
1012
+ ...deriveAnnotations(definition),
901
1013
  // ADR-199 extended annotation classes — read by ChatGPT/Claude.ai
902
1014
  // connectors directly. Derived from declared tier so the four
903
1015
  // surfaces (hint, riskLevel, audit row, scope) all agree.
904
1016
  ...this.deriveExtendedAnnotations(definition, metadata, undefined, declaredTier),
905
- // Advisory-hint overrides (e.g. the pica_execute dispatcher) merged
906
- // last so they win over the tier-derived hints. Enforcement unaffected.
907
- ...(definition.annotationOverrides ?? {}),
908
1017
  },
909
1018
  };
910
1019
  }
@@ -913,13 +1022,8 @@ export class ToolRegistry {
913
1022
  ...definition,
914
1023
  description: injectMetadataIntoDescription(tool.definition.description, metadata),
915
1024
  annotations: {
916
- title: metadata.display_name,
917
- readOnlyHint: metadata.risk === "safe",
918
- destructiveHint: metadata.risk === "destructive",
919
- idempotentHint: metadata.risk !== "destructive" && metadata.retry_safe,
920
- openWorldHint: false,
1025
+ ...deriveAnnotations(definition),
921
1026
  ...this.deriveExtendedAnnotations(definition, metadata),
922
- ...(definition.annotationOverrides ?? {}),
923
1027
  },
924
1028
  };
925
1029
  }
@@ -929,18 +1033,11 @@ export class ToolRegistry {
929
1033
  // when tier is somehow missing (lint blocks; defensive only).
930
1034
  const tierForHints = declaredTier ?? "read";
931
1035
  const annotations = {
932
- title: definition.name,
933
- readOnlyHint: tierForHints === "read",
934
- destructiveHint: tierForHints === "destructive",
935
- idempotentHint: false,
936
- openWorldHint: false,
1036
+ ...deriveAnnotations(definition),
937
1037
  // ADR-199: derive the extended classes from declared tier so the
938
1038
  // category/risk surface stays aligned with the rest of the
939
1039
  // hint/audit/scope chain.
940
1040
  ...this.deriveExtendedAnnotations(definition, null, undefined, tierForHints),
941
- // Advisory-hint overrides (e.g. the pica_execute dispatcher) merged last
942
- // so they win over the tier-derived hints. Enforcement unaffected.
943
- ...(definition.annotationOverrides ?? {}),
944
1041
  };
945
1042
  // No risk prefix needed — annotations handle this structurally
946
1043
  return { ...definition, annotations };
@@ -969,18 +1066,9 @@ export class ToolRegistry {
969
1066
  ? tierToRiskLevel(declaredTier)
970
1067
  : (metadata?.risk ?? "safe");
971
1068
  // Side-effecting external systems: telegram, send-hub, comms, broadcasts.
972
- // Pattern-derived so new tools inherit without edits.
973
- const externalSideEffectPatterns = [
974
- "telegram",
975
- "_send_",
976
- "_send",
977
- "send_message",
978
- "send_resend",
979
- "team_comms_send",
980
- "_notify_user",
981
- "_invite",
982
- ];
983
- const createsExternalSideEffects = externalSideEffectPatterns.some((p) => name.includes(p));
1069
+ // Shared with deriveAnnotations() so this class and the spec's
1070
+ // `openWorldHint` cannot drift apart (EXTERNAL_SIDE_EFFECT_PATTERNS above).
1071
+ const createsExternalSideEffects = hasExternalSideEffects(name);
984
1072
  // Paginated reads: every *_query and *_list tool.
985
1073
  const returnsPaginated = /_query$|_list$|_search/.test(name);
986
1074
  // Tools that mutate state are followed by a verifying inspect call when
@@ -1273,7 +1361,7 @@ export class ToolRegistry {
1273
1361
  completeness_pct: 0,
1274
1362
  pending_uploads: 0,
1275
1363
  billing_state: "trial",
1276
- trial_days_remaining: null,
1364
+ plan: "free_runway",
1277
1365
  current_tier: null,
1278
1366
  capacity_pct: 0,
1279
1367
  };
@@ -1297,7 +1385,7 @@ export class ToolRegistry {
1297
1385
  // the field is missing entirely (older server pre-Phase-1), mirror the
1298
1386
  // same conservative shape locally rather than fabricate "active".
1299
1387
  billing_state: billing?.billing_state ?? "trial",
1300
- trial_days_remaining: billing?.trial_days_remaining ?? null,
1388
+ plan: billing?.plan ?? "free_runway",
1301
1389
  current_tier: billing?.current_tier ?? null,
1302
1390
  capacity_pct: billing?.capacity_pct ?? 0,
1303
1391
  ...(storage