@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,28 +0,0 @@
1
- /**
2
- * Layered Discovery Tools — ADR-149 Phase 5d
3
- *
4
- * When MCP_LAYERED_DISCOVERY=1, the catalog server handshake exposes only:
5
- * pica_sign_in, pica_sign_out, pica_discover, pica_tool_details, pica_execute
6
- *
7
- * Agents use pica_discover → pica_tool_details → pica_execute to progressively
8
- * discover and invoke the full tool set without overwhelming the context window.
9
- */
10
- import type { ToolDefinition, ToolExecutor } from "./index.js";
11
- export declare class DiscoveryTools {
12
- private executeToolFn;
13
- private getToolDef;
14
- constructor(executeToolFn: (name: string, args: Record<string, any>) => Promise<any>, getToolDef: (name: string) => {
15
- definition: ToolDefinition;
16
- executor: ToolExecutor;
17
- metadata?: any;
18
- } | undefined);
19
- getTools(): Array<{
20
- definition: ToolDefinition;
21
- executor: ToolExecutor;
22
- }>;
23
- private buildDiscoverTool;
24
- private buildToolDetailsTool;
25
- private buildToolDetail;
26
- private buildExecuteTool;
27
- }
28
- //# sourceMappingURL=discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/tools/discovery.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAgS3E,qBAAa,cAAc;IAEvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,UAAU;gBAJV,aAAa,EAAE,CACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACtB,OAAO,CAAC,GAAG,CAAC,EACT,UAAU,EAAE,CAClB,IAAI,EAAE,MAAM,KAEV;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAA;KAAE,GACtE,SAAS;IAGf,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAQzE,OAAO,CAAC,iBAAiB;IAqDzB,OAAO,CAAC,oBAAoB;IAuH5B,OAAO,CAAC,eAAe;IAoCvB,OAAO,CAAC,gBAAgB;CAiHzB"}
@@ -1,560 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { getToolMetadata } from "./metadata.js";
3
- import { RECOVERY_HINTS } from "./recovery-hints.js";
4
- const SCHEMA_VERSION = "2026.1";
5
- /**
6
- * Hand-maintained category taxonomy for the catalog server.
7
- * Grouped by natural entity/capability prefix.
8
- * Cross-server depends_on declarations use "<server-slug>:<category>" format.
9
- */
10
- const CATEGORIES = {
11
- works: {
12
- description: "manage your musical works",
13
- tools: [
14
- "pica_works_query",
15
- "pica_works_inspect",
16
- "pica_works_create",
17
- "pica_works_update",
18
- "pica_works_delete",
19
- "pica_works_bulk_delete",
20
- "pica_works_bulk_update",
21
- "pica_works_verify",
22
- ],
23
- depends_on: [],
24
- },
25
- people: {
26
- description: "manage people in your catalog",
27
- tools: [
28
- "pica_people_query",
29
- "pica_people_inspect",
30
- "pica_people_create",
31
- "pica_people_update",
32
- "pica_people_delete",
33
- "pica_people_bulk_update_roles",
34
- ],
35
- depends_on: [],
36
- },
37
- recordings: {
38
- description: "manage recordings linked to works",
39
- tools: [
40
- "pica_recordings_query",
41
- "pica_recordings_inspect",
42
- "pica_recordings_create",
43
- "pica_recordings_update",
44
- "pica_recordings_delete",
45
- ],
46
- depends_on: [],
47
- },
48
- credits: {
49
- description: "manage work credits and contributors",
50
- tools: ["pica_credits_list", "pica_credits_update"],
51
- depends_on: [],
52
- },
53
- multimedia: {
54
- description: "manage photos, videos, and media linked to works",
55
- tools: [
56
- "pica_multimedia_search",
57
- "pica_multimedia_create",
58
- "pica_multimedia_import_url",
59
- "pica_multimedia_link_youtube",
60
- "pica_multimedia_link_work",
61
- ],
62
- depends_on: [],
63
- },
64
- audio: {
65
- description: "manage and analyze audio files",
66
- tools: [
67
- "pica_audio_query",
68
- "pica_audio_inspect",
69
- "pica_audio_presigned_upload",
70
- "pica_audio_complete_upload",
71
- "pica_audio_analyze",
72
- "pica_audio_identify",
73
- ],
74
- depends_on: [],
75
- },
76
- projects: {
77
- description: "manage albums, EPs, and work groupings",
78
- tools: [
79
- "pica_projects_list",
80
- "pica_projects_get",
81
- "pica_projects_create",
82
- "pica_projects_update",
83
- "pica_projects_delete",
84
- ],
85
- depends_on: [],
86
- },
87
- releases: {
88
- description: "manage releases with dates, labels, and UPCs",
89
- tools: [
90
- "pica_releases_list",
91
- "pica_releases_get",
92
- "pica_releases_create",
93
- "pica_releases_update",
94
- ],
95
- depends_on: [],
96
- },
97
- sessions: {
98
- description: "track work sessions and studio time",
99
- tools: [
100
- "pica_sessions_list",
101
- "pica_sessions_get",
102
- "pica_sessions_create",
103
- "pica_sessions_types",
104
- ],
105
- depends_on: [],
106
- },
107
- notes: {
108
- description: "create and manage catalog notes",
109
- tools: [
110
- "pica_notes_list",
111
- "pica_notes_get",
112
- "pica_notes_create",
113
- "pica_notes_delete",
114
- ],
115
- depends_on: [],
116
- },
117
- duplicates: {
118
- description: "detect and merge duplicate records",
119
- tools: ["pica_find_duplicates", "pica_merge_duplicates"],
120
- depends_on: [],
121
- },
122
- import: {
123
- description: "import catalog data from files and streaming services",
124
- tools: [
125
- "pica_import_fields",
126
- "pica_import_template",
127
- "pica_import_analyze",
128
- "pica_import_validate",
129
- "pica_import_execute",
130
- "pica_import_streaming_link",
131
- "pica_import_from_spotify",
132
- "pica_import_documents_query",
133
- "pica_import_documents_inspect",
134
- "pica_ingest_statement",
135
- ],
136
- depends_on: [],
137
- },
138
- export: {
139
- description: "export catalog data in various formats",
140
- tools: [
141
- "pica_export_catalog_csv",
142
- "pica_export_song_registration",
143
- "pica_export_industry_ready",
144
- "pica_export_catalog_asset_report",
145
- "pica_export_ai_consent",
146
- ],
147
- depends_on: [
148
- "mcp-server-business:agreements",
149
- "mcp-server-business:splits",
150
- ],
151
- },
152
- search: {
153
- description: "search across the catalog and discover content",
154
- tools: [
155
- "pica_search_all",
156
- "pica_catalog_stats",
157
- "pica_graph_traverse",
158
- "pica_discoveries_query",
159
- "pica_discoveries_review",
160
- ],
161
- depends_on: [],
162
- },
163
- analytics: {
164
- description: "provenance, carbon, and catalog analytics",
165
- tools: [
166
- "pica_provenance_stats",
167
- "pica_provenance_work",
168
- "pica_provenance_certificate",
169
- "pica_carbon_footprint",
170
- "pica_carbon_live",
171
- "pica_catalog_diligence",
172
- ],
173
- depends_on: ["mcp-server-business:agreements"],
174
- },
175
- documents: {
176
- description: "analyse documents with ai",
177
- tools: ["pica_documents_analyse"],
178
- depends_on: [],
179
- },
180
- calendar: {
181
- description: "view catalog calendar events",
182
- tools: ["pica_calendar_events"],
183
- depends_on: [],
184
- },
185
- publishers: {
186
- description: "look up and create publishers",
187
- tools: ["pica_publishers_query", "pica_publishers_create"],
188
- depends_on: [],
189
- },
190
- briefing: {
191
- description: "get your daily catalog briefing and dashboard",
192
- tools: [
193
- "pica_dashboard_attention",
194
- "pica_dashboard_briefing",
195
- "pica_dashboard_pulse",
196
- ],
197
- depends_on: [],
198
- },
199
- enrichment: {
200
- description: "enrich your catalog metadata from external sources",
201
- tools: [
202
- "pica_enrichment_candidates",
203
- "pica_enrichment_compare",
204
- "pica_enrich_work_mlc",
205
- "pica_enrich_work_musicbrainz",
206
- "pica_enrich_work_discogs",
207
- "pica_enrich_work_spotify",
208
- "pica_enrich_work_youtube",
209
- "pica_people_enrich_isni",
210
- "pica_people_enrich_musicbrainz",
211
- "pica_registrations_compare",
212
- ],
213
- depends_on: [],
214
- },
215
- team: {
216
- description: "manage your team members and roles",
217
- tools: [
218
- "pica_team_list",
219
- "pica_team_get",
220
- "pica_team_invite",
221
- "pica_team_update_role",
222
- "pica_team_remove",
223
- ],
224
- depends_on: [],
225
- },
226
- memory: {
227
- description: "save and recall workspace memories across sessions",
228
- tools: [
229
- "pica_memory_list",
230
- "pica_memory_search",
231
- "pica_memory_save",
232
- "pica_memory_delete",
233
- ],
234
- depends_on: [],
235
- },
236
- account: {
237
- description: "manage credits, storage, and integrations",
238
- tools: [
239
- "pica_credits_balance",
240
- "pica_credits_history",
241
- "pica_credits_purchase",
242
- "pica_storage_status",
243
- "pica_integrations_status",
244
- ],
245
- depends_on: [],
246
- },
247
- profile: {
248
- description: "manage your user, organisation, and directory profile",
249
- tools: [
250
- "pica_user_profile",
251
- "pica_organisation_profile",
252
- "pica_directory_settings",
253
- ],
254
- depends_on: [],
255
- },
256
- uploads: {
257
- description: "upload files to the platform",
258
- tools: ["pica_upload_file", "pica_upload_complete"],
259
- depends_on: [],
260
- },
261
- };
262
- /**
263
- * Operational metadata defaults for pica_tool_details responses.
264
- * These are reasonable defaults — _query tools return pages, _inspect/_get return one.
265
- */
266
- function getOperationalMeta(toolName) {
267
- if (toolName.endsWith("_query") || toolName.endsWith("_list")) {
268
- return { max_results_per_page: 100, paginated: true };
269
- }
270
- if (toolName.endsWith("_inspect") ||
271
- toolName.endsWith("_get") ||
272
- toolName.endsWith("_get_full")) {
273
- return { max_results_per_page: 1, paginated: false };
274
- }
275
- return {};
276
- }
277
- export class DiscoveryTools {
278
- executeToolFn;
279
- getToolDef;
280
- constructor(executeToolFn, getToolDef) {
281
- this.executeToolFn = executeToolFn;
282
- this.getToolDef = getToolDef;
283
- }
284
- getTools() {
285
- return [
286
- this.buildDiscoverTool(),
287
- this.buildToolDetailsTool(),
288
- this.buildExecuteTool(),
289
- ];
290
- }
291
- buildDiscoverTool() {
292
- return {
293
- definition: {
294
- name: "pica_discover",
295
- description: "Discover available tool categories. Returns a versioned summary of categories with tool counts and names. " +
296
- "Use pica_tool_details to drill into a category and get full schemas before calling tools.",
297
- inputSchema: {
298
- type: "object",
299
- properties: {},
300
- },
301
- annotations: {
302
- title: "discover tool categories",
303
- readOnlyHint: true,
304
- destructiveHint: false,
305
- idempotentHint: true,
306
- openWorldHint: false,
307
- },
308
- },
309
- executor: async () => {
310
- const categories = {};
311
- for (const [key, cat] of Object.entries(CATEGORIES)) {
312
- categories[key] = {
313
- description: cat.description,
314
- tool_count: cat.tools.length,
315
- tools: cat.tools,
316
- depends_on: cat.depends_on,
317
- };
318
- }
319
- const cacheUntil = new Date(Date.now() + 24 * 60 * 60 * 1000).toISOString();
320
- const payload = {
321
- schema_version: SCHEMA_VERSION,
322
- cache_until: cacheUntil,
323
- categories,
324
- };
325
- return {
326
- content: [
327
- {
328
- type: "text",
329
- text: JSON.stringify(payload, null, 2),
330
- },
331
- ],
332
- structuredContent: payload,
333
- };
334
- },
335
- };
336
- }
337
- buildToolDetailsTool() {
338
- return {
339
- definition: {
340
- name: "pica_tool_details",
341
- description: "Get full schema and metadata for one tool or all tools in a category. " +
342
- "Pass either { tool: 'name' } or { category: 'name' } (from pica_discover). " +
343
- "Returns schema, annotations, recovery hints, and operational metadata.",
344
- inputSchema: {
345
- type: "object",
346
- properties: {
347
- tool: {
348
- type: "string",
349
- description: "Specific tool name (e.g. pica_works_inspect)",
350
- },
351
- category: {
352
- type: "string",
353
- description: "Category name from pica_discover (e.g. works)",
354
- },
355
- },
356
- },
357
- annotations: {
358
- title: "get tool details",
359
- readOnlyHint: true,
360
- destructiveHint: false,
361
- idempotentHint: true,
362
- openWorldHint: false,
363
- },
364
- },
365
- executor: async (args) => {
366
- if (args.tool) {
367
- const detail = this.buildToolDetail(args.tool);
368
- if (!detail) {
369
- return {
370
- content: [
371
- {
372
- type: "text",
373
- text: JSON.stringify({
374
- error_code: "TOOL_NOT_FOUND",
375
- tool: args.tool,
376
- message: `no tool named '${args.tool}' — use pica_discover to see available categories`,
377
- retry_eligible: false,
378
- }, null, 2),
379
- },
380
- ],
381
- isError: true,
382
- };
383
- }
384
- return {
385
- content: [{ type: "text", text: JSON.stringify(detail, null, 2) }],
386
- structuredContent: detail,
387
- };
388
- }
389
- if (args.category) {
390
- const cat = CATEGORIES[args.category];
391
- if (!cat) {
392
- return {
393
- content: [
394
- {
395
- type: "text",
396
- text: JSON.stringify({
397
- error_code: "CATEGORY_NOT_FOUND",
398
- category: args.category,
399
- message: `no category '${args.category}' — use pica_discover to see available categories`,
400
- retry_eligible: false,
401
- }, null, 2),
402
- },
403
- ],
404
- isError: true,
405
- };
406
- }
407
- const details = cat.tools
408
- .map((name) => this.buildToolDetail(name))
409
- .filter((d) => d !== null);
410
- const payload = {
411
- category: args.category,
412
- tool_count: details.length,
413
- tools: details,
414
- };
415
- return {
416
- content: [{ type: "text", text: JSON.stringify(payload, null, 2) }],
417
- structuredContent: payload,
418
- };
419
- }
420
- return {
421
- content: [
422
- {
423
- type: "text",
424
- text: JSON.stringify({
425
- error_code: "VALIDATION_ERROR",
426
- message: "provide either { tool: 'name' } or { category: 'name' }",
427
- retry_eligible: false,
428
- }, null, 2),
429
- },
430
- ],
431
- isError: true,
432
- };
433
- },
434
- };
435
- }
436
- buildToolDetail(toolName) {
437
- const registered = this.getToolDef(toolName);
438
- const metadata = getToolMetadata(toolName);
439
- // Return null when the tool is completely unknown (not registered and not in metadata)
440
- if (!registered && !metadata) {
441
- return null;
442
- }
443
- // Collect all recovery hints for this tool (all error codes)
444
- const hints = RECOVERY_HINTS[toolName] ?? [];
445
- const definition = registered?.definition ?? null;
446
- return {
447
- tool: toolName,
448
- description: definition?.description ?? metadata?.display_name ?? toolName,
449
- schema: definition?.inputSchema ?? null,
450
- annotations: definition?.annotations ?? null,
451
- metadata: metadata
452
- ? {
453
- category: metadata.category,
454
- risk: metadata.risk,
455
- retry_safe: metadata.retry_safe,
456
- display_name: metadata.display_name,
457
- ...(metadata.credits_required !== undefined
458
- ? { credits_required: metadata.credits_required }
459
- : {}),
460
- }
461
- : null,
462
- recovery_hints: hints,
463
- operational: getOperationalMeta(toolName),
464
- };
465
- }
466
- buildExecuteTool() {
467
- return {
468
- definition: {
469
- name: "pica_execute",
470
- description: "Execute any catalog tool by name. " +
471
- "Use pica_discover to find categories, pica_tool_details to get the schema, then call here with { tool, args }.",
472
- inputSchema: {
473
- type: "object",
474
- properties: {
475
- tool: {
476
- type: "string",
477
- description: "Tool name to execute (e.g. pica_works_inspect). Use pica_discover + pica_tool_details to find available tools.",
478
- },
479
- args: {
480
- type: "object",
481
- additionalProperties: true,
482
- description: "Arguments to pass to the tool",
483
- },
484
- },
485
- required: ["tool"],
486
- },
487
- annotations: {
488
- title: "execute a catalog tool",
489
- readOnlyHint: false,
490
- destructiveHint: false,
491
- idempotentHint: false,
492
- openWorldHint: false,
493
- },
494
- },
495
- executor: async (args) => {
496
- const toolName = args.tool;
497
- const toolArgs = args.args ?? {};
498
- if (!toolName || typeof toolName !== "string" || !toolName.trim()) {
499
- return {
500
- content: [
501
- {
502
- type: "text",
503
- text: JSON.stringify({
504
- error_code: "VALIDATION_ERROR",
505
- tool: null,
506
- message: "missing required field: tool",
507
- retry_eligible: false,
508
- }, null, 2),
509
- },
510
- ],
511
- isError: true,
512
- };
513
- }
514
- // Block meta-tool self-invocation to prevent infinite loops
515
- const META_TOOLS = new Set([
516
- "pica_discover",
517
- "pica_tool_details",
518
- "pica_execute",
519
- ]);
520
- if (META_TOOLS.has(toolName)) {
521
- return {
522
- content: [
523
- {
524
- type: "text",
525
- text: JSON.stringify({
526
- error_code: "INVALID_TOOL",
527
- tool: toolName,
528
- message: "meta-tools (pica_discover, pica_tool_details, pica_execute) cannot be invoked via pica_execute",
529
- retry_eligible: false,
530
- }, null, 2),
531
- },
532
- ],
533
- isError: true,
534
- };
535
- }
536
- try {
537
- return await this.executeToolFn(toolName, toolArgs);
538
- }
539
- catch (err) {
540
- const message = err instanceof Error ? err.message : String(err);
541
- return {
542
- content: [
543
- {
544
- type: "text",
545
- text: JSON.stringify({
546
- error_code: "EXECUTION_ERROR",
547
- tool: toolName,
548
- message,
549
- retry_eligible: false,
550
- }, null, 2),
551
- },
552
- ],
553
- isError: true,
554
- };
555
- }
556
- },
557
- };
558
- }
559
- }
560
- //# sourceMappingURL=discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/tools/discovery.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- /**
2
- * Disputes MCP Tools — ADR-139 Step 3
3
- *
4
- * Cross-org dispute tracking. "Do I have any disputes?"
5
- * Read-only for now — write operations can be added later.
6
- */
7
- import { PicaClient } from "@withpica/mcp-sdk";
8
- import type { ToolDefinition, ToolExecutor } from "./index.js";
9
- export declare class DisputesTools {
10
- private pica;
11
- constructor(pica: PicaClient);
12
- getTools(): Array<{
13
- definition: ToolDefinition;
14
- executor: ToolExecutor;
15
- }>;
16
- private listDisputes;
17
- }
18
- //# sourceMappingURL=disputes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"disputes.d.ts","sourceRoot":"","sources":["../../src/tools/disputes.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAG3E,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;YA0B3D,YAAY;CAoC3B"}