@withpica/mcp-server 2.6.2 → 2.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.
Files changed (256) hide show
  1. package/dist/config.d.ts +25 -4
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +12 -36
  4. package/dist/config.js.map +1 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +3 -3
  7. package/dist/index.js.map +1 -1
  8. package/dist/pica-sdk.d.ts +1231 -0
  9. package/dist/pica-sdk.d.ts.map +1 -0
  10. package/dist/pica-sdk.js +1403 -0
  11. package/dist/pica-sdk.js.map +1 -0
  12. package/dist/prompts/index.d.ts +64 -64
  13. package/dist/prompts/index.js +24 -24
  14. package/dist/prompts/index.js.map +1 -1
  15. package/dist/resources/index.d.ts +53 -55
  16. package/dist/resources/index.d.ts.map +1 -1
  17. package/dist/resources/index.js +54 -133
  18. package/dist/resources/index.js.map +1 -1
  19. package/dist/server.d.ts +32 -49
  20. package/dist/server.d.ts.map +1 -1
  21. package/dist/server.js +14 -103
  22. package/dist/server.js.map +1 -1
  23. package/dist/tools/index.d.ts +37 -83
  24. package/dist/tools/index.d.ts.map +1 -1
  25. package/dist/tools/index.js +84 -442
  26. package/dist/tools/index.js.map +1 -1
  27. package/dist/tools/people.d.ts +47 -39
  28. package/dist/tools/people.d.ts.map +1 -1
  29. package/dist/tools/people.js +109 -148
  30. package/dist/tools/people.js.map +1 -1
  31. package/dist/tools/recordings.d.ts +9 -9
  32. package/dist/tools/recordings.d.ts.map +1 -1
  33. package/dist/tools/recordings.js +48 -121
  34. package/dist/tools/recordings.js.map +1 -1
  35. package/dist/tools/search.d.ts +21 -21
  36. package/dist/tools/search.d.ts.map +1 -1
  37. package/dist/tools/search.js +3 -3
  38. package/dist/tools/search.js.map +1 -1
  39. package/dist/tools/works.d.ts +47 -39
  40. package/dist/tools/works.d.ts.map +1 -1
  41. package/dist/tools/works.js +116 -201
  42. package/dist/tools/works.js.map +1 -1
  43. package/dist/utils/errors.d.ts +29 -0
  44. package/dist/utils/errors.d.ts.map +1 -0
  45. package/dist/utils/errors.js +115 -0
  46. package/dist/utils/errors.js.map +1 -0
  47. package/dist/utils/formatting.d.ts +82 -0
  48. package/dist/utils/formatting.d.ts.map +1 -0
  49. package/dist/utils/formatting.js +125 -0
  50. package/dist/utils/formatting.js.map +1 -0
  51. package/package.json +1 -1
  52. package/server.json +1 -1
  53. package/dist/__mocks__/mppx-mcp-sdk-server.d.ts +0 -6
  54. package/dist/__mocks__/mppx-mcp-sdk-server.d.ts.map +0 -1
  55. package/dist/__mocks__/mppx-mcp-sdk-server.js +0 -6
  56. package/dist/__mocks__/mppx-mcp-sdk-server.js.map +0 -1
  57. package/dist/__mocks__/mppx-server.d.ts +0 -12
  58. package/dist/__mocks__/mppx-server.d.ts.map +0 -1
  59. package/dist/__mocks__/mppx-server.js +0 -12
  60. package/dist/__mocks__/mppx-server.js.map +0 -1
  61. package/dist/apps/download.d.ts +0 -2
  62. package/dist/apps/download.d.ts.map +0 -1
  63. package/dist/apps/download.js +0 -125
  64. package/dist/apps/download.js.map +0 -1
  65. package/dist/apps/generated/shared-bundle.d.ts +0 -5
  66. package/dist/apps/generated/shared-bundle.d.ts.map +0 -1
  67. package/dist/apps/generated/shared-bundle.js +0 -7
  68. package/dist/apps/generated/shared-bundle.js.map +0 -1
  69. package/dist/apps/shared.d.ts +0 -15
  70. package/dist/apps/shared.d.ts.map +0 -1
  71. package/dist/apps/shared.js +0 -480
  72. package/dist/apps/shared.js.map +0 -1
  73. package/dist/apps/upload.d.ts +0 -2
  74. package/dist/apps/upload.d.ts.map +0 -1
  75. package/dist/apps/upload.js +0 -280
  76. package/dist/apps/upload.js.map +0 -1
  77. package/dist/resources/llms-primer.d.ts +0 -2
  78. package/dist/resources/llms-primer.d.ts.map +0 -1
  79. package/dist/resources/llms-primer.js +0 -68
  80. package/dist/resources/llms-primer.js.map +0 -1
  81. package/dist/server-instructions.d.ts +0 -9
  82. package/dist/server-instructions.d.ts.map +0 -1
  83. package/dist/server-instructions.js +0 -34
  84. package/dist/server-instructions.js.map +0 -1
  85. package/dist/tools/agreement-types.d.ts +0 -27
  86. package/dist/tools/agreement-types.d.ts.map +0 -1
  87. package/dist/tools/agreement-types.js +0 -387
  88. package/dist/tools/agreement-types.js.map +0 -1
  89. package/dist/tools/agreements.d.ts +0 -20
  90. package/dist/tools/agreements.d.ts.map +0 -1
  91. package/dist/tools/agreements.js +0 -363
  92. package/dist/tools/agreements.js.map +0 -1
  93. package/dist/tools/analytics.d.ts +0 -20
  94. package/dist/tools/analytics.d.ts.map +0 -1
  95. package/dist/tools/analytics.js +0 -124
  96. package/dist/tools/analytics.js.map +0 -1
  97. package/dist/tools/app-tools.d.ts +0 -21
  98. package/dist/tools/app-tools.d.ts.map +0 -1
  99. package/dist/tools/app-tools.js +0 -248
  100. package/dist/tools/app-tools.js.map +0 -1
  101. package/dist/tools/assets.d.ts +0 -21
  102. package/dist/tools/assets.d.ts.map +0 -1
  103. package/dist/tools/assets.js +0 -441
  104. package/dist/tools/assets.js.map +0 -1
  105. package/dist/tools/audio-files.d.ts +0 -20
  106. package/dist/tools/audio-files.d.ts.map +0 -1
  107. package/dist/tools/audio-files.js +0 -384
  108. package/dist/tools/audio-files.js.map +0 -1
  109. package/dist/tools/auth.d.ts +0 -22
  110. package/dist/tools/auth.d.ts.map +0 -1
  111. package/dist/tools/auth.js +0 -210
  112. package/dist/tools/auth.js.map +0 -1
  113. package/dist/tools/bulk.d.ts +0 -16
  114. package/dist/tools/bulk.d.ts.map +0 -1
  115. package/dist/tools/bulk.js +0 -85
  116. package/dist/tools/bulk.js.map +0 -1
  117. package/dist/tools/calendar.d.ts +0 -15
  118. package/dist/tools/calendar.d.ts.map +0 -1
  119. package/dist/tools/calendar.js +0 -67
  120. package/dist/tools/calendar.js.map +0 -1
  121. package/dist/tools/collaborators.d.ts +0 -17
  122. package/dist/tools/collaborators.d.ts.map +0 -1
  123. package/dist/tools/collaborators.js +0 -131
  124. package/dist/tools/collaborators.js.map +0 -1
  125. package/dist/tools/comparisons.d.ts +0 -22
  126. package/dist/tools/comparisons.d.ts.map +0 -1
  127. package/dist/tools/comparisons.js +0 -78
  128. package/dist/tools/comparisons.js.map +0 -1
  129. package/dist/tools/credits.d.ts +0 -17
  130. package/dist/tools/credits.d.ts.map +0 -1
  131. package/dist/tools/credits.js +0 -312
  132. package/dist/tools/credits.js.map +0 -1
  133. package/dist/tools/dashboard.d.ts +0 -19
  134. package/dist/tools/dashboard.d.ts.map +0 -1
  135. package/dist/tools/dashboard.js +0 -146
  136. package/dist/tools/dashboard.js.map +0 -1
  137. package/dist/tools/directory.d.ts +0 -15
  138. package/dist/tools/directory.d.ts.map +0 -1
  139. package/dist/tools/directory.js +0 -106
  140. package/dist/tools/directory.js.map +0 -1
  141. package/dist/tools/discovery.d.ts +0 -28
  142. package/dist/tools/discovery.d.ts.map +0 -1
  143. package/dist/tools/discovery.js +0 -560
  144. package/dist/tools/discovery.js.map +0 -1
  145. package/dist/tools/disputes.d.ts +0 -18
  146. package/dist/tools/disputes.d.ts.map +0 -1
  147. package/dist/tools/disputes.js +0 -61
  148. package/dist/tools/disputes.js.map +0 -1
  149. package/dist/tools/documents.d.ts +0 -15
  150. package/dist/tools/documents.d.ts.map +0 -1
  151. package/dist/tools/documents.js +0 -36
  152. package/dist/tools/documents.js.map +0 -1
  153. package/dist/tools/duplicates.d.ts +0 -16
  154. package/dist/tools/duplicates.d.ts.map +0 -1
  155. package/dist/tools/duplicates.js +0 -87
  156. package/dist/tools/duplicates.js.map +0 -1
  157. package/dist/tools/enrichment.d.ts +0 -20
  158. package/dist/tools/enrichment.d.ts.map +0 -1
  159. package/dist/tools/enrichment.js +0 -154
  160. package/dist/tools/enrichment.js.map +0 -1
  161. package/dist/tools/exports.d.ts +0 -19
  162. package/dist/tools/exports.d.ts.map +0 -1
  163. package/dist/tools/exports.js +0 -175
  164. package/dist/tools/exports.js.map +0 -1
  165. package/dist/tools/import-documents.d.ts +0 -21
  166. package/dist/tools/import-documents.d.ts.map +0 -1
  167. package/dist/tools/import-documents.js +0 -203
  168. package/dist/tools/import-documents.js.map +0 -1
  169. package/dist/tools/import.d.ts +0 -30
  170. package/dist/tools/import.d.ts.map +0 -1
  171. package/dist/tools/import.js +0 -455
  172. package/dist/tools/import.js.map +0 -1
  173. package/dist/tools/integrations.d.ts +0 -15
  174. package/dist/tools/integrations.d.ts.map +0 -1
  175. package/dist/tools/integrations.js +0 -100
  176. package/dist/tools/integrations.js.map +0 -1
  177. package/dist/tools/licensing.d.ts +0 -40
  178. package/dist/tools/licensing.d.ts.map +0 -1
  179. package/dist/tools/licensing.js +0 -431
  180. package/dist/tools/licensing.js.map +0 -1
  181. package/dist/tools/memory.d.ts +0 -21
  182. package/dist/tools/memory.d.ts.map +0 -1
  183. package/dist/tools/memory.js +0 -116
  184. package/dist/tools/memory.js.map +0 -1
  185. package/dist/tools/metadata.d.ts +0 -15
  186. package/dist/tools/metadata.d.ts.map +0 -1
  187. package/dist/tools/metadata.js +0 -1069
  188. package/dist/tools/metadata.js.map +0 -1
  189. package/dist/tools/multimedia.d.ts +0 -19
  190. package/dist/tools/multimedia.d.ts.map +0 -1
  191. package/dist/tools/multimedia.js +0 -291
  192. package/dist/tools/multimedia.js.map +0 -1
  193. package/dist/tools/notes.d.ts +0 -21
  194. package/dist/tools/notes.d.ts.map +0 -1
  195. package/dist/tools/notes.js +0 -108
  196. package/dist/tools/notes.js.map +0 -1
  197. package/dist/tools/notifications.d.ts +0 -17
  198. package/dist/tools/notifications.d.ts.map +0 -1
  199. package/dist/tools/notifications.js +0 -117
  200. package/dist/tools/notifications.js.map +0 -1
  201. package/dist/tools/projects.d.ts +0 -19
  202. package/dist/tools/projects.d.ts.map +0 -1
  203. package/dist/tools/projects.js +0 -140
  204. package/dist/tools/projects.js.map +0 -1
  205. package/dist/tools/publishers.d.ts +0 -16
  206. package/dist/tools/publishers.d.ts.map +0 -1
  207. package/dist/tools/publishers.js +0 -69
  208. package/dist/tools/publishers.js.map +0 -1
  209. package/dist/tools/purchases.d.ts +0 -15
  210. package/dist/tools/purchases.d.ts.map +0 -1
  211. package/dist/tools/purchases.js +0 -63
  212. package/dist/tools/purchases.js.map +0 -1
  213. package/dist/tools/recovery-hints.d.ts +0 -14
  214. package/dist/tools/recovery-hints.d.ts.map +0 -1
  215. package/dist/tools/recovery-hints.js +0 -277
  216. package/dist/tools/recovery-hints.js.map +0 -1
  217. package/dist/tools/releases.d.ts +0 -18
  218. package/dist/tools/releases.d.ts.map +0 -1
  219. package/dist/tools/releases.js +0 -128
  220. package/dist/tools/releases.js.map +0 -1
  221. package/dist/tools/royalties.d.ts +0 -23
  222. package/dist/tools/royalties.d.ts.map +0 -1
  223. package/dist/tools/royalties.js +0 -257
  224. package/dist/tools/royalties.js.map +0 -1
  225. package/dist/tools/send.d.ts +0 -17
  226. package/dist/tools/send.d.ts.map +0 -1
  227. package/dist/tools/send.js +0 -185
  228. package/dist/tools/send.js.map +0 -1
  229. package/dist/tools/sessions.d.ts +0 -18
  230. package/dist/tools/sessions.d.ts.map +0 -1
  231. package/dist/tools/sessions.js +0 -115
  232. package/dist/tools/sessions.js.map +0 -1
  233. package/dist/tools/settings.d.ts +0 -18
  234. package/dist/tools/settings.d.ts.map +0 -1
  235. package/dist/tools/settings.js +0 -96
  236. package/dist/tools/settings.js.map +0 -1
  237. package/dist/tools/share-links.d.ts +0 -19
  238. package/dist/tools/share-links.d.ts.map +0 -1
  239. package/dist/tools/share-links.js +0 -121
  240. package/dist/tools/share-links.js.map +0 -1
  241. package/dist/tools/split-sheets.d.ts +0 -25
  242. package/dist/tools/split-sheets.d.ts.map +0 -1
  243. package/dist/tools/split-sheets.js +0 -307
  244. package/dist/tools/split-sheets.js.map +0 -1
  245. package/dist/tools/team.d.ts +0 -22
  246. package/dist/tools/team.d.ts.map +0 -1
  247. package/dist/tools/team.js +0 -134
  248. package/dist/tools/team.js.map +0 -1
  249. package/dist/tools/telegram.d.ts +0 -20
  250. package/dist/tools/telegram.d.ts.map +0 -1
  251. package/dist/tools/telegram.js +0 -88
  252. package/dist/tools/telegram.js.map +0 -1
  253. package/dist/tools/uploads.d.ts +0 -17
  254. package/dist/tools/uploads.d.ts.map +0 -1
  255. package/dist/tools/uploads.js +0 -156
  256. package/dist/tools/uploads.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk.d.ts","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAGtE,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA0D3D,eAAe;YAkBf,qBAAqB;CAmBpC"}
