@withpica/mcp-server-directory 1.4.0 → 1.4.1

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
@@ -8,6 +8,12 @@ for breaking tool-surface changes.
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [1.4.1] - 2026-05-16
12
+
13
+ ### Changed
14
+
15
+ - Brand consistency: "PICA" → "withPICA" in package metadata (description, author).
16
+
11
17
  ## [1.4.0] - 2026-05-13
12
18
 
13
19
  ### Added
@@ -1,4 +1,4 @@
1
- export declare const CHANGELOG_MD = "# Changelog\n\nAll notable changes to `@withpica/mcp-server-directory` are documented here.\n\nThe format is loosely based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),\nand this project adheres to semantic versioning where the major number is incremented\nfor breaking tool-surface changes.\n\n## [Unreleased]\n\n## [1.4.0] - 2026-05-13\n\n### Added\n\n- **`directory_release_notes` tool + `release-notes://withpica/mcp-server-directory/latest` Resource (PR #414).**\n Agent-facing surface for directory MCP release notes. Reads `CHANGELOG.md`\n embedded at build time via `scripts/build-changelog.ts`. Returns the\n last 3 versions by default with optional `since_version` and `sections`\n filters. Resource counterpart serves the full CHANGELOG for\n Resource-native clients. Sister of `pica_release_notes` (creator MCP)\n and `team_release_notes` (team MCP). Disambiguated from catalogue-content\n searches (`directory_search` / `directory_list_works` / `directory_chain`)\n by the NOT-FOR clause in the description.\n\n## [1.3.0] - 2026-05-11\n\n### Added\n\n- **`directory_skill_list` + `directory_skill_get` \u2014 skill discovery on the public directory MCP (ADR-140 Phase 2b, PR #371).**\n Lazy-loaded skill catalogue exposed via two meta-tools + one `skill://`\n Resource per shipped skill (SEP-2640 bridge pattern). v1 ships\n `find-music-for-sync-brief` \u2014 a methodology for searching the public\n directory by audio characteristics + free-text brief. Skill metadata is\n static at boot; bodies load on `skill_get` call. IP-protection lint\n (Rule 14) gates skill content against trade-secret directories before\n publish; cross-coverage parity lint asserts skill resource URIs match\n between stdio and HTTP transports.\n\n## [1.1.0] - 2026-04-21\n\nShipped as minor rather than major despite the `*_full` tool removal:\nthe removed names had near-zero external adoption (they shipped recently\nand weren't advertised externally), and staying on the 1.x line keeps\n`^1.0.0` consumers on the upgrade path rather than stranding them on\nthe broken cascade. Clients that cached the `*_full` names will see a\ntool-not-found error and need to refresh their tool list.\n\n### Breaking\n\n- **Removed `directory_lookup_person_full` and `directory_lookup_work_full`.**\n Both tools hit the same upstream endpoints as their non-`_full` counterparts\n with only a formatting difference \u2014 there was no capability delta. The\n `_full` variants are now the canonical names (`directory_lookup_person`\n and `directory_lookup_work`); the thin variants have been deleted. Clients\n that cached the `_full` names need to update their tool list; the\n replacements return a superset of the prior data, so no output is lost.\n\n### Added\n\n- **`directory_chain` tool** \u2014 one-call rights-chain lookup. Accepts a\n free-text query, a direct ISWC/ISRC `identifier`, or audio-only filters\n (BPM / key / energy / mood). Returns the already-public `ChainResult`\n shape: work + writers + publishers (names + roles only, no IPIs or\n splits) + linked recording + audio characteristics. Wraps the existing\n public `/api/public/directory/chain` endpoint \u2014 no new backing API work.\n- `directory_list_people` now accepts `letter` (A\u2013Z, `#`) for alphabetical\n browsing. The backend has supported this for months; only the MCP tool\n was missing the parameter.\n- `directory_list_works` now accepts `letter`, `sort` (`title` | `recent`),\n and `isrc` \u2014 all previously backend-only.\n\n### Changed\n\n- **`directory_lookup_person` now matches its description.** Previously the\n tool advertised ISNI / IPI / MusicBrainz ID support but the backing query\n only matched `global_creator_id` \u2014 any non-UUID identifier silently 404'd.\n The query now cascades through `global_creator_id` \u2192 `isni` \u2192\n `cae_ipi_number` \u2192 `musicbrainz_id`, first hit wins.\n- `directory_search` description rewritten to drop the false \"ranked\" claim.\n The backing endpoint is a fan-out (`listWorks` + `listPeople`,\n half-limit each), not cross-type ranking. Callers should prefer typed\n list tools when they know the entity type.\n- `directory_lookup_isrc` description rewritten to frame it honestly as a\n pinned filter preset on `list_works` rather than a distinct lookup.\n";
1
+ export declare const CHANGELOG_MD = "# Changelog\n\nAll notable changes to `@withpica/mcp-server-directory` are documented here.\n\nThe format is loosely based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),\nand this project adheres to semantic versioning where the major number is incremented\nfor breaking tool-surface changes.\n\n## [Unreleased]\n\n## [1.4.1] - 2026-05-16\n\n### Changed\n\n- Brand consistency: \"PICA\" \u2192 \"withPICA\" in package metadata (description, author).\n\n## [1.4.0] - 2026-05-13\n\n### Added\n\n- **`directory_release_notes` tool + `release-notes://withpica/mcp-server-directory/latest` Resource (PR #414).**\n Agent-facing surface for directory MCP release notes. Reads `CHANGELOG.md`\n embedded at build time via `scripts/build-changelog.ts`. Returns the\n last 3 versions by default with optional `since_version` and `sections`\n filters. Resource counterpart serves the full CHANGELOG for\n Resource-native clients. Sister of `pica_release_notes` (creator MCP)\n and `team_release_notes` (team MCP). Disambiguated from catalogue-content\n searches (`directory_search` / `directory_list_works` / `directory_chain`)\n by the NOT-FOR clause in the description.\n\n## [1.3.0] - 2026-05-11\n\n### Added\n\n- **`directory_skill_list` + `directory_skill_get` \u2014 skill discovery on the public directory MCP (ADR-140 Phase 2b, PR #371).**\n Lazy-loaded skill catalogue exposed via two meta-tools + one `skill://`\n Resource per shipped skill (SEP-2640 bridge pattern). v1 ships\n `find-music-for-sync-brief` \u2014 a methodology for searching the public\n directory by audio characteristics + free-text brief. Skill metadata is\n static at boot; bodies load on `skill_get` call. IP-protection lint\n (Rule 14) gates skill content against trade-secret directories before\n publish; cross-coverage parity lint asserts skill resource URIs match\n between stdio and HTTP transports.\n\n## [1.1.0] - 2026-04-21\n\nShipped as minor rather than major despite the `*_full` tool removal:\nthe removed names had near-zero external adoption (they shipped recently\nand weren't advertised externally), and staying on the 1.x line keeps\n`^1.0.0` consumers on the upgrade path rather than stranding them on\nthe broken cascade. Clients that cached the `*_full` names will see a\ntool-not-found error and need to refresh their tool list.\n\n### Breaking\n\n- **Removed `directory_lookup_person_full` and `directory_lookup_work_full`.**\n Both tools hit the same upstream endpoints as their non-`_full` counterparts\n with only a formatting difference \u2014 there was no capability delta. The\n `_full` variants are now the canonical names (`directory_lookup_person`\n and `directory_lookup_work`); the thin variants have been deleted. Clients\n that cached the `_full` names need to update their tool list; the\n replacements return a superset of the prior data, so no output is lost.\n\n### Added\n\n- **`directory_chain` tool** \u2014 one-call rights-chain lookup. Accepts a\n free-text query, a direct ISWC/ISRC `identifier`, or audio-only filters\n (BPM / key / energy / mood). Returns the already-public `ChainResult`\n shape: work + writers + publishers (names + roles only, no IPIs or\n splits) + linked recording + audio characteristics. Wraps the existing\n public `/api/public/directory/chain` endpoint \u2014 no new backing API work.\n- `directory_list_people` now accepts `letter` (A\u2013Z, `#`) for alphabetical\n browsing. The backend has supported this for months; only the MCP tool\n was missing the parameter.\n- `directory_list_works` now accepts `letter`, `sort` (`title` | `recent`),\n and `isrc` \u2014 all previously backend-only.\n\n### Changed\n\n- **`directory_lookup_person` now matches its description.** Previously the\n tool advertised ISNI / IPI / MusicBrainz ID support but the backing query\n only matched `global_creator_id` \u2014 any non-UUID identifier silently 404'd.\n The query now cascades through `global_creator_id` \u2192 `isni` \u2192\n `cae_ipi_number` \u2192 `musicbrainz_id`, first hit wins.\n- `directory_search` description rewritten to drop the false \"ranked\" claim.\n The backing endpoint is a fan-out (`listWorks` + `listPeople`,\n half-limit each), not cross-type ranking. Callers should prefer typed\n list tools when they know the entity type.\n- `directory_lookup_isrc` description rewritten to frame it honestly as a\n pinned filter preset on `list_works` rather than a distinct lookup.\n";
2
2
  export declare const PACKAGE_NAME = "@withpica/mcp-server-directory";
