@withpica/mcp-server 2.83.2 → 2.85.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 (49) hide show
  1. package/CHANGELOG.md +61 -3
  2. package/dist/lib/changelog.generated.d.ts +2 -2
  3. package/dist/lib/changelog.generated.d.ts.map +1 -1
  4. package/dist/lib/changelog.generated.js +2 -2
  5. package/dist/lib/changelog.generated.js.map +1 -1
  6. package/dist/resources/required-schemas.generated.d.ts +3 -3
  7. package/dist/resources/required-schemas.generated.d.ts.map +1 -1
  8. package/dist/resources/required-schemas.generated.js +3 -8
  9. package/dist/resources/required-schemas.generated.js.map +1 -1
  10. package/dist/tools/audio-files.d.ts +1 -0
  11. package/dist/tools/audio-files.d.ts.map +1 -1
  12. package/dist/tools/audio-files.js +80 -0
  13. package/dist/tools/audio-files.js.map +1 -1
  14. package/dist/tools/discovery.d.ts.map +1 -1
  15. package/dist/tools/discovery.js +5 -0
  16. package/dist/tools/discovery.js.map +1 -1
  17. package/dist/tools/documents.d.ts +1 -0
  18. package/dist/tools/documents.d.ts.map +1 -1
  19. package/dist/tools/documents.js +39 -1
  20. package/dist/tools/documents.js.map +1 -1
  21. package/dist/tools/metadata.d.ts.map +1 -1
  22. package/dist/tools/metadata.js +25 -0
  23. package/dist/tools/metadata.js.map +1 -1
  24. package/dist/tools/people.d.ts +17 -11
  25. package/dist/tools/people.d.ts.map +1 -1
  26. package/dist/tools/people.js +20 -5
  27. package/dist/tools/people.js.map +1 -1
  28. package/dist/tools/public-filter.d.ts.map +1 -1
  29. package/dist/tools/public-filter.js +1 -0
  30. package/dist/tools/public-filter.js.map +1 -1
  31. package/dist/tools/recordings.d.ts +5 -1
  32. package/dist/tools/recordings.d.ts.map +1 -1
  33. package/dist/tools/recordings.js +31 -17
  34. package/dist/tools/recordings.js.map +1 -1
  35. package/dist/tools/recovery-hints.d.ts.map +1 -1
  36. package/dist/tools/recovery-hints.js +22 -0
  37. package/dist/tools/recovery-hints.js.map +1 -1
  38. package/dist/tools/releases.d.ts.map +1 -1
  39. package/dist/tools/releases.js +6 -0
  40. package/dist/tools/releases.js.map +1 -1
  41. package/dist/tools/royalties.d.ts +2 -0
  42. package/dist/tools/royalties.d.ts.map +1 -1
  43. package/dist/tools/royalties.js +105 -0
  44. package/dist/tools/royalties.js.map +1 -1
  45. package/dist/tools/works.d.ts.map +1 -1
  46. package/dist/tools/works.js +25 -3
  47. package/dist/tools/works.js.map +1 -1
  48. package/package.json +2 -2
  49. package/server.json +2 -2
package/CHANGELOG.md CHANGED
@@ -9,10 +9,66 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
  > matching entry here in the same commit. See the project's "npm publish
10
10
  > discipline" memory entry for the enforcement rationale.
11
11
 
12
+ ## [2.85.0] - 2026-07-01
13
+
14
+ ### Added
15
+
16
+ - ADR-286 Phase 0 royalty-reconciliation tools: `pica_royalties_unmatched`, `pica_royalties_attribute`.
17
+ - `pica_documents_delete` (clear a failed-to-parse / superseded document + its storage object).
18
+
12
19
  ## [Unreleased]
13
20
 
