@withpica/mcp-server 2.29.0 → 2.31.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/CHANGELOG.md +152 -1
- package/dist/__mocks__/mppx-mcp-sdk-server.d.ts +4 -4
- package/dist/__mocks__/mppx-server.d.ts +7 -7
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +6 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/agreement-types.d.ts.map +1 -1
- package/dist/tools/agreement-types.js +6 -6
- package/dist/tools/agreement-types.js.map +1 -1
- package/dist/tools/agreements.d.ts.map +1 -1
- package/dist/tools/agreements.js +15 -8
- package/dist/tools/agreements.js.map +1 -1
- package/dist/tools/app-tools.d.ts +0 -6
- package/dist/tools/app-tools.d.ts.map +1 -1
- package/dist/tools/app-tools.js +117 -23
- package/dist/tools/app-tools.js.map +1 -1
- package/dist/tools/assets.d.ts.map +1 -1
- package/dist/tools/assets.js +35 -9
- package/dist/tools/assets.js.map +1 -1
- package/dist/tools/audio-files.d.ts.map +1 -1
- package/dist/tools/audio-files.js +13 -3
- package/dist/tools/audio-files.js.map +1 -1
- package/dist/tools/audit.js +1 -1
- package/dist/tools/audit.js.map +1 -1
- package/dist/tools/bulk.d.ts.map +1 -1
- package/dist/tools/bulk.js +59 -4
- package/dist/tools/bulk.js.map +1 -1
- package/dist/tools/collaborators.d.ts.map +1 -1
- package/dist/tools/collaborators.js +74 -11
- package/dist/tools/collaborators.js.map +1 -1
- package/dist/tools/credits.d.ts.map +1 -1
- package/dist/tools/credits.js +26 -2
- package/dist/tools/credits.js.map +1 -1
- package/dist/tools/custody.d.ts.map +1 -1
- package/dist/tools/custody.js +8 -8
- package/dist/tools/custody.js.map +1 -1
- package/dist/tools/dashboard.d.ts.map +1 -1
- package/dist/tools/dashboard.js +8 -8
- package/dist/tools/dashboard.js.map +1 -1
- package/dist/tools/directory.js +1 -1
- package/dist/tools/directory.js.map +1 -1
- package/dist/tools/discovery.d.ts +2 -2
- package/dist/tools/discovery.d.ts.map +1 -1
- package/dist/tools/discovery.js +10 -7
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/documents.js +1 -1
- package/dist/tools/documents.js.map +1 -1
- package/dist/tools/enrichment.d.ts.map +1 -1
- package/dist/tools/enrichment.js +5 -5
- package/dist/tools/enrichment.js.map +1 -1
- package/dist/tools/exports.d.ts.map +1 -1
- package/dist/tools/exports.js +4 -4
- package/dist/tools/exports.js.map +1 -1
- package/dist/tools/index.d.ts +109 -4
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +134 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/memory.js +1 -1
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/metadata.d.ts.map +1 -1
- package/dist/tools/metadata.js +20 -2
- package/dist/tools/metadata.js.map +1 -1
- package/dist/tools/my-reported-issues.js +5 -5
- package/dist/tools/my-reported-issues.js.map +1 -1
- package/dist/tools/people.d.ts.map +1 -1
- package/dist/tools/people.js +4 -4
- package/dist/tools/people.js.map +1 -1
- package/dist/tools/public-filter.d.ts +43 -0
- package/dist/tools/public-filter.d.ts.map +1 -0
- package/dist/tools/public-filter.js +382 -0
- package/dist/tools/public-filter.js.map +1 -0
- package/dist/tools/recordings.d.ts +6 -2
- package/dist/tools/recordings.d.ts.map +1 -1
- package/dist/tools/recordings.js +53 -8
- package/dist/tools/recordings.js.map +1 -1
- package/dist/tools/releases.js +3 -3
- package/dist/tools/releases.js.map +1 -1
- package/dist/tools/settings.js +2 -2
- package/dist/tools/settings.js.map +1 -1
- package/dist/tools/share-links.d.ts +3 -0
- package/dist/tools/share-links.d.ts.map +1 -1
- package/dist/tools/share-links.js +97 -1
- package/dist/tools/share-links.js.map +1 -1
- package/dist/tools/split-sheets.d.ts.map +1 -1
- package/dist/tools/split-sheets.js +38 -4
- package/dist/tools/split-sheets.js.map +1 -1
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +158 -76
- package/dist/tools/works.js.map +1 -1
- package/package.json +2 -2
- package/server.json +2 -2
package/dist/tools/people.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"people.js","sourceRoot":"","sources":["../../src/tools/people.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"people.js","sourceRoot":"","sources":["../../src/tools/people.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public discovery filter — ADR-202.
|
|
3
|
+
*
|
|
4
|
+
* Filters and sanitizes ToolDefinitions for the unauthenticated
|
|
5
|
+
* /api/mcp/discover endpoint. Default-exclude: a tool not classified
|
|
6
|
+
* here is dropped from the public surface.
|
|
7
|
+
*/
|
|
8
|
+
import type { ToolDefinition, ToolMetadata } from "./index.js";
|
|
9
|
+
export interface PublicToolDefinition {
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
inputSchema: ToolDefinition["inputSchema"];
|
|
13
|
+
annotations?: ToolDefinition["annotations"];
|
|
14
|
+
}
|
|
15
|
+
export interface FilterOptions {
|
|
16
|
+
/** Look up risk metadata for a given tool name. */
|
|
17
|
+
metadataLookup: (name: string) => ToolMetadata | undefined;
|
|
18
|
+
/** When true (Phase 1 default), drop any tool whose risk is not "safe". */
|
|
19
|
+
readOnlyOnly?: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Apply ADR-202 filtering to a list of ToolDefinitions.
|
|
23
|
+
*
|
|
24
|
+
* Order of operations:
|
|
25
|
+
* 1. Drop META_TOOL_EXCLUDE
|
|
26
|
+
* 2. Drop CLASS_C_EXCLUDE
|
|
27
|
+
* 3. Drop anything not in CLASS_A_ALLOWLIST and not in CLASS_B_SANITIZED
|
|
28
|
+
* (default-exclude)
|
|
29
|
+
* 4. If readOnlyOnly: drop tools whose risk metadata is not "safe"
|
|
30
|
+
* 5. Replace description for CLASS_B_SANITIZED entries
|
|
31
|
+
* 6. Strip executor reference (return PublicToolDefinition only)
|
|
32
|
+
*/
|
|
33
|
+
export declare function filterToolsForPublicDiscovery(tools: ToolDefinition[], options: FilterOptions): PublicToolDefinition[];
|
|
34
|
+
/** Returns the first forbidden keyword found in a string, or null. */
|
|
35
|
+
export declare function findForbiddenKeyword(text: string): string | null;
|
|
36
|
+
export declare const _internal: {
|
|
37
|
+
CLASS_A_ALLOWLIST: ReadonlySet<string>;
|
|
38
|
+
CLASS_B_SANITIZED: Readonly<Record<string, string>>;
|
|
39
|
+
CLASS_C_EXCLUDE: ReadonlySet<string>;
|
|
40
|
+
META_TOOL_EXCLUDE: ReadonlySet<string>;
|
|
41
|
+
FORBIDDEN_KEYWORD_FRAGMENTS: readonly string[];
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=public-filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-filter.d.ts","sourceRoot":"","sources":["../../src/tools/public-filter.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA+V/D,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAC3C,WAAW,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;IAC3D,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,aAAa,GACrB,oBAAoB,EAAE,CA2BxB;AAED,sEAAsE;AACtE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMhE;AAID,eAAO,MAAM,SAAS;;;;;;CAMrB,CAAC"}
|
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
+
// ── Class C: explicit exclude (Phase 1: empty per ADR-202 sign-off 2026-04-27) ──
|
|
3
|
+
const CLASS_C_EXCLUDE = new Set([]);
|
|
4
|
+
// ── Class B: include name, sanitized description ──
|
|
5
|
+
// The source-of-truth descriptions in the per-domain tool files name third-party
|
|
6
|
+
// services (MLC / ISNI / MusicBrainz / Spotify / YouTube / Discogs / ACRCloud /
|
|
7
|
+
// Librosa / Groq) or internal architecture (cascade engine / Tier A/B / identity
|
|
8
|
+
// graph / CAR scoring). The strings here are rewrites that preserve capability
|
|
9
|
+
// signal without leaking the algorithm or vendor binding.
|
|
10
|
+
const CLASS_B_SANITIZED = {
|
|
11
|
+
// Reclassified from Class C → B per 2026-04-27 sign-off
|
|
12
|
+
pica_graph_traverse: "Traverse identifier-based connections from any external identifier. Returns connected works, recordings, and people across the catalog.",
|
|
13
|
+
pica_run_work_cascade: "Re-run metadata enrichment for a work to fill gaps from external sources.",
|
|
14
|
+
pica_run_person_cascade: "Re-run metadata enrichment for a person to fill gaps from external identity sources.",
|
|
15
|
+
pica_cascade_health: "Snapshot of recent metadata-enrichment activity — outcome counts and recent failures.",
|
|
16
|
+
pica_export_catalog_asset_report: "Generate a catalog asset report — a structured summary of catalog completeness and provenance.",
|
|
17
|
+
pica_car_preview: "Preview a catalog asset report inline before generating the full export.",
|
|
18
|
+
// Original Class B
|
|
19
|
+
pica_resolve_work: "Resolve a work against external metadata sources. Returns structured proposals and applied updates.",
|
|
20
|
+
pica_resolve_person: "Resolve a person against external identity sources. Returns structured proposals and applied updates.",
|
|
21
|
+
pica_resolve_recording: "Resolve a recording against external metadata sources. Returns structured proposals and applied updates.",
|
|
22
|
+
pica_enrichment_candidates: "Find catalog entries that are good candidates for metadata enrichment.",
|
|
23
|
+
pica_enrichment_compare: "Compare what external sources say about a catalog entry, side by side.",
|
|
24
|
+
pica_registrations_compare: "Compare a work's registration status across society and platform records.",
|
|
25
|
+
pica_enrichment_propose: "Propose a metadata enrichment from agent research; goes to a review queue.",
|
|
26
|
+
pica_enrichment_proposals_list: "List pending metadata-enrichment proposals awaiting review.",
|
|
27
|
+
pica_enrichment_proposal_apply: "Apply a previously proposed metadata enrichment.",
|
|
28
|
+
pica_enrichment_proposal_reject: "Reject a previously proposed metadata enrichment.",
|
|
29
|
+
pica_audio_analyze: "Analyze an audio file for tempo, key, energy, and lyric transcription.",
|
|
30
|
+
pica_audio_identify: "Identify a track via audio fingerprinting. Returns matched metadata with confidence score.",
|
|
31
|
+
pica_documents_analyse: "Analyse a document with AI. Extracts structured fields from invoices, statements, contracts.",
|
|
32
|
+
pica_import_streaming_link: "Import a work or recording from a public streaming-service link.",
|
|
33
|
+
pica_import_from_spotify: "Import a work or recording from a Spotify link.",
|
|
34
|
+
pica_import_youtube_link: "Import a recording from a YouTube link.",
|
|
35
|
+
pica_multimedia_import_url: "Import multimedia from a public URL.",
|
|
36
|
+
pica_multimedia_link_youtube: "Link a YouTube video to a work.",
|
|
37
|
+
pica_ingest_statement: "Ingest a royalty statement document into the catalog.",
|
|
38
|
+
};
|
|
39
|
+
// ── Class A: explicit allowlist, descriptions ship as-is ──
|
|
40
|
+
// Every Class A tool is enumerated here. New tools added to ToolRegistry must
|
|
41
|
+
// also be added to this list (or to CLASS_B_SANITIZED / CLASS_C_EXCLUDE) to
|
|
42
|
+
// appear on the public surface — default-exclude.
|
|
43
|
+
const CLASS_A_ALLOWLIST = new Set([
|
|
44
|
+
// Works
|
|
45
|
+
"pica_works_query",
|
|
46
|
+
"pica_works_inspect",
|
|
47
|
+
"pica_works_create",
|
|
48
|
+
"pica_works_update",
|
|
49
|
+
"pica_works_delete",
|
|
50
|
+
"pica_works_verify",
|
|
51
|
+
"pica_works_bulk_delete",
|
|
52
|
+
"pica_works_bulk_update",
|
|
53
|
+
// People
|
|
54
|
+
"pica_people_query",
|
|
55
|
+
"pica_people_inspect",
|
|
56
|
+
"pica_people_create",
|
|
57
|
+
"pica_people_update",
|
|
58
|
+
"pica_people_delete",
|
|
59
|
+
"pica_people_bulk_update_roles",
|
|
60
|
+
// Recordings
|
|
61
|
+
"pica_recordings_query",
|
|
62
|
+
"pica_recordings_inspect",
|
|
63
|
+
"pica_recordings_create",
|
|
64
|
+
"pica_recordings_update",
|
|
65
|
+
"pica_recordings_delete",
|
|
66
|
+
// Credits (work_credits)
|
|
67
|
+
"pica_credits_list",
|
|
68
|
+
"pica_credits_update",
|
|
69
|
+
// Agreements
|
|
70
|
+
"pica_agreements_query",
|
|
71
|
+
"pica_agreements_inspect",
|
|
72
|
+
"pica_agreements_create",
|
|
73
|
+
"pica_agreements_update",
|
|
74
|
+
"pica_agreements_delete",
|
|
75
|
+
"pica_agreements_link_work",
|
|
76
|
+
// Agreement types & templates
|
|
77
|
+
"pica_agreement_types_query",
|
|
78
|
+
"pica_agreement_types_inspect",
|
|
79
|
+
"pica_agreement_types_create",
|
|
80
|
+
"pica_agreement_types_update",
|
|
81
|
+
"pica_agreement_types_delete",
|
|
82
|
+
"pica_agreement_templates_render",
|
|
83
|
+
"pica_agreement_templates_duplicate",
|
|
84
|
+
"pica_agreement_templates_set_default",
|
|
85
|
+
// Splits
|
|
86
|
+
"pica_split_sheet_list",
|
|
87
|
+
"pica_split_sheet_get",
|
|
88
|
+
"pica_split_sheet_generate",
|
|
89
|
+
"pica_split_sheet_send",
|
|
90
|
+
"pica_recording_splits_list",
|
|
91
|
+
"pica_recording_splits_create",
|
|
92
|
+
"pica_recording_splits_verify",
|
|
93
|
+
// Royalties & statements
|
|
94
|
+
"pica_royalties_list",
|
|
95
|
+
"pica_royalties_get",
|
|
96
|
+
"pica_royalties_summary",
|
|
97
|
+
"pica_statements_list",
|
|
98
|
+
"pica_statements_get",
|
|
99
|
+
// Disputes
|
|
100
|
+
"pica_disputes_list",
|
|
101
|
+
// Custody (chain/ trade-secret service backs these — names + read-side
|
|
102
|
+
// descriptions are publicly used product language; algorithm stays sealed)
|
|
103
|
+
"pica_custody_list",
|
|
104
|
+
"pica_custody_history",
|
|
105
|
+
"pica_custody_claim",
|
|
106
|
+
"pica_custody_respond",
|
|
107
|
+
"pica_custody_resolve_pending",
|
|
108
|
+
"pica_custody_reconcile",
|
|
109
|
+
// Search & discovery substrate
|
|
110
|
+
"pica_search_all",
|
|
111
|
+
"pica_catalog_stats",
|
|
112
|
+
"pica_search_for_sync",
|
|
113
|
+
"pica_submit_license_enquiry",
|
|
114
|
+
"pica_claim_credit",
|
|
115
|
+
"pica_claim_custody",
|
|
116
|
+
"pica_claim_artist",
|
|
117
|
+
"pica_discoveries_query",
|
|
118
|
+
"pica_discoveries_review",
|
|
119
|
+
// Dashboard
|
|
120
|
+
"pica_dashboard_attention",
|
|
121
|
+
"pica_dashboard_briefing",
|
|
122
|
+
"pica_dashboard_pulse",
|
|
123
|
+
// MCP Apps cards (UI-only render, safe)
|
|
124
|
+
"pica_upload",
|
|
125
|
+
"pica_download",
|
|
126
|
+
// Audio (analyze + identify are Class B; the rest are A)
|
|
127
|
+
"pica_audio_query",
|
|
128
|
+
"pica_audio_inspect",
|
|
129
|
+
"pica_audio_presigned_upload",
|
|
130
|
+
"pica_audio_complete_upload",
|
|
131
|
+
// Multimedia (import_url + link_youtube are Class B; the rest are A)
|
|
132
|
+
"pica_multimedia_search",
|
|
133
|
+
"pica_multimedia_create",
|
|
134
|
+
"pica_multimedia_link_work",
|
|
135
|
+
// Uploads
|
|
136
|
+
"pica_upload_file",
|
|
137
|
+
"pica_upload_complete",
|
|
138
|
+
// Exports (CAR is Class B; the rest are A)
|
|
139
|
+
"pica_export_catalog_csv",
|
|
140
|
+
"pica_export_song_registration",
|
|
141
|
+
"pica_export_industry_ready",
|
|
142
|
+
"pica_export_ai_consent",
|
|
143
|
+
// Calendar
|
|
144
|
+
"pica_calendar_events",
|
|
145
|
+
// Duplicates
|
|
146
|
+
"pica_find_duplicates",
|
|
147
|
+
"pica_merge_duplicates",
|
|
148
|
+
// Projects
|
|
149
|
+
"pica_projects_list",
|
|
150
|
+
"pica_projects_get",
|
|
151
|
+
"pica_projects_create",
|
|
152
|
+
"pica_projects_update",
|
|
153
|
+
"pica_projects_delete",
|
|
154
|
+
"pica_projects_attach_works",
|
|
155
|
+
// Releases
|
|
156
|
+
"pica_releases_list",
|
|
157
|
+
"pica_releases_get",
|
|
158
|
+
"pica_releases_create",
|
|
159
|
+
"pica_releases_update",
|
|
160
|
+
"pica_releases_attach_track",
|
|
161
|
+
"pica_releases_list_tracks",
|
|
162
|
+
"pica_releases_detach_track",
|
|
163
|
+
"pica_releases_reorder_tracks",
|
|
164
|
+
"pica_releases_attach_recording_with_work",
|
|
165
|
+
"pica_releases_bulk_attach_tracks",
|
|
166
|
+
"pica_releases_move_track",
|
|
167
|
+
"pica_releases_attach_track_by_identifier",
|
|
168
|
+
"pica_releases_create_with_tracks",
|
|
169
|
+
"pica_releases_completeness_check",
|
|
170
|
+
// Sessions
|
|
171
|
+
"pica_sessions_list",
|
|
172
|
+
"pica_sessions_get",
|
|
173
|
+
"pica_sessions_create",
|
|
174
|
+
"pica_sessions_types",
|
|
175
|
+
// Notes
|
|
176
|
+
"pica_notes_list",
|
|
177
|
+
"pica_notes_get",
|
|
178
|
+
"pica_notes_create",
|
|
179
|
+
"pica_notes_delete",
|
|
180
|
+
// Physical assets
|
|
181
|
+
"pica_physical_assets_query",
|
|
182
|
+
"pica_physical_assets_inspect",
|
|
183
|
+
"pica_physical_assets_create",
|
|
184
|
+
"pica_physical_assets_update",
|
|
185
|
+
"pica_physical_assets_delete",
|
|
186
|
+
"pica_physical_assets_stats",
|
|
187
|
+
"pica_physical_assets_export",
|
|
188
|
+
"pica_physical_assets_link_work",
|
|
189
|
+
"pica_physical_assets_link_recording",
|
|
190
|
+
"pica_physical_assets_unlink_work",
|
|
191
|
+
"pica_physical_assets_unlink_recording",
|
|
192
|
+
// Analytics
|
|
193
|
+
"pica_carbon_footprint",
|
|
194
|
+
"pica_carbon_live",
|
|
195
|
+
"pica_provenance_stats",
|
|
196
|
+
"pica_provenance_work",
|
|
197
|
+
"pica_provenance_certificate",
|
|
198
|
+
"pica_catalog_diligence",
|
|
199
|
+
// Import (streaming/spotify/youtube/ingest_statement are Class B; the rest are A)
|
|
200
|
+
"pica_import_analyze",
|
|
201
|
+
"pica_import_validate",
|
|
202
|
+
"pica_import_execute",
|
|
203
|
+
"pica_import_fields",
|
|
204
|
+
"pica_import_template",
|
|
205
|
+
"pica_import_documents_query",
|
|
206
|
+
"pica_import_documents_inspect",
|
|
207
|
+
// Notifications
|
|
208
|
+
"pica_notifications_list",
|
|
209
|
+
"pica_notify_person",
|
|
210
|
+
"pica_notifications_mark_read",
|
|
211
|
+
// Collaborators
|
|
212
|
+
"pica_collaborators_invite",
|
|
213
|
+
"pica_collaborators_invites_list",
|
|
214
|
+
"pica_collaborators_invite_resend",
|
|
215
|
+
"pica_collaborators_incoming_list",
|
|
216
|
+
"pica_collaborators_accept",
|
|
217
|
+
"pica_collaborators_dispute",
|
|
218
|
+
"pica_collaborators_invite_bulk",
|
|
219
|
+
// Send hub
|
|
220
|
+
"pica_send_message",
|
|
221
|
+
"pica_send_query",
|
|
222
|
+
"pica_send_resend",
|
|
223
|
+
// Share links
|
|
224
|
+
"pica_share_links_list",
|
|
225
|
+
"pica_share_links_create",
|
|
226
|
+
// Telegram
|
|
227
|
+
"pica_telegram_status",
|
|
228
|
+
"pica_telegram_connect",
|
|
229
|
+
"pica_notify_user",
|
|
230
|
+
"pica_notify_user_at",
|
|
231
|
+
"pica_notify_user_list_pending",
|
|
232
|
+
"pica_notify_user_cancel",
|
|
233
|
+
// Publishers / labels
|
|
234
|
+
"pica_publishers_query",
|
|
235
|
+
"pica_publishers_create",
|
|
236
|
+
"pica_labels_query",
|
|
237
|
+
// Licensing
|
|
238
|
+
"pica_list_license_enquiries",
|
|
239
|
+
"pica_get_license_enquiry",
|
|
240
|
+
"pica_update_license_enquiry_status",
|
|
241
|
+
// Team
|
|
242
|
+
"pica_team_list",
|
|
243
|
+
"pica_team_get",
|
|
244
|
+
"pica_team_invite",
|
|
245
|
+
"pica_team_update_role",
|
|
246
|
+
"pica_team_remove",
|
|
247
|
+
// Audit
|
|
248
|
+
"pica_audit_list",
|
|
249
|
+
// Memory
|
|
250
|
+
"pica_memory_list",
|
|
251
|
+
"pica_memory_search",
|
|
252
|
+
"pica_memory_save",
|
|
253
|
+
"pica_memory_delete",
|
|
254
|
+
// Settings
|
|
255
|
+
"pica_storage_status",
|
|
256
|
+
"pica_organisation_profile",
|
|
257
|
+
"pica_user_profile",
|
|
258
|
+
"pica_directory_settings",
|
|
259
|
+
"pica_integrations_status",
|
|
260
|
+
"pica_get_privacy_settings",
|
|
261
|
+
"pica_update_privacy_settings",
|
|
262
|
+
"pica_export_my_data",
|
|
263
|
+
"pica_delete_my_account",
|
|
264
|
+
"pica_update_my_identity",
|
|
265
|
+
"pica_update_organisation_profile",
|
|
266
|
+
// Feedback / report-issue
|
|
267
|
+
"pica_submit_feedback",
|
|
268
|
+
"pica_report_issue",
|
|
269
|
+
"pica_my_reported_issues",
|
|
270
|
+
// Agent identity
|
|
271
|
+
"pica_create_agent_identity",
|
|
272
|
+
"pica_issue_agent_grant",
|
|
273
|
+
"pica_list_my_agent_grants",
|
|
274
|
+
"pica_revoke_agent_grant",
|
|
275
|
+
"pica_get_agent_activity",
|
|
276
|
+
]);
|
|
277
|
+
// ── Meta-tools — never on the public surface ──
|
|
278
|
+
// pica_discover / pica_tool_details / pica_execute only make sense once
|
|
279
|
+
// authenticated; pica_sign_in / pica_sign_out are stdio-lobby tools.
|
|
280
|
+
const META_TOOL_EXCLUDE = new Set([
|
|
281
|
+
"pica_discover",
|
|
282
|
+
"pica_tool_details",
|
|
283
|
+
"pica_execute",
|
|
284
|
+
"pica_sign_in",
|
|
285
|
+
"pica_sign_out",
|
|
286
|
+
]);
|
|
287
|
+
// ── Forbidden keywords (AC-4 in ADR-202) ──
|
|
288
|
+
// Sanitized descriptions must not contain these substrings (case-insensitive).
|
|
289
|
+
//
|
|
290
|
+
// Two classes of keywords:
|
|
291
|
+
// 1. Vendor / data-source names that betray our integration architecture
|
|
292
|
+
// (MLC source-of-truth, ISNI cascade source, MusicBrainz identity source,
|
|
293
|
+
// Wikidata identity gap-fill, Discogs match source, ACRCloud fingerprint
|
|
294
|
+
// vendor, Librosa/Groq/Whisper analysis libs).
|
|
295
|
+
// 2. Internal architecture terms (cascade engine, Tier A/B, identity graph,
|
|
296
|
+
// CAR scoring methodology, ADR numbers).
|
|
297
|
+
//
|
|
298
|
+
// Notably absent: "Spotify" and "YouTube". Those are entry-point platforms
|
|
299
|
+
// customers see in tool names like `pica_import_from_spotify` and
|
|
300
|
+
// `pica_multimedia_link_youtube` — hiding them in descriptions would gut the
|
|
301
|
+
// utility-signal of those tools without protecting any algorithm. They are
|
|
302
|
+
// public product surface, not source-weighting strategy.
|
|
303
|
+
//
|
|
304
|
+
// "CAR" alone is too short to forbid — use "CAR scoring" to allow the product
|
|
305
|
+
// name "Catalog Asset Report" while still flagging methodology references.
|
|
306
|
+
const FORBIDDEN_KEYWORD_FRAGMENTS = [
|
|
307
|
+
"MLC",
|
|
308
|
+
"ISNI",
|
|
309
|
+
"MusicBrainz",
|
|
310
|
+
"Wikidata",
|
|
311
|
+
"Discogs",
|
|
312
|
+
"ACRCloud",
|
|
313
|
+
"Librosa",
|
|
314
|
+
"Groq",
|
|
315
|
+
"Whisper",
|
|
316
|
+
"cascade",
|
|
317
|
+
"Tier A",
|
|
318
|
+
"Tier B",
|
|
319
|
+
"ADR-164",
|
|
320
|
+
"ADR-179",
|
|
321
|
+
"identity graph",
|
|
322
|
+
"identity-graph",
|
|
323
|
+
"CAR scoring",
|
|
324
|
+
];
|
|
325
|
+
/**
|
|
326
|
+
* Apply ADR-202 filtering to a list of ToolDefinitions.
|
|
327
|
+
*
|
|
328
|
+
* Order of operations:
|
|
329
|
+
* 1. Drop META_TOOL_EXCLUDE
|
|
330
|
+
* 2. Drop CLASS_C_EXCLUDE
|
|
331
|
+
* 3. Drop anything not in CLASS_A_ALLOWLIST and not in CLASS_B_SANITIZED
|
|
332
|
+
* (default-exclude)
|
|
333
|
+
* 4. If readOnlyOnly: drop tools whose risk metadata is not "safe"
|
|
334
|
+
* 5. Replace description for CLASS_B_SANITIZED entries
|
|
335
|
+
* 6. Strip executor reference (return PublicToolDefinition only)
|
|
336
|
+
*/
|
|
337
|
+
export function filterToolsForPublicDiscovery(tools, options) {
|
|
338
|
+
const readOnlyOnly = options.readOnlyOnly ?? true;
|
|
339
|
+
const result = [];
|
|
340
|
+
for (const tool of tools) {
|
|
341
|
+
if (META_TOOL_EXCLUDE.has(tool.name))
|
|
342
|
+
continue;
|
|
343
|
+
if (CLASS_C_EXCLUDE.has(tool.name))
|
|
344
|
+
continue;
|
|
345
|
+
const isB = tool.name in CLASS_B_SANITIZED;
|
|
346
|
+
const isA = CLASS_A_ALLOWLIST.has(tool.name);
|
|
347
|
+
if (!isA && !isB)
|
|
348
|
+
continue; // default-exclude
|
|
349
|
+
if (readOnlyOnly) {
|
|
350
|
+
const meta = options.metadataLookup(tool.name);
|
|
351
|
+
if (meta?.risk !== "safe")
|
|
352
|
+
continue;
|
|
353
|
+
}
|
|
354
|
+
const description = isB ? CLASS_B_SANITIZED[tool.name] : tool.description;
|
|
355
|
+
result.push({
|
|
356
|
+
name: tool.name,
|
|
357
|
+
description,
|
|
358
|
+
inputSchema: tool.inputSchema,
|
|
359
|
+
annotations: tool.annotations,
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
return result;
|
|
363
|
+
}
|
|
364
|
+
/** Returns the first forbidden keyword found in a string, or null. */
|
|
365
|
+
export function findForbiddenKeyword(text) {
|
|
366
|
+
const lower = text.toLowerCase();
|
|
367
|
+
for (const fragment of FORBIDDEN_KEYWORD_FRAGMENTS) {
|
|
368
|
+
if (lower.includes(fragment.toLowerCase()))
|
|
369
|
+
return fragment;
|
|
370
|
+
}
|
|
371
|
+
return null;
|
|
372
|
+
}
|
|
373
|
+
// Internal exports for test introspection only — consumers use
|
|
374
|
+
// filterToolsForPublicDiscovery + findForbiddenKeyword.
|
|
375
|
+
export const _internal = {
|
|
376
|
+
CLASS_A_ALLOWLIST,
|
|
377
|
+
CLASS_B_SANITIZED,
|
|
378
|
+
CLASS_C_EXCLUDE,
|
|
379
|
+
META_TOOL_EXCLUDE,
|
|
380
|
+
FORBIDDEN_KEYWORD_FRAGMENTS,
|
|
381
|
+
};
|
|
382
|
+
//# sourceMappingURL=public-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-filter.js","sourceRoot":"","sources":["../../src/tools/public-filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,13 +26,17 @@
|
|
|
26
26
|
* docs/audits/2026-04-14-mcp-db-reconciliation.md §3:
|
|
27
27
|
* duration_ms, preview_url, album_art_url, spotify_url,
|
|
28
28
|
* spotify_track_uri, spotify_track_id, youtube_video_id, youtube_url,
|
|
29
|
-
* apple_music_url, deezer_track_id, mlc_recording_id, mlc_song_code
|
|
30
|
-
* isrc_prefix.
|
|
29
|
+
* apple_music_url, deezer_track_id, mlc_recording_id, mlc_song_code.
|
|
31
30
|
*
|
|
32
31
|
* Most of these are populated by the enrichment cascade on streaming
|
|
33
32
|
* import; exposing them lets agents seed or override that data
|
|
34
33
|
* deliberately rather than discovering — surprised — that the field
|
|
35
34
|
* they thought they set was silently absent.
|
|
35
|
+
*
|
|
36
|
+
* `isrc_prefix` is intentionally NOT in this set — column is GENERATED
|
|
37
|
+
* ALWAYS in `public.recordings` (left(replace(isrc,'-',''),5)). Caught
|
|
38
|
+
* by ADR-198 Phase 1 contract — every write attempt 500'd with PG
|
|
39
|
+
* 428C9 "cannot insert non-DEFAULT value into generated column".
|
|
36
40
|
*/
|
|
37
41
|
import { PicaClient } from "@withpica/mcp-sdk";
|
|
38
42
|
import { ToolDefinition, ToolExecutor } from "./index.js";
|
|
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,EAAE,UAAU,EAAuB,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAQtE;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6IvE,CAAC;AAEF,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;IAwIzE;;OAEG;YACW,eAAe;IAkC7B;;OAEG;YACW,gBAAgB;IAmH9B;;;;;;;;OAQG;YACW,eAAe;IAU7B;;OAEG;YACW,eAAe;IAW7B;;OAEG;YACW,eAAe;CAM9B;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAC"}
|
package/dist/tools/recordings.js
CHANGED
|
@@ -1,5 +1,46 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Recordings Tools — MCP tools for managing recordings.
|
|
4
|
+
*
|
|
5
|
+
* ADR-149 Phase 5b: Consolidated to query+inspect pattern.
|
|
6
|
+
* - pica_recordings_query replaces pica_recordings_list + pica_recordings_by_work
|
|
7
|
+
* - pica_recordings_inspect replaces pica_recordings_get (with sections support)
|
|
8
|
+
*
|
|
9
|
+
* ADR-174 Phase 2 item 3 reconciliation: the write surface covers only
|
|
10
|
+
* real columns on `public.recordings`. Phantom fields previously
|
|
11
|
+
* accepted via `additionalProperties: true` are gone; agents that
|
|
12
|
+
* tried to set them silently dropped data on the way to Postgres.
|
|
13
|
+
*
|
|
14
|
+
* Two pre-flight surprises documented inline below:
|
|
15
|
+
*
|
|
16
|
+
* 1. `title` is a legacy alias for `recording_title`. The HTTP route
|
|
17
|
+
* translates before the service sees the payload (POST since the
|
|
18
|
+
* route was written, PATCH only since ADR-174). The tool keeps
|
|
19
|
+
* `title` as the input field name for caller ergonomics; the
|
|
20
|
+
* description marks the rename explicitly.
|
|
21
|
+
*
|
|
22
|
+
* 2. Duration lives in `duration_ms` on recordings (works carry
|
|
23
|
+
* `duration_seconds`). Agents conflating the two get a 400 with
|
|
24
|
+
* a redirect from the route allow-list.
|
|
25
|
+
*
|
|
26
|
+
* Add-candidates surfaced per the audit at
|
|
27
|
+
* docs/audits/2026-04-14-mcp-db-reconciliation.md §3:
|
|
28
|
+
* duration_ms, preview_url, album_art_url, spotify_url,
|
|
29
|
+
* spotify_track_uri, spotify_track_id, youtube_video_id, youtube_url,
|
|
30
|
+
* apple_music_url, deezer_track_id, mlc_recording_id, mlc_song_code.
|
|
31
|
+
*
|
|
32
|
+
* Most of these are populated by the enrichment cascade on streaming
|
|
33
|
+
* import; exposing them lets agents seed or override that data
|
|
34
|
+
* deliberately rather than discovering — surprised — that the field
|
|
35
|
+
* they thought they set was silently absent.
|
|
36
|
+
*
|
|
37
|
+
* `isrc_prefix` is intentionally NOT in this set — column is GENERATED
|
|
38
|
+
* ALWAYS in `public.recordings` (left(replace(isrc,'-',''),5)). Caught
|
|
39
|
+
* by ADR-198 Phase 1 contract — every write attempt 500'd with PG
|
|
40
|
+
* 428C9 "cannot insert non-DEFAULT value into generated column".
|
|
41
|
+
*/
|
|
42
|
+
import { EntityNotFoundError } from "@withpica/mcp-sdk";
|
|
43
|
+
import { formatSuccess, formatStructuredList, withBillingGate, } from "@withpica/mcp-utils";
|
|
3
44
|
/**
|
|
4
45
|
* Canonical write-schema for `recordings`. Every property must
|
|
5
46
|
* correspond to a real column on `public.recordings` (or be the
|
|
@@ -65,10 +106,6 @@ const RECORDING_WRITE_PROPERTIES = {
|
|
|
65
106
|
type: "string",
|
|
66
107
|
description: "Where the ISRC came from (e.g. 'spotify', 'mlc', 'manual', 'ppl', 'apple_music', 'youtube_music', 'soundcloud', 'disco').",
|
|
67
108
|
},
|
|
68
|
-
isrc_prefix: {
|
|
69
|
-
type: "string",
|
|
70
|
-
description: "First five characters of the ISRC, used for label-prefix intelligence. Auto-derived in most write paths; settable for backfills.",
|
|
71
|
-
},
|
|
72
109
|
musicbrainz_recording_id: {
|
|
73
110
|
type: "string",
|
|
74
111
|
description: "MusicBrainz recording UUID",
|
|
@@ -228,7 +265,7 @@ export class RecordingsTools {
|
|
|
228
265
|
required: ["title", "artist_name", "version_type"],
|
|
229
266
|
},
|
|
230
267
|
},
|
|
231
|
-
executor: this.createRecording.bind(this),
|
|
268
|
+
executor: withBillingGate(this.pica, "recording creation", this.createRecording.bind(this)),
|
|
232
269
|
},
|
|
233
270
|
{
|
|
234
271
|
definition: {
|
|
@@ -249,7 +286,7 @@ export class RecordingsTools {
|
|
|
249
286
|
required: ["id"],
|
|
250
287
|
},
|
|
251
288
|
},
|
|
252
|
-
executor: this.updateRecording.bind(this),
|
|
289
|
+
executor: withBillingGate(this.pica, "recording update", this.updateRecording.bind(this)),
|
|
253
290
|
},
|
|
254
291
|
{
|
|
255
292
|
definition: {
|
|
@@ -266,7 +303,7 @@ export class RecordingsTools {
|
|
|
266
303
|
required: ["id"],
|
|
267
304
|
},
|
|
268
305
|
},
|
|
269
|
-
executor: this.deleteRecording.bind(this),
|
|
306
|
+
executor: withBillingGate(this.pica, "recording deletion", this.deleteRecording.bind(this)),
|
|
270
307
|
},
|
|
271
308
|
];
|
|
272
309
|
}
|
|
@@ -323,6 +360,14 @@ export class RecordingsTools {
|
|
|
323
360
|
}
|
|
324
361
|
}
|
|
325
362
|
catch (error) {
|
|
363
|
+
// 404 on the primary entity is a hard error — propagate so the
|
|
364
|
+
// agent sees an explicit not-found signal instead of a 200 with
|
|
365
|
+
// a partial-empty payload (ADR-198 verification 2026-04-26 —
|
|
366
|
+
// pica_recordings_inspect was hallucinating into the void on
|
|
367
|
+
// missing route handlers / missing recordings).
|
|
368
|
+
if (error instanceof EntityNotFoundError) {
|
|
369
|
+
throw error;
|
|
370
|
+
}
|
|
326
371
|
result.recording_error =
|
|
327
372
|
error instanceof Error ? error.message : "Failed to fetch recording";
|
|
328
373
|
}
|