@withpica/mcp-sdk 4.2.0 → 4.3.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 CHANGED
@@ -11,6 +11,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11
11
 
12
12
  ## [Unreleased]
13
13
 
14
+ ## [4.3.0] - 2026-11-02
15
+
16
+ ### Added
17
+
18
+ - `bulk.updateWorksWithResult(workIds, updates)`: a works bulk update's whole answer,
19
+ `{ data, count, refused, message? }`. `refused` lists the works not updated, each
20
+ `{ id, code, error }` (`status_move_not_allowed`, `not_found` or `not_updated`).
21
+ `bulk.updateWorks` is unchanged: it still returns only the updated works, which is why it
22
+ could not say which were refused. Backs `pica_works_bulk_update` in `@withpica/mcp-server`
23
+ 2.115.0.
24
+
14
25
  ## [4.2.0] - 2026-10-31
15
26
 
16
27
  ### Added
package/dist/index.d.ts CHANGED
@@ -3773,8 +3773,28 @@ declare class AnalyticsResource extends BaseResource {
3773
3773
  provenanceCertificateGet(workId: string): Promise<any>;
3774
3774
  catalogDiligence(): Promise<any>;
3775
3775
  }
3776
+ /** A works bulk update's whole answer (POST /admin/works/bulk-update). */
3777
+ export interface WorksBulkUpdateResult {
3778
+ /** The works updated. */
3779
+ data: unknown[];
3780
+ /** How many were updated. */
3781
+ count: number;
3782
+ /** The works not updated, each with why (e.g. a refused status move). */
3783
+ refused: Array<{
3784
+ id: string;
3785
+ code: string;
3786
+ error: string;
3787
+ }>;
3788
+ message?: string;
3789
+ }
3776
3790
  declare class BulkResource extends BaseResource {
3777
3791
  updateWorks(workIds: string[], updates: Record<string, any>): Promise<any>;
3792
+ /**
3793
+ * Like updateWorks, but the whole answer: updateWorks returns only the
3794
+ * updated works (`request()` narrows to `.data`), which drops `count` and
3795
+ * `refused`, so a caller can't tell which works were not updated.
3796
+ */
3797
+ updateWorksWithResult(workIds: string[], updates: Record<string, any>): Promise<WorksBulkUpdateResult>;
3778
3798
  updatePeopleRoles(personIds: string[], roles: string[], action?: string): Promise<any>;
3779
3799
  addPeopleTags(personIds: string[], tags: string[]): Promise<unknown>;
3780
3800
  linkArtist(workIds: string[], personId: string, artistName: string, dryRun?: boolean): Promise<unknown>;