3
- export declare const PACKAGE_VERSION = "1.4.0";
3
+ export declare const PACKAGE_VERSION = "1.4.1";
4
4
  //# sourceMappingURL=changelog.generated.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"changelog.generated.d.ts","sourceRoot":"","sources":["../../src/lib/changelog.generated.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,+vIAAwsI,CAAC;AACluI,eAAO,MAAM,YAAY,mCAAmC,CAAC;AAC7D,eAAO,MAAM,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"changelog.generated.d.ts","sourceRoot":"","sources":["../../src/lib/changelog.generated.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,y4IAA60I,CAAC;AACv2I,eAAO,MAAM,YAAY,mCAAmC,CAAC;AAC7D,eAAO,MAAM,eAAe,UAAU,CAAC"}
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
2
  // Generated by scripts/build-changelog.ts — do not edit.
3
- export const CHANGELOG_MD = "# Changelog\n\nAll notable changes to `@withpica/mcp-server-directory` are documented here.\n\nThe format is loosely based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),\nand this project adheres to semantic versioning where the major number is incremented\nfor breaking tool-surface changes.\n\n## [Unreleased]\n\n## [1.4.0] - 2026-05-13\n\n### Added\n\n- **`directory_release_notes` tool + `release-notes://withpica/mcp-server-directory/latest` Resource (PR #414).**\n Agent-facing surface for directory MCP release notes. Reads `CHANGELOG.md`\n embedded at build time via `scripts/build-changelog.ts`. Returns the\n last 3 versions by default with optional `since_version` and `sections`\n filters. Resource counterpart serves the full CHANGELOG for\n Resource-native clients. Sister of `pica_release_notes` (creator MCP)\n and `team_release_notes` (team MCP). Disambiguated from catalogue-content\n searches (`directory_search` / `directory_list_works` / `directory_chain`)\n by the NOT-FOR clause in the description.\n\n## [1.3.0] - 2026-05-11\n\n### Added\n\n- **`directory_skill_list` + `directory_skill_get` — skill discovery on the public directory MCP (ADR-140 Phase 2b, PR #371).**\n Lazy-loaded skill catalogue exposed via two meta-tools + one `skill://`\n Resource per shipped skill (SEP-2640 bridge pattern). v1 ships\n `find-music-for-sync-brief` — a methodology for searching the public\n directory by audio characteristics + free-text brief. Skill metadata is\n static at boot; bodies load on `skill_get` call. IP-protection lint\n (Rule 14) gates skill content against trade-secret directories before\n publish; cross-coverage parity lint asserts skill resource URIs match\n between stdio and HTTP transports.\n\n## [1.1.0] - 2026-04-21\n\nShipped as minor rather than major despite the `*_full` tool removal:\nthe removed names had near-zero external adoption (they shipped recently\nand weren't advertised externally), and staying on the 1.x line keeps\n`^1.0.0` consumers on the upgrade path rather than stranding them on\nthe broken cascade. Clients that cached the `*_full` names will see a\ntool-not-found error and need to refresh their tool list.\n\n### Breaking\n\n- **Removed `directory_lookup_person_full` and `directory_lookup_work_full`.**\n Both tools hit the same upstream endpoints as their non-`_full` counterparts\n with only a formatting difference — there was no capability delta. The\n `_full` variants are now the canonical names (`directory_lookup_person`\n and `directory_lookup_work`); the thin variants have been deleted. Clients\n that cached the `_full` names need to update their tool list; the\n replacements return a superset of the prior data, so no output is lost.\n\n### Added\n\n- **`directory_chain` tool** — one-call rights-chain lookup. Accepts a\n free-text query, a direct ISWC/ISRC `identifier`, or audio-only filters\n (BPM / key / energy / mood). Returns the already-public `ChainResult`\n shape: work + writers + publishers (names + roles only, no IPIs or\n splits) + linked recording + audio characteristics. Wraps the existing\n public `/api/public/directory/chain` endpoint — no new backing API work.\n- `directory_list_people` now accepts `letter` (A–Z, `#`) for alphabetical\n browsing. The backend has supported this for months; only the MCP tool\n was missing the parameter.\n- `directory_list_works` now accepts `letter`, `sort` (`title` | `recent`),\n and `isrc` — all previously backend-only.\n\n### Changed\n\n- **`directory_lookup_person` now matches its description.** Previously the\n tool advertised ISNI / IPI / MusicBrainz ID support but the backing query\n only matched `global_creator_id` — any non-UUID identifier silently 404'd.\n The query now cascades through `global_creator_id` → `isni` →\n `cae_ipi_number` → `musicbrainz_id`, first hit wins.\n- `directory_search` description rewritten to drop the false \"ranked\" claim.\n The backing endpoint is a fan-out (`listWorks` + `listPeople`,\n half-limit each), not cross-type ranking. Callers should prefer typed\n list tools when they know the entity type.\n- `directory_lookup_isrc` description rewritten to frame it honestly as a\n pinned filter preset on `list_works` rather than a distinct lookup.\n";
3
+ export const CHANGELOG_MD = "# Changelog\n\nAll notable changes to `@withpica/mcp-server-directory` are documented here.\n\nThe format is loosely based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),\nand this project adheres to semantic versioning where the major number is incremented\nfor breaking tool-surface changes.\n\n## [Unreleased]\n\n## [1.4.1] - 2026-05-16\n\n### Changed\n\n- Brand consistency: \"PICA\" → \"withPICA\" in package metadata (description, author).\n\n## [1.4.0] - 2026-05-13\n\n### Added\n\n- **`directory_release_notes` tool + `release-notes://withpica/mcp-server-directory/latest` Resource (PR #414).**\n Agent-facing surface for directory MCP release notes. Reads `CHANGELOG.md`\n embedded at build time via `scripts/build-changelog.ts`. Returns the\n last 3 versions by default with optional `since_version` and `sections`\n filters. Resource counterpart serves the full CHANGELOG for\n Resource-native clients. Sister of `pica_release_notes` (creator MCP)\n and `team_release_notes` (team MCP). Disambiguated from catalogue-content\n searches (`directory_search` / `directory_list_works` / `directory_chain`)\n by the NOT-FOR clause in the description.\n\n## [1.3.0] - 2026-05-11\n\n### Added\n\n- **`directory_skill_list` + `directory_skill_get` — skill discovery on the public directory MCP (ADR-140 Phase 2b, PR #371).**\n Lazy-loaded skill catalogue exposed via two meta-tools + one `skill://`\n Resource per shipped skill (SEP-2640 bridge pattern). v1 ships\n `find-music-for-sync-brief` — a methodology for searching the public\n directory by audio characteristics + free-text brief. Skill metadata is\n static at boot; bodies load on `skill_get` call. IP-protection lint\n (Rule 14) gates skill content against trade-secret directories before\n publish; cross-coverage parity lint asserts skill resource URIs match\n between stdio and HTTP transports.\n\n## [1.1.0] - 2026-04-21\n\nShipped as minor rather than major despite the `*_full` tool removal:\nthe removed names had near-zero external adoption (they shipped recently\nand weren't advertised externally), and staying on the 1.x line keeps\n`^1.0.0` consumers on the upgrade path rather than stranding them on\nthe broken cascade. Clients that cached the `*_full` names will see a\ntool-not-found error and need to refresh their tool list.\n\n### Breaking\n\n- **Removed `directory_lookup_person_full` and `directory_lookup_work_full`.**\n Both tools hit the same upstream endpoints as their non-`_full` counterparts\n with only a formatting difference — there was no capability delta. The\n `_full` variants are now the canonical names (`directory_lookup_person`\n and `directory_lookup_work`); the thin variants have been deleted. Clients\n that cached the `_full` names need to update their tool list; the\n replacements return a superset of the prior data, so no output is lost.\n\n### Added\n\n- **`directory_chain` tool** — one-call rights-chain lookup. Accepts a\n free-text query, a direct ISWC/ISRC `identifier`, or audio-only filters\n (BPM / key / energy / mood). Returns the already-public `ChainResult`\n shape: work + writers + publishers (names + roles only, no IPIs or\n splits) + linked recording + audio characteristics. Wraps the existing\n public `/api/public/directory/chain` endpoint — no new backing API work.\n- `directory_list_people` now accepts `letter` (A–Z, `#`) for alphabetical\n browsing. The backend has supported this for months; only the MCP tool\n was missing the parameter.\n- `directory_list_works` now accepts `letter`, `sort` (`title` | `recent`),\n and `isrc` — all previously backend-only.\n\n### Changed\n\n- **`directory_lookup_person` now matches its description.** Previously the\n tool advertised ISNI / IPI / MusicBrainz ID support but the backing query\n only matched `global_creator_id` — any non-UUID identifier silently 404'd.\n The query now cascades through `global_creator_id` → `isni` →\n `cae_ipi_number` → `musicbrainz_id`, first hit wins.\n- `directory_search` description rewritten to drop the false \"ranked\" claim.\n The backing endpoint is a fan-out (`listWorks` + `listPeople`,\n half-limit each), not cross-type ranking. Callers should prefer typed\n list tools when they know the entity type.\n- `directory_lookup_isrc` description rewritten to frame it honestly as a\n pinned filter preset on `list_works` rather than a distinct lookup.\n";
4
4
  export const PACKAGE_NAME = "@withpica/mcp-server-directory";
