@withpica/mcp-server 2.98.0 → 2.99.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 +98 -0
- package/README.md +4 -4
- package/dist/lib/changelog.generated.d.ts +2 -2
- package/dist/lib/changelog.generated.d.ts.map +1 -1
- package/dist/lib/changelog.generated.js +2 -2
- package/dist/lib/changelog.generated.js.map +1 -1
- package/dist/prompts/creator-question-atlas.d.ts.map +1 -1
- package/dist/prompts/creator-question-atlas.js +14 -2
- package/dist/prompts/creator-question-atlas.js.map +1 -1
- package/dist/prompts/index.js +1 -1
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +0 -3
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/required-schemas.generated.d.ts +1 -1
- package/dist/resources/required-schemas.generated.d.ts.map +1 -1
- package/dist/resources/required-schemas.generated.js +1 -0
- package/dist/resources/required-schemas.generated.js.map +1 -1
- package/dist/skills/skills.generated.js +6 -6
- package/dist/skills/skills.generated.js.map +1 -1
- package/dist/tools/collaborators.d.ts.map +1 -1
- package/dist/tools/collaborators.js +27 -3
- package/dist/tools/collaborators.js.map +1 -1
- package/dist/tools/credits.d.ts +4 -1
- package/dist/tools/credits.d.ts.map +1 -1
- package/dist/tools/credits.js +6 -93
- package/dist/tools/credits.js.map +1 -1
- package/dist/tools/deprecations.d.ts +65 -7
- package/dist/tools/deprecations.d.ts.map +1 -1
- package/dist/tools/deprecations.js +96 -96
- package/dist/tools/deprecations.js.map +1 -1
- package/dist/tools/discovery.d.ts +28 -2
- package/dist/tools/discovery.d.ts.map +1 -1
- package/dist/tools/discovery.js +61 -27
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/documents.d.ts +2 -2
- package/dist/tools/documents.d.ts.map +1 -1
- package/dist/tools/documents.js +2 -88
- package/dist/tools/documents.js.map +1 -1
- package/dist/tools/duplicates.d.ts +2 -0
- package/dist/tools/duplicates.d.ts.map +1 -1
- package/dist/tools/duplicates.js +107 -0
- package/dist/tools/duplicates.js.map +1 -1
- package/dist/tools/integrity.d.ts.map +1 -1
- package/dist/tools/integrity.js +65 -8
- package/dist/tools/integrity.js.map +1 -1
- package/dist/tools/metadata.d.ts.map +1 -1
- package/dist/tools/metadata.js +41 -121
- package/dist/tools/metadata.js.map +1 -1
- package/dist/tools/notes.d.ts +3 -4
- package/dist/tools/notes.d.ts.map +1 -1
- package/dist/tools/notes.js +3 -39
- package/dist/tools/notes.js.map +1 -1
- package/dist/tools/projects.d.ts +3 -4
- package/dist/tools/projects.d.ts.map +1 -1
- package/dist/tools/projects.js +3 -27
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/public-filter.d.ts.map +1 -1
- package/dist/tools/public-filter.js +3 -6
- package/dist/tools/public-filter.js.map +1 -1
- package/dist/tools/recovery-hints.d.ts.map +1 -1
- package/dist/tools/recovery-hints.js +24 -23
- package/dist/tools/recovery-hints.js.map +1 -1
- package/dist/tools/releases.d.ts +2 -4
- package/dist/tools/releases.d.ts.map +1 -1
- package/dist/tools/releases.js +6 -210
- package/dist/tools/releases.js.map +1 -1
- package/dist/tools/rights.d.ts +9 -0
- package/dist/tools/rights.d.ts.map +1 -1
- package/dist/tools/rights.js +196 -3
- package/dist/tools/rights.js.map +1 -1
- package/dist/tools/royalties.d.ts +5 -5
- package/dist/tools/royalties.d.ts.map +1 -1
- package/dist/tools/royalties.js +2 -53
- package/dist/tools/royalties.js.map +1 -1
- package/dist/tools/statements.js +1 -1
- package/dist/tools/statements.js.map +1 -1
- package/dist/tools/version-guard.d.ts +16 -4
- package/dist/tools/version-guard.d.ts.map +1 -1
- package/dist/tools/version-guard.js +22 -8
- package/dist/tools/version-guard.js.map +1 -1
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +24 -11
- package/dist/tools/works.js.map +1 -1
- package/package.json +2 -2
- package/server.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -11,6 +11,104 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
11
11
|
|
|
12
12
|
## [Unreleased]
|
|
13
13
|
|
|
14
|
+
## [2.99.0] - 2026-09-30
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- **Platform-presence waivers on `pica_integrity_waive`.** New `gap_code`
|
|
19
|
+
values `PLATFORM_SPOTIFY`, `PLATFORM_YOUTUBE`, `PLATFORM_APPLE_MUSIC` with a
|
|
20
|
+
required `kind` (`not_applicable` | `restricted`) and reason mark a work that
|
|
21
|
+
is deliberately not on that platform (e.g. no YouTube by design, a licence
|
|
22
|
+
rules out Content ID). The platform then drops out of the work's
|
|
23
|
+
completeness instead of counting as missing; the answer carries the
|
|
24
|
+
re-scored `completeness`. Owner/admin only. Identifiers and registrations
|
|
25
|
+
(ISWC, ISRC, IPI, society registrations, writers, splits) can never be
|
|
26
|
+
waived, and the description says so.
|
|
27
|
+
|
|
28
|
+
- `original_work_id` on `pica_works_create` / `pica_works_update`: links a
|
|
29
|
+
modified version (a remix that added writers) to the work it modifies. Same
|
|
30
|
+
catalogue only; `null` clears it.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- **A remix is a recording of the same song unless it adds writers (ADR-324).**
|
|
35
|
+
`pica_works_create` on a remix-titled work now suggests a recording under the
|
|
36
|
+
original (`pica_recordings_create`, `version_type: "remix"`, remixer credited
|
|
37
|
+
on the recording) with the modified-version path beside it
|
|
38
|
+
(`if_new_writers`), instead of a separate derivative work.
|
|
39
|
+
`pica_find_duplicates` (works) no longer groups a remix with its original as
|
|
40
|
+
a duplicate: each remix is paired with its original as
|
|
41
|
+
`match_kind: "remix_recording"` (move its recordings) or
|
|
42
|
+
`"remix_modified_version"` (link it), with a `remix` block naming the
|
|
43
|
+
recordings, any added writers and the action — never "fold the copies".
|
|
44
|
+
The `catalog-modelling` skill carries the rule.
|
|
45
|
+
|
|
46
|
+
- `pica_rights_inspect` no longer says amounts are "not computed yet"; it points
|
|
47
|
+
to `pica_rights_statements` for them.
|
|
48
|
+
|
|
49
|
+
### Removed
|
|
50
|
+
|
|
51
|
+
- **The last 11 deprecated tool aliases** (removal target 2.99.0). Each had
|
|
52
|
+
been a hidden, callable alias of the tool named beside it — ten since the
|
|
53
|
+
MCP tool-surface consolidation, `pica_royalties_summary` since 2026-09-25
|
|
54
|
+
(ADR-321 Phase 0). Calling an old name now fails with `TOOL_NOT_FOUND`;
|
|
55
|
+
the answer (from `pica_execute`, `pica_tool_details` and the hosted
|
|
56
|
+
connector alike) says the tool was retired in 2.99.0, names its
|
|
57
|
+
replacement and any argument change, and lists the replacement first in
|
|
58
|
+
`did_you_mean` when the caller can call it. Use the replacement instead:
|
|
59
|
+
- `pica_releases_list` → `pica_releases_query`
|
|
60
|
+
- `pica_releases_get` → `pica_releases_inspect`
|
|
61
|
+
- `pica_releases_bulk_attach_tracks` → `pica_releases_attach_track` with
|
|
62
|
+
`items[]` (the old `tracks` field is now `items`)
|
|
63
|
+
- `pica_releases_attach_track_by_identifier` → `pica_releases_attach_track`
|
|
64
|
+
with `identifier_type` + `value`
|
|
65
|
+
- `pica_projects_list` → `pica_projects_query`
|
|
66
|
+
- `pica_notes_list` → `pica_notes_query`
|
|
67
|
+
- `pica_documents_list` → `pica_documents_query`
|
|
68
|
+
- `pica_documents_read` → `pica_documents_inspect`
|
|
69
|
+
- `pica_statements_list` → `pica_statements_query`
|
|
70
|
+
- `pica_royalties_summary` → `pica_royalties_blockers` (`work_id` and
|
|
71
|
+
`limit` carry over; `gap_type` and `priority` have no equivalent)
|
|
72
|
+
- `pica_recording_credits_bulk_update` → `pica_recording_credits_update`
|
|
73
|
+
with a `credits` array (same arguments)
|
|
74
|
+
|
|
75
|
+
Production use over the 60 days before removal was 4 calls in total.
|
|
76
|
+
|
|
77
|
+
- **`verified` on `pica_works_query`.** It filtered on a work-level
|
|
78
|
+
`is_verified` flag that PICA has never stored, so it matched no works
|
|
79
|
+
whichever way it was set. Passing it now returns `NO_WORK_VERIFIED_FLAG`
|
|
80
|
+
(the same code `pica_works_verify` returns) and names the filters that do
|
|
81
|
+
exist: `health_filter: 'low_completeness'`, `completeness_score_lt`, and
|
|
82
|
+
`pica_works_inspect` for one work.
|
|
83
|
+
- **`verified` / `unverified` counts in the `catalog://stats` resource, and
|
|
84
|
+
`is_verified` in `works://list`.** Both read the same missing flag, so every
|
|
85
|
+
work counted as unverified.
|
|
86
|
+
- **`musicbrainz_recording_id` on `pica_works_update` / `pica_works_create` /
|
|
87
|
+
`pica_works_bulk_update`.** An update used to pass it to the work's
|
|
88
|
+
recording, but only when the work had exactly one recording, so the same
|
|
89
|
+
call silently stopped working once a second recording was added (a create,
|
|
90
|
+
with no recording yet, never stored it). It is now refused with
|
|
91
|
+
`PHANTOM_FIELD` naming the tool to use instead:
|
|
92
|
+
`pica_recordings_update {id, musicbrainz_recording_id}`. Work reads still
|
|
93
|
+
show the recording's MusicBrainz id, and the completeness benchmark still
|
|
94
|
+
reads it.
|
|
95
|
+
|
|
96
|
+
### Fixed
|
|
97
|
+
|
|
98
|
+
- `pica_integrity_waive`'s `gap_code` enum now lists `WORK_SPLITS_ABSENT` and
|
|
99
|
+
`WORK_SPLITS_INVALID`, which the app has accepted since 2026-08-16.
|
|
100
|
+
- **`pica_rights_statements`** (read:finances) — ADR-321 Phase 3, COMPUTED NOT
|
|
101
|
+
PAID: direct income and what each party would receive under the song's
|
|
102
|
+
locked split in force when it was earned, PICA's proposed fee as its own line
|
|
103
|
+
(shown, never charged), every hold with why / who clears it / since when, and
|
|
104
|
+
the four measures. With `work_id`, that song's imported society statements
|
|
105
|
+
checked against the split: each co-writer's EXPECTED amount and the
|
|
106
|
+
registration check for writer societies; line-up completeness for PPL /
|
|
107
|
+
SoundExchange.
|
|
108
|
+
- **`pica_rights_record_income`** (write:finances) — record a figure the user
|
|
109
|
+
gave (or a quoted licensing enquiry's fee), labelled "entered by your agent".
|
|
110
|
+
No money moves.
|
|
111
|
+
|
|
14
112
|
## [2.98.0] - 2026-09-29
|
|
15
113
|
|
|
16
114
|
### Deprecated
|
package/README.md
CHANGED
|
@@ -65,7 +65,7 @@ Read tools are annotated read-only and are safe to call freely. Write tools repo
|
|
|
65
65
|
|
|
66
66
|
## Tools
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
343 tools, grouped below by the taxonomy `pica_discover` uses. The server's own `tools/list` is authoritative — not every registered tool is filed under a category yet, so the names below are a map, not a census.
|
|
69
69
|
|
|
70
70
|
**works** — manage your musical works
|
|
71
71
|
|
|
@@ -235,9 +235,9 @@ Read tools are annotated read-only and are safe to call freely. Write tools repo
|
|
|
235
235
|
|
|
236
236
|
`pica_royalties_list`, `pica_royalties_get`, `pica_statements_query`, `pica_statements_inspect`, `pica_ingest_statement`, `pica_statements_pending`, `pica_statement_ingest_document`, `pica_royalties_blockers`, `pica_royalties_unmatched`, `pica_royalties_attribute`
|
|
237
237
|
|
|
238
|
-
**rights** — programmable rights — propose a song, master or share rule for the parties to confirm, check who has confirmed,
|
|
238
|
+
**rights** — programmable rights — propose a song, master or share rule for the parties to confirm, check who has confirmed, see what money would be held and why, and what income would pay each party (computed, never paid)
|
|
239
239
|
|
|
240
|
-
`pica_rights_inspect`, `pica_rights_status`, `pica_rights_propose`
|
|
240
|
+
`pica_rights_inspect`, `pica_rights_status`, `pica_rights_propose`, `pica_rights_statements`, `pica_rights_record_income`
|
|
241
241
|
|
|
242
242
|
**selections** — save, recall, and resolve named catalog selections — persisted predicates over the catalogue with an honest coverage report
|
|
243
243
|
|
|
@@ -293,4 +293,4 @@ Read tools are annotated read-only and are safe to call freely. Write tools repo
|
|
|
293
293
|
|
|
294
294
|
---
|
|
295
295
|
|
|
296
|
-
Generated for `@withpica/mcp-server@2.
|
|
296
|
+
Generated for `@withpica/mcp-server@2.99.0`. © 2024-2026 Withpica Ltd. All rights reserved. MIT licensed.
|