@withpica/mcp-server 2.96.0 → 2.96.2

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 CHANGED
@@ -11,12 +11,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11
11
 
12
12
  ## [Unreleased]
13
13
 
14
- ## [2.96.0] - 2026-08-26
14
+ ## [2.96.2] - 2026-09-02
15
15
 
16
16
  The MPP pay rail (spec 2026-08-24 WS-B): a new tool that mints a pay link,
17
17
  and `pica_subscription_status` learns to say what pica costs and what it is
18
18
  holding. Depends on `@withpica/mcp-sdk` 3.13.0 (`BillingResource`) — publish
19
- order matters, see `docs/releases/2026-08-26-mcp-release.md`.
19
+ order matters, see `docs/releases/2026-08-26-mcp-release.md`. (This entry
20
+ was authored as 2.96.0, which npm deprecated after 2.96.1 shipped from
21
+ develop without `pica_billing_pay`; the branch re-releases on top of 2.96.1
22
+ as 2.96.2, and also carries the stdio relay change below.)
20
23
 
21
24
  ### Added
22
25
 
@@ -45,6 +48,50 @@ order matters, see `docs/releases/2026-08-26-mcp-release.md`.
45
48
 
46
49
  ### Changed
47
50
 
51
+ - **stdio relay forwards a narrowed result projection** — after a successful
52
+ tool call the audit entry now carries `result_projection` (built by
53
+ `narrowToolResultForRefs` from `@withpica/mcp-utils` ≥1.28.0), so the
54
+ relay ingest can attribute import wins: `pica_import_streaming_link` /
55
+ `pica_import_youtube_link` created-work ids live in the RESULT and their
56
+ params carry no id, which is why stdio imports recorded `entity_refs:
57
+ null` and were invisible to the weekly roundup's wins beat. Only
58
+ allow-listed uuid arrays travel; every other tool sends
59
+ `result_projection: null` — nothing else on the wire changes. (The same
60
+ entry field also rides `makeHttpAuditFn`'s POST to `/api/mcp/audit`,
61
+ which destructures a fixed field list and ignores it.)
62
+ ⚠️ Publish order: `@withpica/mcp-utils` 1.28.0 must be on npm before this
63
+ release (2.96.2) — the dependency floor is `^1.28.0`.
64
+
65
+ ## [2.96.1] - 2026-08-31
66
+
67
+ First npm release since 2.95.4 — carries everything below (the discover
68
+ changes have been live on the hosted connector since promote #2061; stdio
69
+ clients get them here). 2.96.0 was published from an unmerged branch and is
70
+ deprecated; do not use it.
71
+
72
+ ### Fixed
73
+
74
+ - **`pica_import_validate` surfaces warnings on a VALID result.** A warning
75
+ does not make a row invalid, so `valid: true` can carry warnings — e.g. a
76
+ works CSV mapped to `release_year` (release-level data; a newly created
77
+ work has no release) is receipted at row 0. The tool used to answer "All N
78
+ rows are valid. Ready to import" and drop the warning, so the agent
79
+ executed blind (2026-08-30 production finding, PR #2072 / promote #2074).
80
+ Warnings now ride the valid branch in the text and as `warnings` in the
81
+ structured data. The SDK's `ImportValidation.errors` rows carry the wire
82
+ field `error` (with `message` kept for normalising callers).
83
+
84
+ ### Changed
85
+
86
+ - **The ten tools slated for removal in 2.96.0 remain, `removal_target`
87
+ extended to 2.97.0** (`pica_recording_credits_bulk_update`,
88
+ `pica_statements_list`, `pica_documents_list`, `pica_documents_read`,
89
+ `pica_projects_list`, `pica_releases_list`, `pica_releases_get`,
90
+ `pica_releases_bulk_attach_tracks`,
91
+ `pica_releases_attach_track_by_identifier`, `pica_notes_list`). This
92
+ release exists to ship the validate-warnings fix; removing tools is its
93
+ own change with its own review, not a rider on it.
94
+
48
95
  - **`pica_discover({ query })` no longer scores the asker's own words as the entity.** Determiners, pronouns, prepositions and light verbs (`my`, `the`, `get`, `list`, `find` …) are dropped before ranking. "start my music catalogue and import my songs" led with three `pica_my_*` tools because "my" matched their domain segment; it now leads with the import tools. A query made only of such words matches nothing.
49
96
  - **Query mode carries the fresh-org import line.** The ADR-294 hint ("on a fresh or empty org, run `pica_dashboard_briefing` first … paste a spotify album or playlist link") was only on the no-args category map; it is now on every query response, hit or miss.
50
97
  - **Tools the caller cannot run on this connection rank last and are flagged.** Shortlist rows and `pica_tool_details` gain `callable_on_this_surface: false` plus a `surface_note` when the tool is on another surface (stdio / lobby) or needs a scope the connection does not hold — the judgement the HTTP dispatcher enforces at `pica_execute` time (installed only while the inner gate is in enforce mode). An existing scope or destructive-tier `callable_note` is kept beside it, and the `invoke` line on a flagged detail says the call will be refused instead of "pica_execute executes every tool returned here". Rows for callable tools are unchanged (no new keys). A capped shortlist keeps at least five tail rows for flagged tools and lets them fill what visible rows leave, so a gated capability reads as gated, not missing, and a narrow scope never shrinks the list. Query-mode `cache_until` is now one hour (the rows are per-connection); the full map keeps its day.
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
- 329 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.
68
+ 330 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
 
@@ -285,4 +285,4 @@ Read tools are annotated read-only and are safe to call freely. Write tools repo
285
285
 
286
286
  ---
287
287
 
288
- Generated for `@withpica/mcp-server@2.95.4`. © 2024-2026 Withpica Ltd. All rights reserved. MIT licensed.
288
+ Generated for `@withpica/mcp-server@2.96.2`. © 2024-2026 Withpica Ltd. All rights reserved. MIT licensed.