@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.
- package/dist/config.d.ts +25 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +12 -36
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/pica-sdk.d.ts +1231 -0
- package/dist/pica-sdk.d.ts.map +1 -0
- package/dist/pica-sdk.js +1403 -0
- package/dist/pica-sdk.js.map +1 -0
- package/dist/prompts/index.d.ts +64 -64
- package/dist/prompts/index.js +24 -24
- package/dist/prompts/index.js.map +1 -1
- package/dist/resources/index.d.ts +53 -55
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +54 -133
- package/dist/resources/index.js.map +1 -1
- package/dist/server.d.ts +32 -49
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +14 -103
- package/dist/server.js.map +1 -1
- package/dist/tools/index.d.ts +37 -83
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +84 -442
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/people.d.ts +47 -39
- package/dist/tools/people.d.ts.map +1 -1
- package/dist/tools/people.js +109 -148
- package/dist/tools/people.js.map +1 -1
- package/dist/tools/recordings.d.ts +9 -9
- package/dist/tools/recordings.d.ts.map +1 -1
- package/dist/tools/recordings.js +48 -121
- package/dist/tools/recordings.js.map +1 -1
- package/dist/tools/search.d.ts +21 -21
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +3 -3
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/works.d.ts +47 -39
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +116 -201
- package/dist/tools/works.js.map +1 -1
- package/dist/utils/errors.d.ts +29 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +115 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/formatting.d.ts +82 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +125 -0
- package/dist/utils/formatting.js.map +1 -0
- package/package.json +1 -1
- package/server.json +1 -1
- package/dist/__mocks__/mppx-mcp-sdk-server.d.ts +0 -6
- package/dist/__mocks__/mppx-mcp-sdk-server.d.ts.map +0 -1
- package/dist/__mocks__/mppx-mcp-sdk-server.js +0 -6
- package/dist/__mocks__/mppx-mcp-sdk-server.js.map +0 -1
- package/dist/__mocks__/mppx-server.d.ts +0 -12
- package/dist/__mocks__/mppx-server.d.ts.map +0 -1
- package/dist/__mocks__/mppx-server.js +0 -12
- package/dist/__mocks__/mppx-server.js.map +0 -1
- package/dist/apps/download.d.ts +0 -2
- package/dist/apps/download.d.ts.map +0 -1
- package/dist/apps/download.js +0 -125
- package/dist/apps/download.js.map +0 -1
- package/dist/apps/generated/shared-bundle.d.ts +0 -5
- package/dist/apps/generated/shared-bundle.d.ts.map +0 -1
- package/dist/apps/generated/shared-bundle.js +0 -7
- package/dist/apps/generated/shared-bundle.js.map +0 -1
- package/dist/apps/shared.d.ts +0 -15
- package/dist/apps/shared.d.ts.map +0 -1
- package/dist/apps/shared.js +0 -480
- package/dist/apps/shared.js.map +0 -1
- package/dist/apps/upload.d.ts +0 -2
- package/dist/apps/upload.d.ts.map +0 -1
- package/dist/apps/upload.js +0 -280
- package/dist/apps/upload.js.map +0 -1
- package/dist/resources/llms-primer.d.ts +0 -2
- package/dist/resources/llms-primer.d.ts.map +0 -1
- package/dist/resources/llms-primer.js +0 -68
- package/dist/resources/llms-primer.js.map +0 -1
- package/dist/server-instructions.d.ts +0 -9
- package/dist/server-instructions.d.ts.map +0 -1
- package/dist/server-instructions.js +0 -34
- package/dist/server-instructions.js.map +0 -1
- package/dist/tools/agreement-types.d.ts +0 -27
- package/dist/tools/agreement-types.d.ts.map +0 -1
- package/dist/tools/agreement-types.js +0 -387
- package/dist/tools/agreement-types.js.map +0 -1
- package/dist/tools/agreements.d.ts +0 -20
- package/dist/tools/agreements.d.ts.map +0 -1
- package/dist/tools/agreements.js +0 -363
- package/dist/tools/agreements.js.map +0 -1
- package/dist/tools/analytics.d.ts +0 -20
- package/dist/tools/analytics.d.ts.map +0 -1
- package/dist/tools/analytics.js +0 -124
- package/dist/tools/analytics.js.map +0 -1
- package/dist/tools/app-tools.d.ts +0 -21
- package/dist/tools/app-tools.d.ts.map +0 -1
- package/dist/tools/app-tools.js +0 -248
- package/dist/tools/app-tools.js.map +0 -1
- package/dist/tools/assets.d.ts +0 -21
- package/dist/tools/assets.d.ts.map +0 -1
- package/dist/tools/assets.js +0 -441
- package/dist/tools/assets.js.map +0 -1
- package/dist/tools/audio-files.d.ts +0 -20
- package/dist/tools/audio-files.d.ts.map +0 -1
- package/dist/tools/audio-files.js +0 -384
- package/dist/tools/audio-files.js.map +0 -1
- package/dist/tools/auth.d.ts +0 -22
- package/dist/tools/auth.d.ts.map +0 -1
- package/dist/tools/auth.js +0 -210
- package/dist/tools/auth.js.map +0 -1
- package/dist/tools/bulk.d.ts +0 -16
- package/dist/tools/bulk.d.ts.map +0 -1
- package/dist/tools/bulk.js +0 -85
- package/dist/tools/bulk.js.map +0 -1
- package/dist/tools/calendar.d.ts +0 -15
- package/dist/tools/calendar.d.ts.map +0 -1
- package/dist/tools/calendar.js +0 -67
- package/dist/tools/calendar.js.map +0 -1
- package/dist/tools/collaborators.d.ts +0 -17
- package/dist/tools/collaborators.d.ts.map +0 -1
- package/dist/tools/collaborators.js +0 -131
- package/dist/tools/collaborators.js.map +0 -1
- package/dist/tools/comparisons.d.ts +0 -22
- package/dist/tools/comparisons.d.ts.map +0 -1
- package/dist/tools/comparisons.js +0 -78
- package/dist/tools/comparisons.js.map +0 -1
- package/dist/tools/credits.d.ts +0 -17
- package/dist/tools/credits.d.ts.map +0 -1
- package/dist/tools/credits.js +0 -312
- package/dist/tools/credits.js.map +0 -1
- package/dist/tools/dashboard.d.ts +0 -19
- package/dist/tools/dashboard.d.ts.map +0 -1
- package/dist/tools/dashboard.js +0 -146
- package/dist/tools/dashboard.js.map +0 -1
- package/dist/tools/directory.d.ts +0 -15
- package/dist/tools/directory.d.ts.map +0 -1
- package/dist/tools/directory.js +0 -106
- package/dist/tools/directory.js.map +0 -1
- package/dist/tools/discovery.d.ts +0 -28
- package/dist/tools/discovery.d.ts.map +0 -1
- package/dist/tools/discovery.js +0 -560
- package/dist/tools/discovery.js.map +0 -1
- package/dist/tools/disputes.d.ts +0 -18
- package/dist/tools/disputes.d.ts.map +0 -1
- package/dist/tools/disputes.js +0 -61
- package/dist/tools/disputes.js.map +0 -1
- package/dist/tools/documents.d.ts +0 -15
- package/dist/tools/documents.d.ts.map +0 -1
- package/dist/tools/documents.js +0 -36
- package/dist/tools/documents.js.map +0 -1
- package/dist/tools/duplicates.d.ts +0 -16
- package/dist/tools/duplicates.d.ts.map +0 -1
- package/dist/tools/duplicates.js +0 -87
- package/dist/tools/duplicates.js.map +0 -1
- package/dist/tools/enrichment.d.ts +0 -20
- package/dist/tools/enrichment.d.ts.map +0 -1
- package/dist/tools/enrichment.js +0 -154
- package/dist/tools/enrichment.js.map +0 -1
- package/dist/tools/exports.d.ts +0 -19
- package/dist/tools/exports.d.ts.map +0 -1
- package/dist/tools/exports.js +0 -175
- package/dist/tools/exports.js.map +0 -1
- package/dist/tools/import-documents.d.ts +0 -21
- package/dist/tools/import-documents.d.ts.map +0 -1
- package/dist/tools/import-documents.js +0 -203
- package/dist/tools/import-documents.js.map +0 -1
- package/dist/tools/import.d.ts +0 -30
- package/dist/tools/import.d.ts.map +0 -1
- package/dist/tools/import.js +0 -455
- package/dist/tools/import.js.map +0 -1
- package/dist/tools/integrations.d.ts +0 -15
- package/dist/tools/integrations.d.ts.map +0 -1
- package/dist/tools/integrations.js +0 -100
- package/dist/tools/integrations.js.map +0 -1
- package/dist/tools/licensing.d.ts +0 -40
- package/dist/tools/licensing.d.ts.map +0 -1
- package/dist/tools/licensing.js +0 -431
- package/dist/tools/licensing.js.map +0 -1
- package/dist/tools/memory.d.ts +0 -21
- package/dist/tools/memory.d.ts.map +0 -1
- package/dist/tools/memory.js +0 -116
- package/dist/tools/memory.js.map +0 -1
- package/dist/tools/metadata.d.ts +0 -15
- package/dist/tools/metadata.d.ts.map +0 -1
- package/dist/tools/metadata.js +0 -1069
- package/dist/tools/metadata.js.map +0 -1
- package/dist/tools/multimedia.d.ts +0 -19
- package/dist/tools/multimedia.d.ts.map +0 -1
- package/dist/tools/multimedia.js +0 -291
- package/dist/tools/multimedia.js.map +0 -1
- package/dist/tools/notes.d.ts +0 -21
- package/dist/tools/notes.d.ts.map +0 -1
- package/dist/tools/notes.js +0 -108
- package/dist/tools/notes.js.map +0 -1
- package/dist/tools/notifications.d.ts +0 -17
- package/dist/tools/notifications.d.ts.map +0 -1
- package/dist/tools/notifications.js +0 -117
- package/dist/tools/notifications.js.map +0 -1
- package/dist/tools/projects.d.ts +0 -19
- package/dist/tools/projects.d.ts.map +0 -1
- package/dist/tools/projects.js +0 -140
- package/dist/tools/projects.js.map +0 -1
- package/dist/tools/publishers.d.ts +0 -16
- package/dist/tools/publishers.d.ts.map +0 -1
- package/dist/tools/publishers.js +0 -69
- package/dist/tools/publishers.js.map +0 -1
- package/dist/tools/purchases.d.ts +0 -15
- package/dist/tools/purchases.d.ts.map +0 -1
- package/dist/tools/purchases.js +0 -63
- package/dist/tools/purchases.js.map +0 -1
- package/dist/tools/recovery-hints.d.ts +0 -14
- package/dist/tools/recovery-hints.d.ts.map +0 -1
- package/dist/tools/recovery-hints.js +0 -277
- package/dist/tools/recovery-hints.js.map +0 -1
- package/dist/tools/releases.d.ts +0 -18
- package/dist/tools/releases.d.ts.map +0 -1
- package/dist/tools/releases.js +0 -128
- package/dist/tools/releases.js.map +0 -1
- package/dist/tools/royalties.d.ts +0 -23
- package/dist/tools/royalties.d.ts.map +0 -1
- package/dist/tools/royalties.js +0 -257
- package/dist/tools/royalties.js.map +0 -1
- package/dist/tools/send.d.ts +0 -17
- package/dist/tools/send.d.ts.map +0 -1
- package/dist/tools/send.js +0 -185
- package/dist/tools/send.js.map +0 -1
- package/dist/tools/sessions.d.ts +0 -18
- package/dist/tools/sessions.d.ts.map +0 -1
- package/dist/tools/sessions.js +0 -115
- package/dist/tools/sessions.js.map +0 -1
- package/dist/tools/settings.d.ts +0 -18
- package/dist/tools/settings.d.ts.map +0 -1
- package/dist/tools/settings.js +0 -96
- package/dist/tools/settings.js.map +0 -1
- package/dist/tools/share-links.d.ts +0 -19
- package/dist/tools/share-links.d.ts.map +0 -1
- package/dist/tools/share-links.js +0 -121
- package/dist/tools/share-links.js.map +0 -1
- package/dist/tools/split-sheets.d.ts +0 -25
- package/dist/tools/split-sheets.d.ts.map +0 -1
- package/dist/tools/split-sheets.js +0 -307
- package/dist/tools/split-sheets.js.map +0 -1
- package/dist/tools/team.d.ts +0 -22
- package/dist/tools/team.d.ts.map +0 -1
- package/dist/tools/team.js +0 -134
- package/dist/tools/team.js.map +0 -1
- package/dist/tools/telegram.d.ts +0 -20
- package/dist/tools/telegram.d.ts.map +0 -1
- package/dist/tools/telegram.js +0 -88
- package/dist/tools/telegram.js.map +0 -1
- package/dist/tools/uploads.d.ts +0 -17
- package/dist/tools/uploads.d.ts.map +0 -1
- package/dist/tools/uploads.js +0 -156
- package/dist/tools/uploads.js.map +0 -1
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Recordings Tools - MCP tools for managing recordings
|
|
3
|
-
*
|
|
4
|
-
* ADR-149 Phase 5b: Consolidated to query+inspect pattern.
|
|
5
|
-
* - pica_recordings_query replaces pica_recordings_list + pica_recordings_by_work
|
|
6
|
-
* - pica_recordings_inspect replaces pica_recordings_get (with sections support)
|
|
7
3
|
*/
|
|
8
|
-
import { PicaClient } from "
|
|
4
|
+
import { PicaClient } from "../pica-sdk.js";
|
|
9
5
|
import { ToolDefinition, ToolExecutor } from "./index.js";
|
|
10
6
|
export declare class RecordingsTools {
|
|
11
7
|
private pica;
|
|
@@ -18,13 +14,13 @@ export declare class RecordingsTools {
|
|
|
18
14
|
executor: ToolExecutor;
|
|
19
15
|
}>;
|
|
20
16
|
/**
|
|
21
|
-
*
|
|
17
|
+
* List recordings
|
|
22
18
|
*/
|
|
23
|
-
private
|
|
19
|
+
private listRecordings;
|
|
24
20
|
/**
|
|
25
|
-
*
|
|
21
|
+
* Get recording by ID
|
|
26
22
|
*/
|
|
27
|
-
private
|
|
23
|
+
private getRecording;
|
|
28
24
|
/**
|
|
29
25
|
* Create recording
|
|
30
26
|
*/
|
|
@@ -37,5 +33,9 @@ export declare class RecordingsTools {
|
|
|
37
33
|
* Delete recording
|
|
38
34
|
*/
|
|
39
35
|
private deleteRecording;
|
|
36
|
+
/**
|
|
37
|
+
* Get recordings by work
|
|
38
|
+
*/
|
|
39
|
+
private getRecordingsByWork;
|
|
40
40
|
}
|
|
41
41
|
//# sourceMappingURL=recordings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recordings.d.ts","sourceRoot":"","sources":["../../src/tools/recordings.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"recordings.d.ts","sourceRoot":"","sources":["../../src/tools/recordings.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAOtE,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B;;OAEG;IACH,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAqOzE;;OAEG;YACW,cAAc;IAU5B;;OAEG;YACW,YAAY;IAY1B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,eAAe;IAO7B;;OAEG;YACW,mBAAmB;CASlC"}
|
package/dist/tools/recordings.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
import { formatSuccess, formatStructuredList, } from "
|
|
2
|
+
import { formatAsText, formatSuccess, formatStructuredList, } from "../utils/formatting.js";
|
|
3
3
|
export class RecordingsTools {
|
|
4
4
|
pica;
|
|
5
5
|
constructor(pica) {
|
|
@@ -12,34 +12,24 @@ export class RecordingsTools {
|
|
|
12
12
|
return [
|
|
13
13
|
{
|
|
14
14
|
definition: {
|
|
15
|
-
name: "
|
|
16
|
-
description: "
|
|
17
|
-
"→ then: pica_recordings_inspect (details for a specific recording)",
|
|
15
|
+
name: "pica_recordings_list",
|
|
16
|
+
description: "List recordings from PICA catalog",
|
|
18
17
|
inputSchema: {
|
|
19
18
|
type: "object",
|
|
20
19
|
properties: {
|
|
21
|
-
query: {
|
|
22
|
-
type: "string",
|
|
23
|
-
description: "Search by title, ISRC, or artist name",
|
|
24
|
-
},
|
|
25
|
-
work_id: {
|
|
26
|
-
type: "string",
|
|
27
|
-
description: "Filter recordings by work ID (replaces pica_recordings_by_work)",
|
|
28
|
-
},
|
|
29
20
|
limit: {
|
|
30
21
|
type: "number",
|
|
31
|
-
description: "
|
|
22
|
+
description: "Maximum number of results to return (default: 50)",
|
|
32
23
|
},
|
|
33
24
|
},
|
|
34
25
|
},
|
|
35
26
|
},
|
|
36
|
-
executor: this.
|
|
27
|
+
executor: this.listRecordings.bind(this),
|
|
37
28
|
},
|
|
38
29
|
{
|
|
39
30
|
definition: {
|
|
40
|
-
name: "
|
|
41
|
-
description: "Get details
|
|
42
|
-
"→ then: pica_audio_query (audio files), pica_credits_update (fix credits)",
|
|
31
|
+
name: "pica_recordings_get",
|
|
32
|
+
description: "Get details of a specific recording by ID",
|
|
43
33
|
inputSchema: {
|
|
44
34
|
type: "object",
|
|
45
35
|
properties: {
|
|
@@ -47,29 +37,21 @@ export class RecordingsTools {
|
|
|
47
37
|
type: "string",
|
|
48
38
|
description: "Recording ID",
|
|
49
39
|
},
|
|
50
|
-
sections: {
|
|
51
|
-
type: "array",
|
|
52
|
-
items: {
|
|
53
|
-
type: "string",
|
|
54
|
-
enum: ["basic", "credits", "audio"],
|
|
55
|
-
},
|
|
56
|
-
description: 'Which data sections to include. Omit for all sections. Use ["basic"] for lightweight lookup.',
|
|
57
|
-
},
|
|
58
40
|
},
|
|
59
41
|
required: ["id"],
|
|
60
42
|
},
|
|
61
43
|
},
|
|
62
|
-
executor: this.
|
|
44
|
+
executor: this.getRecording.bind(this),
|
|
63
45
|
},
|
|
64
46
|
{
|
|
65
47
|
definition: {
|
|
66
48
|
name: "pica_recordings_create",
|
|
67
|
-
description: "Create a new recording. IMPORTANT: Always call
|
|
49
|
+
description: "Create a new recording. IMPORTANT: Always call pica_recordings_by_work first to check for existing recordings on this work — duplicate recordings cause ISRC conflicts. " +
|
|
68
50
|
"Any field from the Recording schema can be passed — " +
|
|
69
51
|
"the most commonly used fields are listed below. Additional fields " +
|
|
70
52
|
"(e.g. mlc_recording_id, mlc_song_code, global_recording_id, global_release_id) " +
|
|
71
53
|
"are also accepted. " +
|
|
72
|
-
"→ before:
|
|
54
|
+
"→ before: pica_recordings_by_work (check duplicates) → then: pica_audio_presigned_upload (upload audio), pica_audio_analyze (extract features)",
|
|
73
55
|
inputSchema: {
|
|
74
56
|
type: "object",
|
|
75
57
|
properties: {
|
|
@@ -141,7 +123,7 @@ export class RecordingsTools {
|
|
|
141
123
|
name: "pica_recordings_update",
|
|
142
124
|
description: "Update an existing recording. Any field from the Recording schema can be passed — " +
|
|
143
125
|
"the most commonly used fields are listed below. Additional fields are also accepted. " +
|
|
144
|
-
"→ then:
|
|
126
|
+
"→ then: pica_recordings_get (verify changes persisted)",
|
|
145
127
|
inputSchema: {
|
|
146
128
|
type: "object",
|
|
147
129
|
properties: {
|
|
@@ -225,33 +207,30 @@ export class RecordingsTools {
|
|
|
225
207
|
},
|
|
226
208
|
executor: this.deleteRecording.bind(this),
|
|
227
209
|
},
|
|
210
|
+
{
|
|
211
|
+
definition: {
|
|
212
|
+
name: "pica_recordings_by_work",
|
|
213
|
+
description: "Get all recordings of a specific work",
|
|
214
|
+
inputSchema: {
|
|
215
|
+
type: "object",
|
|
216
|
+
properties: {
|
|
217
|
+
work_id: {
|
|
218
|
+
type: "string",
|
|
219
|
+
description: "Work ID",
|
|
220
|
+
},
|
|
221
|
+
},
|
|
222
|
+
required: ["work_id"],
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
executor: this.getRecordingsByWork.bind(this),
|
|
226
|
+
},
|
|
228
227
|
];
|
|
229
228
|
}
|
|
230
229
|
/**
|
|
231
|
-
*
|
|
230
|
+
* List recordings
|
|
232
231
|
*/
|
|
233
|
-
async
|
|
232
|
+
async listRecordings(args) {
|
|
234
233
|
const limit = args.limit || 50;
|
|
235
|
-
const workId = args.work_id;
|
|
236
|
-
const query = args.query;
|
|
237
|
-
// Filter by work_id — delegate to getByWork
|
|
238
|
-
if (workId) {
|
|
239
|
-
const recordings = await this.pica.recordings.getByWork(workId);
|
|
240
|
-
return formatStructuredList(recordings, "recording", {
|
|
241
|
-
work_id: workId,
|
|
242
|
-
total: recordings.length,
|
|
243
|
-
});
|
|
244
|
-
}
|
|
245
|
-
// Search by text query — delegate to search method (client-side filtering)
|
|
246
|
-
if (query) {
|
|
247
|
-
const result = await this.pica.recordings.search({ query, limit });
|
|
248
|
-
return formatStructuredList(result.data, "recording", {
|
|
249
|
-
query,
|
|
250
|
-
total: result.total,
|
|
251
|
-
hasMore: result.hasMore,
|
|
252
|
-
});
|
|
253
|
-
}
|
|
254
|
-
// Default: list all
|
|
255
234
|
const recordings = await this.pica.recordings.list({ limit });
|
|
256
235
|
return formatStructuredList(recordings, "recording", {
|
|
257
236
|
total: recordings.length,
|
|
@@ -259,78 +238,16 @@ export class RecordingsTools {
|
|
|
259
238
|
});
|
|
260
239
|
}
|
|
261
240
|
/**
|
|
262
|
-
*
|
|
241
|
+
* Get recording by ID
|
|
263
242
|
*/
|
|
264
|
-
async
|
|
265
|
-
const
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
if (allSections || sections?.includes("basic")) {
|
|
271
|
-
try {
|
|
272
|
-
const recording = await this.pica.recordings.get(id);
|
|
273
|
-
result.recording = recording;
|
|
274
|
-
// Enrich with ISRC prefix intelligence if ISRC is present
|
|
275
|
-
if (recording.isrc) {
|
|
276
|
-
const prefixIntel = await this.pica.recordings.prefixLookup(recording.isrc);
|
|
277
|
-
if (prefixIntel) {
|
|
278
|
-
result.prefix_intel = prefixIntel;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
catch (error) {
|
|
283
|
-
result.recording_error =
|
|
284
|
-
error instanceof Error ? error.message : "Failed to fetch recording";
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
// Credits section: work credits (via recording's parent work)
|
|
288
|
-
if (allSections || sections?.includes("credits")) {
|
|
289
|
-
try {
|
|
290
|
-
// We need the recording to get its work_id
|
|
291
|
-
const recording = result.recording ||
|
|
292
|
-
(await this.pica.recordings.get(id));
|
|
293
|
-
const workId = recording.work_id;
|
|
294
|
-
if (workId) {
|
|
295
|
-
const credits = await this.pica.credits.listForWork(workId);
|
|
296
|
-
result.credits = credits;
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
result.credits = [];
|
|
300
|
-
result.credits_note = "No parent work linked — no credits available";
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
catch (error) {
|
|
304
|
-
result.credits_error =
|
|
305
|
-
error instanceof Error ? error.message : "Failed to fetch credits";
|
|
306
|
-
}
|
|
243
|
+
async getRecording(args) {
|
|
244
|
+
const recording = await this.pica.recordings.get(args.id);
|
|
245
|
+
// Enrich with ISRC prefix intelligence if ISRC is present
|
|
246
|
+
let prefix_intel = null;
|
|
247
|
+
if (recording.isrc) {
|
|
248
|
+
prefix_intel = await this.pica.recordings.prefixLookup(recording.isrc);
|
|
307
249
|
}
|
|
308
|
-
|
|
309
|
-
if (allSections || sections?.includes("audio")) {
|
|
310
|
-
try {
|
|
311
|
-
const recording = result.recording ||
|
|
312
|
-
(await this.pica.recordings.get(id));
|
|
313
|
-
const workId = recording.work_id;
|
|
314
|
-
if (workId) {
|
|
315
|
-
const audioFiles = await this.pica.audioFiles.list({
|
|
316
|
-
work_id: workId,
|
|
317
|
-
});
|
|
318
|
-
result.audio_files = audioFiles;
|
|
319
|
-
}
|
|
320
|
-
else {
|
|
321
|
-
result.audio_files = [];
|
|
322
|
-
result.audio_note =
|
|
323
|
-
"No parent work linked — no audio files available";
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
catch (error) {
|
|
327
|
-
result.audio_error =
|
|
328
|
-
error instanceof Error
|
|
329
|
-
? error.message
|
|
330
|
-
: "Failed to fetch audio files";
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
return formatSuccess("Recording details", result);
|
|
250
|
+
return formatAsText({ ...recording, prefix_intel });
|
|
334
251
|
}
|
|
335
252
|
/**
|
|
336
253
|
* Create recording
|
|
@@ -356,5 +273,15 @@ export class RecordingsTools {
|
|
|
356
273
|
await this.pica.recordings.delete(args.id);
|
|
357
274
|
return formatSuccess(`Recording ${args.id} deleted successfully`);
|
|
358
275
|
}
|
|
276
|
+
/**
|
|
277
|
+
* Get recordings by work
|
|
278
|
+
*/
|
|
279
|
+
async getRecordingsByWork(args) {
|
|
280
|
+
const recordings = await this.pica.recordings.getByWork(args.work_id);
|
|
281
|
+
return formatStructuredList(recordings, "recording", {
|
|
282
|
+
work_id: args.work_id,
|
|
283
|
+
total: recordings.length,
|
|
284
|
+
});
|
|
285
|
+
}
|
|
359
286
|
}
|
|
360
287
|
//# sourceMappingURL=recordings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recordings.js","sourceRoot":"","sources":["../../src/tools/recordings.ts"],"names":[],"mappings":"AAAA,6DAA6D;
|
|
1
|
+
{"version":3,"file":"recordings.js","sourceRoot":"","sources":["../../src/tools/recordings.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/search.d.ts
CHANGED
|
@@ -4,27 +4,27 @@
|
|
|
4
4
|
* Uses the chain service for unified fuzzy search with pg_trgm across
|
|
5
5
|
* works, people, recordings, physical assets, audio files, and work sessions.
|
|
6
6
|
*/
|
|
7
|
-
import { PicaClient } from "
|
|
7
|
+
import { PicaClient } from "../pica-sdk.js";
|
|
8
8
|
import { ToolDefinition, ToolExecutor } from "./index.js";
|
|
9
9
|
export declare class SearchTools {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
10
|
+
private pica;
|
|
11
|
+
constructor(pica: PicaClient);
|
|
12
|
+
getTools(): Array<{
|
|
13
|
+
definition: ToolDefinition;
|
|
14
|
+
executor: ToolExecutor;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* Unified search via chain service — single request, all entity types,
|
|
18
|
+
* fuzzy matching with pg_trgm, ranked by similarity.
|
|
19
|
+
*/
|
|
20
|
+
private searchAll;
|
|
21
|
+
/**
|
|
22
|
+
* Get catalog statistics (uses dedicated SQL count endpoint, no pagination limits)
|
|
23
|
+
*/
|
|
24
|
+
private getCatalogStats;
|
|
25
|
+
/**
|
|
26
|
+
* Traverse the global identity graph from any identifier
|
|
27
|
+
*/
|
|
28
|
+
private graphTraverse;
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=search.d.ts.map
|
|
30
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAGtE,qBAAa,WAAW;IACtB,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;IAsEzE;;;OAGG;YACW,SAAS;IASvB;;OAEG;YACW,eAAe;IAO7B;;OAEG;YACW,aAAa;CAoB5B"}
|
package/dist/tools/search.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
import { formatAsText, formatSuccess } from "
|
|
2
|
+
import { formatAsText, formatSuccess } from "../utils/formatting.js";
|
|
3
3
|
export class SearchTools {
|
|
4
4
|
pica;
|
|
5
5
|
constructor(pica) {
|
|
@@ -12,7 +12,7 @@ export class SearchTools {
|
|
|
12
12
|
name: "pica_search_all",
|
|
13
13
|
description: "Fuzzy search across the entire catalog: works, people, recordings, physical assets, audio files, studio sessions, agreements, multimedia, and releases. " +
|
|
14
14
|
"Supports free text, ISRC, ISWC, and IPI lookups. Returns ranked results with the top match expanded to full chain detail. " +
|
|
15
|
-
"→ then:
|
|
15
|
+
"→ then: pica_works_get_full (work details), pica_people_get_full (person details), pica_recordings_get (recording details)",
|
|
16
16
|
inputSchema: {
|
|
17
17
|
type: "object",
|
|
18
18
|
properties: {
|
|
@@ -52,7 +52,7 @@ export class SearchTools {
|
|
|
52
52
|
"Returns the canonical global entity + all connected works, recordings, creators, and publishers across the graph. " +
|
|
53
53
|
"Also shows which entities exist in your catalog. " +
|
|
54
54
|
"Use this to answer: 'show me everything connected to this IPI/ISRC/ISWC' or 'what else has this person written?'\n\n" +
|
|
55
|
-
"→ then:
|
|
55
|
+
"→ then: pica_works_get_full (deep-dive a work), pica_enrich_work (enrich a discovered work)",
|
|
56
56
|
inputSchema: {
|
|
57
57
|
type: "object",
|
|
58
58
|
properties: {
|
package/dist/tools/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAW7D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/works.d.ts
CHANGED
|
@@ -1,45 +1,53 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Works Tools - MCP tools for managing musical works
|
|
3
3
|
*/
|
|
4
|
-
import { PicaClient } from "
|
|
4
|
+
import { PicaClient } from "../pica-sdk.js";
|
|
5
5
|
import { ToolDefinition, ToolExecutor } from "./index.js";
|
|
6
6
|
export declare class WorksTools {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
7
|
+
private pica;
|
|
8
|
+
constructor(pica: PicaClient);
|
|
9
|
+
/**
|
|
10
|
+
* Get all works tools
|
|
11
|
+
*/
|
|
12
|
+
getTools(): Array<{
|
|
13
|
+
definition: ToolDefinition;
|
|
14
|
+
executor: ToolExecutor;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* List works (server-side search and pagination)
|
|
18
|
+
*/
|
|
19
|
+
private listWorks;
|
|
20
|
+
/**
|
|
21
|
+
* Get work by ID
|
|
22
|
+
*/
|
|
23
|
+
private getWork;
|
|
24
|
+
/**
|
|
25
|
+
* Create work
|
|
26
|
+
*/
|
|
27
|
+
private createWork;
|
|
28
|
+
/**
|
|
29
|
+
* Update work
|
|
30
|
+
*/
|
|
31
|
+
private updateWork;
|
|
32
|
+
/**
|
|
33
|
+
* Delete work
|
|
34
|
+
*/
|
|
35
|
+
private deleteWork;
|
|
36
|
+
/**
|
|
37
|
+
* Verify work
|
|
38
|
+
*/
|
|
39
|
+
private verifyWork;
|
|
40
|
+
/**
|
|
41
|
+
* Search works (server-side)
|
|
42
|
+
*/
|
|
43
|
+
private searchWorks;
|
|
44
|
+
/**
|
|
45
|
+
* Bulk delete works
|
|
46
|
+
*/
|
|
47
|
+
private bulkDeleteWorks;
|
|
48
|
+
/**
|
|
49
|
+
* Get full work context bundle
|
|
50
|
+
*/
|
|
51
|
+
private getWorkFull;
|
|
44
52
|
}
|
|
45
|
-
//# sourceMappingURL=works.d.ts.map
|
|
53
|
+
//# sourceMappingURL=works.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"works.d.ts","sourceRoot":"","sources":["../../src/tools/works.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"works.d.ts","sourceRoot":"","sources":["../../src/tools/works.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAStE,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B;;OAEG;IACH,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IA4YzE;;OAEG;YACW,SAAS;IAqBvB;;OAEG;YACW,OAAO;IAYrB;;OAEG;YACW,UAAU;IA8BxB;;OAEG;YACW,UAAU;IAMxB;;OAEG;YACW,UAAU;IAKxB;;OAEG;YACW,UAAU;IAoDxB;;OAEG;YACW,WAAW;IAezB;;OAEG;YACW,eAAe;IAO7B;;OAEG;YACW,WAAW;CAsB1B"}
|