@@ -1,85 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { formatSuccess, formatValidationError } from "@withpica/mcp-utils";
3
- export class BulkTools {
4
- pica;
5
- constructor(pica) {
6
- this.pica = pica;
7
- }
8
- getTools() {
9
- return [
10
- {
11
- definition: {
12
- name: "pica_works_bulk_update",
13
- description: "Batch update multiple works at once (status, type, or other fields)",
14
- inputSchema: {
15
- type: "object",
16
- properties: {
17
- work_ids: {
18
- type: "array",
19
- items: { type: "string" },
20
- description: "Array of work IDs to update",
21
- },
22
- updates: {
23
- type: "object",
24
- description: "Fields to update on all works (e.g. { status: 'verified', work_type: 'composition' })",
25
- },
26
- },
27
- required: ["work_ids", "updates"],
28
- },
29
- },
30
- executor: this.bulkUpdateWorks.bind(this),
31
- },
32
- {
33
- definition: {
34
- name: "pica_people_bulk_update_roles",
35
- description: "Batch update roles for multiple people at once",
36
- inputSchema: {
37
- type: "object",
38
- properties: {
39
- person_ids: {
40
- type: "array",
41
- items: { type: "string" },
42
- description: "Array of person IDs to update",
43
- },
44
- action: {
45
- type: "string",
46
- enum: ["add", "remove"],
47
- description: "Whether to add or remove the specified roles",
48
- },
49
- roles: {
50
- type: "array",
51
- items: { type: "string" },
52
- description: "Roles to add/remove (e.g. ['writer', 'composer', 'performer'])",
53
- },
54
- },
55
- required: ["person_ids", "action", "roles"],
56
- },
57
- },
58
- executor: this.bulkUpdatePeopleRoles.bind(this),
59
- },
60
- ];
61
- }
62
- async bulkUpdateWorks(args) {
63
- if (!args.work_ids?.length) {
64
- return formatValidationError({ work_ids: "must be a non-empty array" });
65
- }
66
- if (!args.updates || Object.keys(args.updates).length === 0) {
67
- return formatValidationError({
68
- updates: "must contain at least one field",
69
- });
70
- }
71
- const result = await this.pica.bulk.updateWorks(args.work_ids, args.updates);
72
- return formatSuccess(`Bulk updated ${args.work_ids.length} works`, result);
73
- }
74
- async bulkUpdatePeopleRoles(args) {
75
- if (!args.person_ids?.length) {
76
- return formatValidationError({ person_ids: "must be a non-empty array" });
77
- }
78
- if (!args.roles?.length) {
79
- return formatValidationError({ roles: "must be a non-empty array" });
80
- }
81
- const result = await this.pica.bulk.updatePeopleRoles(args.person_ids, args.roles, args.action || "add");
82
- return formatSuccess(`Bulk updated roles for ${args.person_ids.length} people`, result);
83
- }
84
- }
85
- //# sourceMappingURL=bulk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk.js","sourceRoot":"","sources":["../../src/tools/bulk.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Calendar Tools — view upcoming events, deadlines, and scheduled sessions
3
- */
4
- import { PicaClient } from "@withpica/mcp-sdk";
5
- import { ToolDefinition, ToolExecutor } from "./index.js";
6
- export declare class CalendarTools {
7
- private pica;
8
- constructor(pica: PicaClient);
9
- getTools(): Array<{
10
- definition: ToolDefinition;
11
- executor: ToolExecutor;
12
- }>;
13
- private getEvents;
14
- }
15
- //# sourceMappingURL=calendar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/tools/calendar.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAGtE,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA4C3D,SAAS;CAqBxB"}
@@ -1,67 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { formatStructuredList } from "@withpica/mcp-utils";
3
- export class CalendarTools {
4
- pica;
5
- constructor(pica) {
6
- this.pica = pica;
7
- }
8
- getTools() {
9
- return [
10
- {
11
- definition: {
12
- name: "pica_calendar_events",
13
- description: "Get upcoming calendar events — sessions, agreement deadlines, release dates, " +
14
- "invoice due dates, and Google Calendar events. Defaults to the next 30 days.",
15
- inputSchema: {
16
- type: "object",
17
- properties: {
18
- start_date: {
19
- type: "string",
20
- description: "Start date (YYYY-MM-DD). Defaults to today.",
21
- },
22
- end_date: {
23
- type: "string",
24
- description: "End date (YYYY-MM-DD). Defaults to 30 days from start.",
25
- },
26
- types: {
27
- type: "array",
28
- items: { type: "string" },
29
- description: "Filter by event type: session, invoice_due, invoice_sent, " +
30
- "payment_received, agreement_expiry, agreement_signing, " +
31
- "work_release, google_calendar",
32
- },
33
- work_id: {
34
- type: "string",
35
- description: "Filter events linked to a specific work",
36
- },
37
- search: {
38
- type: "string",
39
- description: "Search events by title",
40
- },
41
- },
42
- },
43
- },
44
- executor: this.getEvents.bind(this),
45
- },
46
- ];
47
- }
48
- async getEvents(args) {
49
- const today = new Date().toISOString().split("T")[0];
50
- const thirtyDays = new Date(Date.now() + 30 * 86400000)
51
- .toISOString()
52
- .split("T")[0];
53
- const result = await this.pica.calendar.getEvents({
54
- startDate: args.start_date || today,
55
- endDate: args.end_date || thirtyDays,
56
- types: args.types,
57
- workId: args.work_id,
58
- search: args.search,
59
- });
60
- const events = Array.isArray(result) ? result : result?.events || [];
61
- return formatStructuredList(events, "event", {
62
- startDate: args.start_date || today,
63
- endDate: args.end_date || thirtyDays,
64
- });
65
- }
66
- }
67
- //# sourceMappingURL=calendar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../src/tools/calendar.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAQ7D,OAAO,EAAiB,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE1E,MAAM,OAAO,aAAa;IAChB,IAAI,CAAa;IAEzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,sBAAsB;oBAC5B,WAAW,EACT,+EAA+E;wBAC/E,8EAA8E;oBAChF,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,6CAA6C;6BAC3D;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,wDAAwD;6BAC3D;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gCACzB,WAAW,EACT,4DAA4D;oCAC5D,yDAAyD;oCACzD,+BAA+B;6BAClC;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,yCAAyC;6BACvD;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,wBAAwB;6BACtC;yBACF;qBACF;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aACpC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,IAAyB;QAC/C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC;aACpD,WAAW,EAAE;aACb,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAChD,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,KAAK;YACnC,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAI,UAAU;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,OAAO;YACpB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;QAErE,OAAO,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE;YAC3C,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,KAAK;YACnC,OAAO,EAAE,IAAI,CAAC,QAAQ,IAAI,UAAU;SACrC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Collaborator Tools - MCP tools for inviting and managing collaborators
3
- */
4
- import { PicaClient } from "@withpica/mcp-sdk";
5
- import { ToolDefinition, ToolExecutor } from "./index.js";
6
- export declare class CollaboratorsTools {
7
- private pica;
8
- constructor(pica: PicaClient);
9
- getTools(): Array<{
10
- definition: ToolDefinition;
11
- executor: ToolExecutor;
12
- }>;
13
- private inviteCollaborator;
14
- private listInvites;
15
- private resendInvite;
16
- }
17
- //# sourceMappingURL=collaborators.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collaborators.d.ts","sourceRoot":"","sources":["../../src/tools/collaborators.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAQtE,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA+F3D,kBAAkB;YAgClB,WAAW;YASX,YAAY;CAO3B"}
@@ -1,131 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { formatSuccess, formatList, } from "@withpica/mcp-utils";
3
- export class CollaboratorsTools {
4
- pica;
5
- constructor(pica) {
6
- this.pica = pica;
7
- }
8
- getTools() {
9
- return [
10
- {
11
- definition: {
12
- name: "pica_collaborators_invite",
13
- description: "Invite a collaborator to a work by email. Creates the person if they don't exist, sends an invite email, and sets up their credit on the work. Requires the work ID, person details (name + email), the inviter's person ID, and credit details.",
14
- inputSchema: {
15
- type: "object",
16
- properties: {
17
- work_id: {
18
- type: "string",
19
- description: "The work ID to invite the collaborator to",
20
- },
21
- name: {
22
- type: "string",
23
- description: "Full name of the collaborator",
24
- },
25
- email: {
26
- type: "string",
27
- description: "Email address of the collaborator",
28
- },
29
- role: {
30
- type: "string",
31
- description: "Role on the work (e.g. 'producer', 'songwriter', 'drummer', 'vocalist')",
32
- },
33
- invited_by: {
34
- type: "string",
35
- description: "Person ID of the person sending the invite (the catalog owner). Use pica_people_query to find this ID.",
36
- },
37
- credit_type: {
38
- type: "string",
39
- description: "Type of credit (e.g. 'production', 'songwriting', 'drums', 'vocals', 'mixing')",
40
- },
41
- percentage_split: {
42
- type: "number",
43
- description: "Percentage split for this credit (0-100)",
44
- },
45
- },
46
- required: ["work_id", "name", "email", "invited_by", "credit_type"],
47
- },
48
- },
49
- executor: this.inviteCollaborator.bind(this),
50
- },
51
- {
52
- definition: {
53
- name: "pica_collaborators_invites_list",
54
- description: "List collaboration invites with optional filters. Returns pending, accepted, or expired invites.",
55
- inputSchema: {
56
- type: "object",
57
- properties: {
58
- status: {
59
- type: "string",
60
- description: "Filter by status (default: 'pending')",
61
- enum: ["pending", "accepted", "expired"],
62
- },
63
- work_id: {
64
- type: "string",
65
- description: "Filter invites for a specific work",
66
- },
67
- limit: {
68
- type: "number",
69
- description: "Maximum results to return (default: 50, max: 100)",
70
- },
71
- },
72
- },
73
- },
74
- executor: this.listInvites.bind(this),
75
- },
76
- {
77
- definition: {
78
- name: "pica_collaborators_invite_resend",
79
- description: "Resend a pending collaboration invite. Regenerates the invite token and sends a new email.",
80
- inputSchema: {
81
- type: "object",
82
- properties: {
83
- invite_id: {
84
- type: "string",
85
- description: "The invite ID to resend",
86
- },
87
- },
88
- required: ["invite_id"],
89
- },
90
- },
91
- executor: this.resendInvite.bind(this),
92
- },
93
- ];
94
- }
95
- async inviteCollaborator(args) {
96
- const result = await this.pica.collaborators.invite({
97
- workId: args.work_id,
98
- personData: {
99
- name: args.name,
100
- email: args.email,
101
- role: args.role,
102
- },
103
- invitedBy: args.invited_by,
104
- creditData: {
105
- credit_type: args.credit_type,
106
- percentage_split: args.percentage_split,
107
- },
108
- });
109
- const hints = [
110
- {
111
- gap: "collaborator_missing_identifiers",
112
- suggestion: `Enrich ${args.name} with ISNI or IPI for royalty collection (pica_people_enrich_isni)`,
113
- severity: "important",
114
- },
115
- ];
116
- return formatSuccess(`Invite sent to ${args.name} (${args.email}) for credit "${args.credit_type}" on work ${args.work_id}.`, result, hints);
117
- }
118
- async listInvites(args) {
119
- const invites = await this.pica.collaborators.listInvites({
120
- status: args.status,
121
- workId: args.work_id,
122
- limit: args.limit,
123
- });
124
- return formatList(invites, { status: args.status || "pending" });
125
- }
126
- async resendInvite(args) {
127
- const result = await this.pica.collaborators.resendInvite(args.invite_id);
128
- return formatSuccess(`Invite ${args.invite_id} resent successfully.`, result);
129
- }
130
- }
131
- //# sourceMappingURL=collaborators.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collaborators.js","sourceRoot":"","sources":["../../src/tools/collaborators.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- /**
2
- * Comparison Tools - MCP tools for comparing enrichment sources vs catalog data
3
- * and registration status across PROs.
4
- *
5
- * ADR-116 Phase 2: Comparative views
6
- *
7
- * These tools return structured comparisons that agents can reason over directly,
8
- * eliminating the need for 4-6 separate tool calls to assemble context manually.
9
- */
10
- import { PicaClient } from "@withpica/mcp-sdk";
11
- import { ToolDefinition, ToolExecutor } from "./index.js";
12
- export declare class ComparisonTools {
13
- private pica;
14
- constructor(pica: PicaClient);
15
- getTools(): Array<{
16
- definition: ToolDefinition;
17
- executor: ToolExecutor;
18
- }>;
19
- private enrichmentCompare;
20
- private registrationsCompare;
21
- }
22
- //# sourceMappingURL=comparisons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comparisons.d.ts","sourceRoot":"","sources":["../../src/tools/comparisons.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAGtE,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YAoD3D,iBAAiB;YAqBjB,oBAAoB;CAkBnC"}
@@ -1,78 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { formatSuccess } from "@withpica/mcp-utils";
3
- export class ComparisonTools {
4
- pica;
5
- constructor(pica) {
6
- this.pica = pica;
7
- }
8
- getTools() {
9
- return [
10
- {
11
- definition: {
12
- name: "pica_enrichment_compare",
13
- description: "Compare enrichment source data vs catalog for a work or person. " +
14
- "Returns a side-by-side comparison showing what each source (MusicBrainz, MLC, Spotify, " +
15
- "YouTube, Discogs, ISNI) has vs what's in the catalog, with match status and suggested actions. " +
16
- "Use this to identify gaps, discrepancies, and enrichment opportunities.",
17
- inputSchema: {
18
- type: "object",
19
- properties: {
20
- entity_type: {
21
- type: "string",
22
- description: "Type of entity to compare",
23
- enum: ["work", "person"],
24
- },
25
- entity_id: {
26
- type: "string",
27
- description: "Work ID or Person ID",
28
- },
29
- },
30
- required: ["entity_type", "entity_id"],
31
- },
32
- },
33
- executor: this.enrichmentCompare.bind(this),
34
- },
35
- {
36
- definition: {
37
- name: "pica_registrations_compare",
38
- description: "Compare registration status across PROs (PRS, MCPS, PPL, VPL) for a work. " +
39
- "Returns which PROs the work is registered with, registration dates/IDs, and " +
40
- "suggested actions for missing registrations. Also identifies cascade opportunities " +
41
- "(e.g. ISRC available → PPL registration is ready).",
42
- inputSchema: {
43
- type: "object",
44
- properties: {
45
- work_id: {
46
- type: "string",
47
- description: "Work ID to check registrations for",
48
- },
49
- },
50
- required: ["work_id"],
51
- },
52
- },
53
- executor: this.registrationsCompare.bind(this),
54
- },
55
- ];
56
- }
57
- async enrichmentCompare(args) {
58
- const result = await this.pica.comparisons.enrichmentCompare({
59
- entityType: args.entity_type,
60
- entityId: args.entity_id,
61
- });
62
- // SDK request() unwraps data.data, so result is the inner object directly
63
- const data = result;
64
- const fieldCount = data.fields?.length || 0;
65
- const fieldsWithValue = data.fields?.filter((f) => f.currentValue != null).length || 0;
66
- const actionCount = data.suggestedActions?.length || 0;
67
- return formatSuccess(`Enrichment comparison for "${data.title}": ${fieldsWithValue}/${fieldCount} fields populated. ${actionCount} suggested action${actionCount !== 1 ? "s" : ""}.`, result);
68
- }
69
- async registrationsCompare(args) {
70
- const result = await this.pica.comparisons.registrationsCompare(args.work_id);
71
- const data = result;
72
- const registeredCount = data.registrations?.filter((r) => r.registered === true).length || 0;
73
- const totalPros = data.registrations?.length || 0;
74
- const actionCount = data.suggestedActions?.length || 0;
75
- return formatSuccess(`Registration status for "${data.title}": ${registeredCount}/${totalPros} PROs registered. ${actionCount} suggested action${actionCount !== 1 ? "s" : ""}.`, result);
76
- }
77
- }
78
- //# sourceMappingURL=comparisons.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comparisons.js","sourceRoot":"","sources":["../../src/tools/comparisons.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Credits Tools - MCP tools for managing work credits (collaborators and splits)
3
- */
4
- import { PicaClient } from "@withpica/mcp-sdk";
5
- import { ToolDefinition, ToolExecutor } from "./index.js";
6
- export declare class CreditsTools {
7
- private pica;
8
- constructor(pica: PicaClient);
9
- getTools(): Array<{
10
- definition: ToolDefinition;
11
- executor: ToolExecutor;
12
- }>;
13
- private getBalance;
14
- private listCredits;
15
- private updateCredits;
16
- }
17
- //# sourceMappingURL=credits.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"credits.d.ts","sourceRoot":"","sources":["../../src/tools/credits.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AActE,qBAAa,YAAY;IACvB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YA4I3D,UAAU;YAeV,WAAW;YA2BX,aAAa;CA+L5B"}