5
- export const PACKAGE_VERSION = "1.4.0";
5
+ export const PACKAGE_VERSION = "1.4.1";
6
6
  //# sourceMappingURL=changelog.generated.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"changelog.generated.js","sourceRoot":"","sources":["../../src/lib/changelog.generated.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,MAAM,CAAC,MAAM,YAAY,GAAG,qsIAAqsI,CAAC;AACluI,MAAM,CAAC,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"changelog.generated.js","sourceRoot":"","sources":["../../src/lib/changelog.generated.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,MAAM,CAAC,MAAM,YAAY,GAAG,00IAA00I,CAAC;AACv2I,MAAM,CAAC,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@withpica/mcp-server-directory",
3
- "version": "1.4.0",
4
- "description": "MCP Server for PICA Public Directory — enables AI assistants to search verified works and creators",
3
+ "version": "1.4.1",
4
+ "description": "MCP Server for the withPICA Public Directory — enables AI assistants to search verified works and creators",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
@@ -18,7 +18,7 @@
18
18
  "lint:changelog": "tsx ../scripts/lint-changelog.ts --package=.",
19
19
  "prepublishOnly": "npm run build && npm run lint:changelog"
20
20
  },
21
- "author": "PICA Platform",
21
+ "author": "withPICA",
22
22
  "license": "MIT",
23
23
  "dependencies": {
24
24
  "@modelcontextprotocol/sdk": "^1.0.4"