21
+ ### Added
22
+
23
+ - **`pica_documents_delete`** — delete an uploaded document and its underlying
24
+ storage object (parity with `pica_audio_delete` / `pica_releases_delete`).
25
+ Clears a failed-to-parse (`parsing_status:'failed'`) or superseded document so
26
+ a clean copy can be re-uploaded (agent feedback `30889bf2`).
27
+
28
+ ### Changed
29
+
30
+ - **`pica_releases_create` / `pica_releases_update`** — accept `parent_label`
31
+ (free-text parent/umbrella label name). It is a real `releases` column but was
32
+ absent from the write schema, so agent writes were silently dropped while the
33
+ call reported success (agent feedback `eee77119`).
34
+
35
+ ## [2.84.0] - 2026-06-30
36
+
37
+ ### Added
38
+
39
+ - **`pica_audio_update`** (#1379) — set `file_type` / `stem_label` /
40
+ `version_label` / `title` on an audio file after upload, wrapping the
41
+ org-validated `PATCH /audio-files/[id]` route.
42
+
43
+ ### Changed
44
+
45
+ - **`pica_audio_query`** (#1378) — unassigned audio can now be filtered by
46
+ filename/title, making discover-and-assign workflows precise on large
47
+ upload sets.
48
+
14
49
  ## [2.83.2] - 2026-06-27
15
50
 
51
+ ### Added
52
+
53
+ - **`pica_statement_ingest_document`** (`write:finances`, `approvalMode:"human"`) —
54
+ agent-driven royalty/streaming statement ingestion for non-CSV statements
55
+ (PDF/image/xlsx). The agent reads the document, extracts the line items, and
56
+ calls this tool; for a delegated (OAuth/grant) caller it does NOT write — it
57
+ raises a human-approval request, and only the org owner's approval replays it
58
+ into `royalty_payments`, reusing the existing CSV parser downstream (identity
59
+ resolution, currency normalisation, fingerprint dedup). CSV statements stay on
60
+ the deterministic importer (PICA #1332).
61
+ - **`pica_statements_pending`** (`read:finances`) — lists uploaded
62
+ `royalty_statement` documents the user hasn't imported yet (lean summaries, no
63
+ financial figures), so the agent can discover them; routes to
64
+ `pica_statement_ingest_document` (PICA #1332).
65
+ - **`pica_audio_assign`** (`write:files`) — attach an uploaded audio file to a
66
+ work and/or recording after the fact; pairs with the new
67
+ `pica_audio_query unassigned:true` filter so an agent can discover orphan
68
+ audio and give it a home. Wraps the existing org-validated
69
+ `PATCH /api/admin/audio-files/[id]`; no approval gate (low-risk, reversible)
70
+ (PICA #1337).
71
+
16
72
  ### Changed
17
73
 
18
74
  - **Society-agnostic reads (ADR-278).** Bumped `@withpica/mcp-sdk` to `^2.0.0`,
@@ -23,15 +79,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
23
79
  a republish so external stdio consumers receive the BREAKING SDK read shapes
24
80
  already live on the hosted `/api/mcp`. Consumers reading `prs`/`ppl`/`mlc`
25
81
  fields must migrate to `society_registrations[]`.
26
-
27
- ### Changed
28
-
82
+ - **`pica_audio_query`** — new `unassigned` boolean filter returns audio with no
83
+ work and no recording (PICA #1337).
29
84
  - **`pica_documents_read`** — description now tells the agent to STOP retrying
30
85
  when `parsing_status` is `failed` and read the new `parse_error` field for the
31
86
  reason (e.g. a legacy `.xls` that must be re-saved as `.xlsx`), instead of
32
87
  polling a permanently-failing parse. Pairs with the server-side fix that makes
33
88
  the read return an honest `failed` + `parse_error` rather than looping in
34
89
  `processing` forever (ops_issue 8e197fe5). No tool/schema/SDK change.
90
+ - **`pica_documents_read`** — also points the agent at
91
+ `pica_statement_ingest_document` when the document is a royalty/streaming
92
+ statement (PICA #1332).
35
93
 
36
94
  ## [2.83.0] - 2026-06-25
37
95