@withpica/mcp-server 2.95.3 → 2.95.4
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 +34 -0
- package/README.intro.md +115 -0
- package/README.md +188 -204
- 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/index.js +2 -2
- package/dist/resources/agent-guide.d.ts +50 -4
- package/dist/resources/agent-guide.d.ts.map +1 -1
- package/dist/resources/agent-guide.js +109 -18
- package/dist/resources/agent-guide.js.map +1 -1
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +81 -2
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/llms-primer.d.ts +1 -1
- package/dist/resources/llms-primer.d.ts.map +1 -1
- package/dist/resources/llms-primer.js +1 -1
- package/dist/resources/required-schemas.generated.d.ts +3 -12
- package/dist/resources/required-schemas.generated.d.ts.map +1 -1
- package/dist/resources/required-schemas.generated.js +3 -18
- package/dist/resources/required-schemas.generated.js.map +1 -1
- package/dist/resources/required-schemas.source.d.ts.map +1 -1
- package/dist/resources/required-schemas.source.js +13 -15
- package/dist/resources/required-schemas.source.js.map +1 -1
- package/dist/server-instructions.d.ts +2 -2
- package/dist/server-instructions.d.ts.map +1 -1
- package/dist/server-instructions.js +3 -3
- package/dist/skills/skills.generated.d.ts.map +1 -1
- package/dist/skills/skills.generated.js +18 -9
- package/dist/skills/skills.generated.js.map +1 -1
- package/dist/tools/agent-identity.d.ts.map +1 -1
- package/dist/tools/agent-identity.js +2 -1
- package/dist/tools/agent-identity.js.map +1 -1
- package/dist/tools/agreement-types.d.ts.map +1 -1
- package/dist/tools/agreement-types.js +23 -11
- package/dist/tools/agreement-types.js.map +1 -1
- package/dist/tools/agreements.d.ts.map +1 -1
- package/dist/tools/agreements.js +17 -9
- package/dist/tools/agreements.js.map +1 -1
- package/dist/tools/analytics.d.ts.map +1 -1
- package/dist/tools/analytics.js +6 -3
- package/dist/tools/analytics.js.map +1 -1
- package/dist/tools/assets.d.ts.map +1 -1
- package/dist/tools/assets.js +20 -13
- package/dist/tools/assets.js.map +1 -1
- package/dist/tools/audio-files.d.ts.map +1 -1
- package/dist/tools/audio-files.js +5 -3
- package/dist/tools/audio-files.js.map +1 -1
- package/dist/tools/bulk.d.ts.map +1 -1
- package/dist/tools/bulk.js +15 -9
- package/dist/tools/bulk.js.map +1 -1
- package/dist/tools/collaborators.d.ts.map +1 -1
- package/dist/tools/collaborators.js +41 -16
- package/dist/tools/collaborators.js.map +1 -1
- package/dist/tools/comparisons.d.ts.map +1 -1
- package/dist/tools/comparisons.js +2 -1
- package/dist/tools/comparisons.js.map +1 -1
- package/dist/tools/credits.d.ts +4 -3
- package/dist/tools/credits.d.ts.map +1 -1
- package/dist/tools/credits.js +16 -88
- package/dist/tools/credits.js.map +1 -1
- package/dist/tools/custody.d.ts.map +1 -1
- package/dist/tools/custody.js +43 -10
- package/dist/tools/custody.js.map +1 -1
- package/dist/tools/dashboard.d.ts.map +1 -1
- package/dist/tools/dashboard.js +22 -19
- package/dist/tools/dashboard.js.map +1 -1
- package/dist/tools/directory.d.ts.map +1 -1
- package/dist/tools/directory.js +7 -4
- package/dist/tools/directory.js.map +1 -1
- package/dist/tools/discovery.d.ts +66 -10
- package/dist/tools/discovery.d.ts.map +1 -1
- package/dist/tools/discovery.js +212 -25
- package/dist/tools/discovery.js.map +1 -1
- package/dist/tools/disputes.d.ts.map +1 -1
- package/dist/tools/disputes.js +3 -0
- package/dist/tools/disputes.js.map +1 -1
- package/dist/tools/documents.d.ts.map +1 -1
- package/dist/tools/documents.js +9 -6
- package/dist/tools/documents.js.map +1 -1
- package/dist/tools/enrichment.d.ts.map +1 -1
- package/dist/tools/enrichment.js +92 -14
- package/dist/tools/enrichment.js.map +1 -1
- package/dist/tools/error-envelope.d.ts +44 -0
- package/dist/tools/error-envelope.d.ts.map +1 -0
- package/dist/tools/error-envelope.js +17 -0
- package/dist/tools/error-envelope.js.map +1 -0
- package/dist/tools/exports.d.ts.map +1 -1
- package/dist/tools/exports.js +24 -9
- package/dist/tools/exports.js.map +1 -1
- package/dist/tools/groups.d.ts.map +1 -1
- package/dist/tools/groups.js +1 -0
- package/dist/tools/groups.js.map +1 -1
- package/dist/tools/import-documents.d.ts.map +1 -1
- package/dist/tools/import-documents.js +3 -2
- package/dist/tools/import-documents.js.map +1 -1
- package/dist/tools/import.d.ts.map +1 -1
- package/dist/tools/import.js +71 -38
- package/dist/tools/import.js.map +1 -1
- package/dist/tools/index.d.ts +53 -4
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +124 -36
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/licensing.d.ts.map +1 -1
- package/dist/tools/licensing.js +6 -2
- package/dist/tools/licensing.js.map +1 -1
- package/dist/tools/memory.d.ts.map +1 -1
- package/dist/tools/memory.js +8 -4
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/metadata.d.ts +7 -1
- package/dist/tools/metadata.d.ts.map +1 -1
- package/dist/tools/metadata.js +31 -2
- package/dist/tools/metadata.js.map +1 -1
- package/dist/tools/multimedia.d.ts.map +1 -1
- package/dist/tools/multimedia.js +7 -3
- package/dist/tools/multimedia.js.map +1 -1
- package/dist/tools/notes.d.ts.map +1 -1
- package/dist/tools/notes.js +9 -6
- package/dist/tools/notes.js.map +1 -1
- package/dist/tools/notifications.d.ts.map +1 -1
- package/dist/tools/notifications.js +16 -27
- package/dist/tools/notifications.js.map +1 -1
- package/dist/tools/people.d.ts.map +1 -1
- package/dist/tools/people.js +8 -5
- package/dist/tools/people.js.map +1 -1
- package/dist/tools/projects.d.ts.map +1 -1
- package/dist/tools/projects.js +16 -12
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/recording-custody.d.ts.map +1 -1
- package/dist/tools/recording-custody.js +9 -5
- package/dist/tools/recording-custody.js.map +1 -1
- package/dist/tools/recording-samples.d.ts.map +1 -1
- package/dist/tools/recording-samples.js +25 -6
- package/dist/tools/recording-samples.js.map +1 -1
- package/dist/tools/recordings.d.ts +10 -0
- package/dist/tools/recordings.d.ts.map +1 -1
- package/dist/tools/recordings.js +32 -19
- package/dist/tools/recordings.js.map +1 -1
- package/dist/tools/recovery-hints.d.ts.map +1 -1
- package/dist/tools/recovery-hints.js +35 -17
- package/dist/tools/recovery-hints.js.map +1 -1
- package/dist/tools/release-rich.js +5 -5
- package/dist/tools/release-rich.js.map +1 -1
- package/dist/tools/releases.d.ts.map +1 -1
- package/dist/tools/releases.js +21 -12
- package/dist/tools/releases.js.map +1 -1
- package/dist/tools/royalties.d.ts.map +1 -1
- package/dist/tools/royalties.js +12 -6
- package/dist/tools/royalties.js.map +1 -1
- package/dist/tools/send.d.ts.map +1 -1
- package/dist/tools/send.js +7 -4
- package/dist/tools/send.js.map +1 -1
- package/dist/tools/sessions.d.ts.map +1 -1
- package/dist/tools/sessions.js +8 -4
- package/dist/tools/sessions.js.map +1 -1
- package/dist/tools/settings.d.ts.map +1 -1
- package/dist/tools/settings.js +10 -4
- package/dist/tools/settings.js.map +1 -1
- package/dist/tools/share-links.d.ts.map +1 -1
- package/dist/tools/share-links.js +7 -3
- package/dist/tools/share-links.js.map +1 -1
- package/dist/tools/share-send.d.ts.map +1 -1
- package/dist/tools/share-send.js +15 -5
- package/dist/tools/share-send.js.map +1 -1
- package/dist/tools/shows.d.ts +31 -0
- package/dist/tools/shows.d.ts.map +1 -0
- package/dist/tools/shows.js +307 -0
- package/dist/tools/shows.js.map +1 -0
- package/dist/tools/skills.d.ts.map +1 -1
- package/dist/tools/skills.js +7 -0
- package/dist/tools/skills.js.map +1 -1
- package/dist/tools/split-sheets.d.ts.map +1 -1
- package/dist/tools/split-sheets.js +19 -12
- package/dist/tools/split-sheets.js.map +1 -1
- package/dist/tools/statements.js +2 -2
- package/dist/tools/statements.js.map +1 -1
- package/dist/tools/storage-config.d.ts.map +1 -1
- package/dist/tools/storage-config.js +5 -3
- package/dist/tools/storage-config.js.map +1 -1
- package/dist/tools/subscription.d.ts +69 -19
- package/dist/tools/subscription.d.ts.map +1 -1
- package/dist/tools/subscription.js +98 -255
- package/dist/tools/subscription.js.map +1 -1
- package/dist/tools/sync-placements.d.ts.map +1 -1
- package/dist/tools/sync-placements.js +10 -5
- package/dist/tools/sync-placements.js.map +1 -1
- package/dist/tools/telegram.d.ts.map +1 -1
- package/dist/tools/telegram.js +16 -24
- package/dist/tools/telegram.js.map +1 -1
- package/dist/tools/users.d.ts.map +1 -1
- package/dist/tools/users.js +12 -6
- package/dist/tools/users.js.map +1 -1
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +13 -10
- package/dist/tools/works.js.map +1 -1
- package/package.json +7 -3
- package/server.json +2 -2
- package/.claude/settings.local.json +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/tools/dashboard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/tools/dashboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory.d.ts","sourceRoot":"","sources":["../../src/tools/directory.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"directory.d.ts","sourceRoot":"","sources":["../../src/tools/directory.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1D,qBAAa,cAAc;IACzB,OAAO,CAAC,IAAI,CAAa;gBAEb,IAAI,EAAE,UAAU;IAI5B,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;YAoE3D,iBAAiB;CAuDhC"}
|
package/dist/tools/directory.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Copyright (c) 2025-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
import {
|
|
2
|
+
import { formatSuccess } from "@withpica/mcp-utils";
|
|
3
|
+
import { typedError } from "./error-envelope.js";
|
|
3
4
|
export class DirectoryTools {
|
|
4
5
|
pica;
|
|
5
6
|
constructor(pica) {
|
|
@@ -100,9 +101,11 @@ export class DirectoryTools {
|
|
|
100
101
|
updates[field] = Boolean(args[field]);
|
|
101
102
|
}
|
|
102
103
|
if (Object.keys(updates).length === 0) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
104
|
+
// typedError, not formatAsText({error}): the latter has no `isError`, so
|
|
105
|
+
// the dispatcher and the client read a refusal as a SUCCESS whose payload
|
|
106
|
+
// happens to contain the word "error", and mcp_audit_log.error_code is
|
|
107
|
+
// NULL. See ./error-envelope.ts.
|
|
108
|
+
return typedError("VALIDATION_ERROR", "No settings to update. Provide at least one setting field.");
|
|
106
109
|
}
|
|
107
110
|
const result = await this.pica.directory.updateSettings(updates);
|
|
108
111
|
const status = result.opted_in ? "discoverable" : "private";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory.js","sourceRoot":"","sources":["../../src/tools/directory.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAQ7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"directory.js","sourceRoot":"","sources":["../../src/tools/directory.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,11 +28,39 @@ interface CategoryDefinition {
|
|
|
28
28
|
* are grandfathered in `scripts/mcp-tool-lint-baseline.json` for retrofit.
|
|
29
29
|
*/
|
|
30
30
|
export declare const CATEGORIES: Record<string, CategoryDefinition>;
|
|
31
|
+
/**
|
|
32
|
+
* Naive English singular of a search token.
|
|
33
|
+
*
|
|
34
|
+
* A wrong stem is NOT free. An `-es` strip turns `notes` into `not` — and
|
|
35
|
+
* `pica_notes_*` are in CATEGORIES with `notes` as their domain segment, so
|
|
36
|
+
* every query containing the ordinary English word "not" ("works not
|
|
37
|
+
* registered") scored a +6 domain hit on the notes family. The same rule
|
|
38
|
+
* stems `releases`→`releas`, which the query word `release` can never match,
|
|
39
|
+
* defeating the feature in the other direction. Both shipped on 2026-08-24
|
|
40
|
+
* and are pinned by the singularise unit tests.
|
|
41
|
+
*
|
|
42
|
+
* The rules, in order:
|
|
43
|
+
* - `ies` → `y` (categories → category)
|
|
44
|
+
* - `s` → "" unless the token ends `ss`/`us`/`is`, none of which is an
|
|
45
|
+
* English plural (address, status, analysis stay put)
|
|
46
|
+
*
|
|
47
|
+
* There is deliberately NO `-es` rule. Every domain segment in CATEGORIES is a
|
|
48
|
+
* plain `-s` plural (works, notes, releases, documents, statements, credits,
|
|
49
|
+
* shows…), so `-es` would only ever misfire: it cannot tell `releas+es` from
|
|
50
|
+
* `release+s`, and the wrong branch (`releas`) is one a query word can never
|
|
51
|
+
* reach. `boxes` therefore stems to `boxe` rather than `box` — harmless,
|
|
52
|
+
* because both sides of every comparison run through this same function.
|
|
53
|
+
*
|
|
54
|
+
* Exported for direct unit assertion in
|
|
55
|
+
* `src/__tests__/tools/discovery-ranking.test.ts` — the stem is load-bearing
|
|
56
|
+
* enough that it needs testing without a whole registry behind it.
|
|
57
|
+
*/
|
|
58
|
+
export declare function singularise(token: string): string;
|
|
31
59
|
export declare class DiscoveryTools {
|
|
32
60
|
private executeToolFn;
|
|
33
61
|
private getToolDef;
|
|
34
62
|
/**
|
|
35
|
-
* Registered tool names, for
|
|
63
|
+
* Registered tool names, for TOOL_NOT_FOUND near-match suggestions.
|
|
36
64
|
* Optional so existing constructions keep compiling; without it the
|
|
37
65
|
* unknown-tool envelope simply carries no suggestions.
|
|
38
66
|
*/
|
|
@@ -43,18 +71,33 @@ export declare class DiscoveryTools {
|
|
|
43
71
|
metadata?: ToolMetadata;
|
|
44
72
|
} | undefined,
|
|
45
73
|
/**
|
|
46
|
-
* Registered tool names, for
|
|
74
|
+
* Registered tool names, for TOOL_NOT_FOUND near-match suggestions.
|
|
47
75
|
* Optional so existing constructions keep compiling; without it the
|
|
48
76
|
* unknown-tool envelope simply carries no suggestions.
|
|
49
77
|
*/
|
|
50
78
|
listToolNames?: (() => string[]) | undefined);
|
|
51
79
|
/**
|
|
52
|
-
* Rank registered tool names
|
|
53
|
-
*
|
|
80
|
+
* Rank registered tool names against a hallucinated or mistyped one.
|
|
81
|
+
*
|
|
82
|
+
* ChatGPT callers routinely invent tool names
|
|
54
83
|
* (`pica_releases_attach_track_by_identifier`, `pica_credit_add`, …) and
|
|
55
84
|
* retry variations instead of consulting pica_tool_details — 26 opaque
|
|
56
85
|
* dispatcher errors in 14 days. Naming the closest real tools breaks that
|
|
57
86
|
* guess-loop.
|
|
87
|
+
*
|
|
88
|
+
* Token overlap alone was not enough: `pica_works_inspekt` overlaps every
|
|
89
|
+
* `pica_works_*` tool on exactly one token, so the top-3 slice fell back to
|
|
90
|
+
* registration order and could drop the obvious answer. Edit distance
|
|
91
|
+
* breaks that tie — pinned by "ranks the nearest EDIT-distance name first"
|
|
92
|
+
* in `src/__tests__/tools/discovery.test.ts`.
|
|
93
|
+
*
|
|
94
|
+
* Deprecated aliases are excluded. The candidate pool is
|
|
95
|
+
* `[...this.tools.keys()]` (index.ts, where DiscoveryTools is constructed),
|
|
96
|
+
* which includes the hidden alias clones `expandAliases` registers — so a
|
|
97
|
+
* typo one letter off an alias (`pica_releases_lists`) was answered with the
|
|
98
|
+
* alias (`pica_releases_list`, removal_target 2.96.0) ranked above its own
|
|
99
|
+
* canonical. Steering a confused caller onto a name we are trying to retire
|
|
100
|
+
* is the opposite of what this envelope is for.
|
|
58
101
|
*/
|
|
59
102
|
private suggestToolNames;
|
|
60
103
|
getTools(): Array<{
|
|
@@ -64,12 +107,25 @@ export declare class DiscoveryTools {
|
|
|
64
107
|
private buildDiscoverTool;
|
|
65
108
|
/**
|
|
66
109
|
* Rank tools against a plain-language job description. Case-insensitive
|
|
67
|
-
* token scoring (no external deps):
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
110
|
+
* token scoring (no external deps):
|
|
111
|
+
*
|
|
112
|
+
* +6 the token matches the tool's DOMAIN segment (the `_`-separated
|
|
113
|
+
* segment after `pica_` — `recordings` in `pica_recordings_delete`)
|
|
114
|
+
* +3 the token matches any other `_`-separated segment of the name
|
|
115
|
+
* +1 the token appears anywhere in the searchable text (name +
|
|
116
|
+
* description/triggers + category name + category description)
|
|
117
|
+
*
|
|
118
|
+
* Both sides are compared through {@link singularise}, so "recording" and
|
|
119
|
+
* "recordings" are one term. Tools are deduped across cross-listed
|
|
120
|
+
* categories (keeping the highest-scoring category), sorted by score then
|
|
121
|
+
* name, and capped.
|
|
122
|
+
*
|
|
123
|
+
* The domain weight exists because the VERB is shared by dozens of tools
|
|
124
|
+
* and the ENTITY is what the user actually named: before it, "delete a
|
|
125
|
+
* recording" led with `pica_agreement_types_delete` and "read a document"
|
|
126
|
+
* put `pica_notifications_mark_read` above every documents tool. Both are
|
|
127
|
+
* pinned in `src/__tests__/tools/discovery-ranking.test.ts`, alongside the
|
|
128
|
+
* flagship isrc-from-spotify pin the weighting must not disturb.
|
|
73
129
|
*/
|
|
74
130
|
private matchDiscovery;
|
|
75
131
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/tools/discovery.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACX,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/tools/discovery.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACX,MAAM,YAAY,CAAC;AAsCpB,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AASD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAgyBzD,CAAC;AAoBF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjD;AAsCD,qBAAa,cAAc;IAEvB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,UAAU;IAOlB;;;;OAIG;IACH,OAAO,CAAC,aAAa,CAAC;gBAjBd,aAAa,EAAE,CACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,CAAC,EAAE,mBAAmB,KACtB,OAAO,CAAC,UAAU,CAAC,EAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAC7B;QACE,UAAU,EAAE,cAAc,CAAC;QAC3B,QAAQ,EAAE,YAAY,CAAC;QACvB,QAAQ,CAAC,EAAE,YAAY,CAAC;KACzB,GACD,SAAS;IACb;;;;OAIG;IACK,aAAa,CAAC,GAAE,MAAM,MAAM,EAAE,aAAA;IAGxC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,gBAAgB;IAqCxB,QAAQ,IAAI,KAAK,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IAQzE,OAAO,CAAC,iBAAiB;IAwHzB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,cAAc;IAuDtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,oBAAoB;IA8H5B,OAAO,CAAC,eAAe;IA8FvB,OAAO,CAAC,gBAAgB;CA4WzB"}
|
package/dist/tools/discovery.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
// Copyright (c) 2025-2026 Withpica Ltd. All rights reserved.
|
|
2
|
+
// `deriveAnnotations` is a value import back into ./index.js, which imports
|
|
3
|
+
// this module — an ESM cycle. Safe because it is a hoisted function
|
|
4
|
+
// declaration: it is initialised before either module body runs, and it is
|
|
5
|
+
// only ever CALLED from inside a method here. Do not convert it to a const
|
|
6
|
+
// arrow function on the other side.
|
|
7
|
+
import { deriveAnnotations } from "./index.js";
|
|
8
|
+
import { getAliasFor } from "./deprecations.js";
|
|
2
9
|
import { getToolMetadata } from "./metadata.js";
|
|
3
10
|
import { RECOVERY_HINTS } from "./recovery-hints.js";
|
|
4
11
|
const SCHEMA_VERSION = "2026.1";
|
|
@@ -811,6 +818,11 @@ export const CATEGORIES = {
|
|
|
811
818
|
],
|
|
812
819
|
depends_on: [],
|
|
813
820
|
},
|
|
821
|
+
shows: {
|
|
822
|
+
description: "log live shows and tour credits, and confirm setlist matches against your catalogue",
|
|
823
|
+
tools: ["pica_log_show", "pica_shows_query", "pica_setlist_match"],
|
|
824
|
+
depends_on: [],
|
|
825
|
+
},
|
|
814
826
|
};
|
|
815
827
|
/**
|
|
816
828
|
* Operational metadata defaults for pica_tool_details responses.
|
|
@@ -827,13 +839,84 @@ function getOperationalMeta(toolName) {
|
|
|
827
839
|
}
|
|
828
840
|
return {};
|
|
829
841
|
}
|
|
842
|
+
/**
|
|
843
|
+
* Naive English singular of a search token.
|
|
844
|
+
*
|
|
845
|
+
* A wrong stem is NOT free. An `-es` strip turns `notes` into `not` — and
|
|
846
|
+
* `pica_notes_*` are in CATEGORIES with `notes` as their domain segment, so
|
|
847
|
+
* every query containing the ordinary English word "not" ("works not
|
|
848
|
+
* registered") scored a +6 domain hit on the notes family. The same rule
|
|
849
|
+
* stems `releases`→`releas`, which the query word `release` can never match,
|
|
850
|
+
* defeating the feature in the other direction. Both shipped on 2026-08-24
|
|
851
|
+
* and are pinned by the singularise unit tests.
|
|
852
|
+
*
|
|
853
|
+
* The rules, in order:
|
|
854
|
+
* - `ies` → `y` (categories → category)
|
|
855
|
+
* - `s` → "" unless the token ends `ss`/`us`/`is`, none of which is an
|
|
856
|
+
* English plural (address, status, analysis stay put)
|
|
857
|
+
*
|
|
858
|
+
* There is deliberately NO `-es` rule. Every domain segment in CATEGORIES is a
|
|
859
|
+
* plain `-s` plural (works, notes, releases, documents, statements, credits,
|
|
860
|
+
* shows…), so `-es` would only ever misfire: it cannot tell `releas+es` from
|
|
861
|
+
* `release+s`, and the wrong branch (`releas`) is one a query word can never
|
|
862
|
+
* reach. `boxes` therefore stems to `boxe` rather than `box` — harmless,
|
|
863
|
+
* because both sides of every comparison run through this same function.
|
|
864
|
+
*
|
|
865
|
+
* Exported for direct unit assertion in
|
|
866
|
+
* `src/__tests__/tools/discovery-ranking.test.ts` — the stem is load-bearing
|
|
867
|
+
* enough that it needs testing without a whole registry behind it.
|
|
868
|
+
*/
|
|
869
|
+
export function singularise(token) {
|
|
870
|
+
if (token.length > 3 && token.endsWith("ies"))
|
|
871
|
+
return `${token.slice(0, -3)}y`;
|
|
872
|
+
if (token.length > 2 && token.endsWith("s") && !/(?:ss|us|is)$/.test(token))
|
|
873
|
+
return token.slice(0, -1);
|
|
874
|
+
return token;
|
|
875
|
+
}
|
|
876
|
+
/** The token plus its stem, deduped — matching on either is a hit. */
|
|
877
|
+
function tokenVariants(token) {
|
|
878
|
+
const stem = singularise(token);
|
|
879
|
+
return stem === token ? [token] : [token, stem];
|
|
880
|
+
}
|
|
881
|
+
/**
|
|
882
|
+
* Levenshtein distance, two rolling rows. Tool names are short (< 60 chars)
|
|
883
|
+
* and the registry is a few hundred entries, so the O(n·m) form is well
|
|
884
|
+
* inside budget for a once-per-failed-dispatch call.
|
|
885
|
+
*/
|
|
886
|
+
function editDistance(a, b) {
|
|
887
|
+
if (a === b)
|
|
888
|
+
return 0;
|
|
889
|
+
if (a.length === 0)
|
|
890
|
+
return b.length;
|
|
891
|
+
if (b.length === 0)
|
|
892
|
+
return a.length;
|
|
893
|
+
let prev = Array.from({ length: b.length + 1 }, (_, i) => i);
|
|
894
|
+
let curr = new Array(b.length + 1);
|
|
895
|
+
for (let i = 1; i <= a.length; i++) {
|
|
896
|
+
curr[0] = i;
|
|
897
|
+
for (let j = 1; j <= b.length; j++) {
|
|
898
|
+
const substitution = prev[j - 1] + (a[i - 1] === b[j - 1] ? 0 : 1);
|
|
899
|
+
curr[j] = Math.min(prev[j] + 1, curr[j - 1] + 1, substitution);
|
|
900
|
+
}
|
|
901
|
+
[prev, curr] = [curr, prev];
|
|
902
|
+
}
|
|
903
|
+
return prev[b.length];
|
|
904
|
+
}
|
|
905
|
+
/** Length of the common leading substring — a typo late in a name keeps it. */
|
|
906
|
+
function sharedPrefixLength(a, b) {
|
|
907
|
+
const max = Math.min(a.length, b.length);
|
|
908
|
+
let i = 0;
|
|
909
|
+
while (i < max && a[i] === b[i])
|
|
910
|
+
i++;
|
|
911
|
+
return i;
|
|
912
|
+
}
|
|
830
913
|
export class DiscoveryTools {
|
|
831
914
|
executeToolFn;
|
|
832
915
|
getToolDef;
|
|
833
916
|
listToolNames;
|
|
834
917
|
constructor(executeToolFn, getToolDef,
|
|
835
918
|
/**
|
|
836
|
-
* Registered tool names, for
|
|
919
|
+
* Registered tool names, for TOOL_NOT_FOUND near-match suggestions.
|
|
837
920
|
* Optional so existing constructions keep compiling; without it the
|
|
838
921
|
* unknown-tool envelope simply carries no suggestions.
|
|
839
922
|
*/
|
|
@@ -843,33 +926,55 @@ export class DiscoveryTools {
|
|
|
843
926
|
this.listToolNames = listToolNames;
|
|
844
927
|
}
|
|
845
928
|
/**
|
|
846
|
-
* Rank registered tool names
|
|
847
|
-
*
|
|
929
|
+
* Rank registered tool names against a hallucinated or mistyped one.
|
|
930
|
+
*
|
|
931
|
+
* ChatGPT callers routinely invent tool names
|
|
848
932
|
* (`pica_releases_attach_track_by_identifier`, `pica_credit_add`, …) and
|
|
849
933
|
* retry variations instead of consulting pica_tool_details — 26 opaque
|
|
850
934
|
* dispatcher errors in 14 days. Naming the closest real tools breaks that
|
|
851
935
|
* guess-loop.
|
|
936
|
+
*
|
|
937
|
+
* Token overlap alone was not enough: `pica_works_inspekt` overlaps every
|
|
938
|
+
* `pica_works_*` tool on exactly one token, so the top-3 slice fell back to
|
|
939
|
+
* registration order and could drop the obvious answer. Edit distance
|
|
940
|
+
* breaks that tie — pinned by "ranks the nearest EDIT-distance name first"
|
|
941
|
+
* in `src/__tests__/tools/discovery.test.ts`.
|
|
942
|
+
*
|
|
943
|
+
* Deprecated aliases are excluded. The candidate pool is
|
|
944
|
+
* `[...this.tools.keys()]` (index.ts, where DiscoveryTools is constructed),
|
|
945
|
+
* which includes the hidden alias clones `expandAliases` registers — so a
|
|
946
|
+
* typo one letter off an alias (`pica_releases_lists`) was answered with the
|
|
947
|
+
* alias (`pica_releases_list`, removal_target 2.96.0) ranked above its own
|
|
948
|
+
* canonical. Steering a confused caller onto a name we are trying to retire
|
|
949
|
+
* is the opposite of what this envelope is for.
|
|
852
950
|
*/
|
|
853
951
|
suggestToolNames(input) {
|
|
854
|
-
const candidates = this.listToolNames?.() ?? [];
|
|
952
|
+
const candidates = (this.listToolNames?.() ?? []).filter((name) => getAliasFor(name) === undefined);
|
|
855
953
|
const tokens = new Set(input
|
|
856
954
|
.replace(/^pica_/, "")
|
|
857
955
|
.split("_")
|
|
858
956
|
.filter(Boolean));
|
|
859
957
|
if (tokens.size === 0 || candidates.length === 0)
|
|
860
958
|
return [];
|
|
861
|
-
return candidates
|
|
959
|
+
return (candidates
|
|
862
960
|
.map((name) => ({
|
|
863
961
|
name,
|
|
864
962
|
overlap: name
|
|
865
963
|
.replace(/^pica_/, "")
|
|
866
964
|
.split("_")
|
|
867
965
|
.filter((t) => tokens.has(t)).length,
|
|
966
|
+
distance: editDistance(name, input),
|
|
967
|
+
prefix: sharedPrefixLength(name, input),
|
|
868
968
|
}))
|
|
869
|
-
|
|
870
|
-
|
|
969
|
+
// A near-miss on spelling shares no whole token, so distance and prefix
|
|
970
|
+
// have to be able to admit a candidate on their own.
|
|
971
|
+
.filter((c) => c.overlap > 0 || c.distance <= 3 || c.prefix >= 8)
|
|
972
|
+
.sort((a, b) => b.overlap - a.overlap ||
|
|
973
|
+
a.distance - b.distance ||
|
|
974
|
+
b.prefix - a.prefix ||
|
|
975
|
+
a.name.localeCompare(b.name))
|
|
871
976
|
.slice(0, 3)
|
|
872
|
-
.map((c) => c.name);
|
|
977
|
+
.map((c) => c.name));
|
|
873
978
|
}
|
|
874
979
|
getTools() {
|
|
875
980
|
return [
|
|
@@ -979,18 +1084,32 @@ export class DiscoveryTools {
|
|
|
979
1084
|
}
|
|
980
1085
|
/**
|
|
981
1086
|
* Rank tools against a plain-language job description. Case-insensitive
|
|
982
|
-
* token scoring (no external deps):
|
|
983
|
-
*
|
|
984
|
-
*
|
|
985
|
-
*
|
|
986
|
-
*
|
|
987
|
-
*
|
|
1087
|
+
* token scoring (no external deps):
|
|
1088
|
+
*
|
|
1089
|
+
* +6 the token matches the tool's DOMAIN segment (the `_`-separated
|
|
1090
|
+
* segment after `pica_` — `recordings` in `pica_recordings_delete`)
|
|
1091
|
+
* +3 the token matches any other `_`-separated segment of the name
|
|
1092
|
+
* +1 the token appears anywhere in the searchable text (name +
|
|
1093
|
+
* description/triggers + category name + category description)
|
|
1094
|
+
*
|
|
1095
|
+
* Both sides are compared through {@link singularise}, so "recording" and
|
|
1096
|
+
* "recordings" are one term. Tools are deduped across cross-listed
|
|
1097
|
+
* categories (keeping the highest-scoring category), sorted by score then
|
|
1098
|
+
* name, and capped.
|
|
1099
|
+
*
|
|
1100
|
+
* The domain weight exists because the VERB is shared by dozens of tools
|
|
1101
|
+
* and the ENTITY is what the user actually named: before it, "delete a
|
|
1102
|
+
* recording" led with `pica_agreement_types_delete` and "read a document"
|
|
1103
|
+
* put `pica_notifications_mark_read` above every documents tool. Both are
|
|
1104
|
+
* pinned in `src/__tests__/tools/discovery-ranking.test.ts`, alongside the
|
|
1105
|
+
* flagship isrc-from-spotify pin the weighting must not disturb.
|
|
988
1106
|
*/
|
|
989
1107
|
matchDiscovery(query) {
|
|
990
1108
|
const tokens = query
|
|
991
1109
|
.toLowerCase()
|
|
992
1110
|
.split(/[^a-z0-9]+/)
|
|
993
|
-
.filter((t) => t.length >= 2)
|
|
1111
|
+
.filter((t) => t.length >= 2)
|
|
1112
|
+
.map((t) => ({ raw: t, variants: tokenVariants(t) }));
|
|
994
1113
|
if (tokens.length === 0)
|
|
995
1114
|
return [];
|
|
996
1115
|
// Best score per tool, plus the category that produced it.
|
|
@@ -1001,16 +1120,22 @@ export class DiscoveryTools {
|
|
|
1001
1120
|
const def = this.getToolDef(toolName)?.definition;
|
|
1002
1121
|
const metadata = getToolMetadata(toolName);
|
|
1003
1122
|
const toolDesc = def?.description ?? metadata?.display_name ?? "";
|
|
1004
|
-
const
|
|
1123
|
+
const segments = toolName
|
|
1005
1124
|
.replace(/^pica_/, "")
|
|
1006
1125
|
.split("_")
|
|
1007
|
-
.filter(Boolean)
|
|
1126
|
+
.filter(Boolean);
|
|
1127
|
+
// The entity the tool acts on. `pica_upload` has no verb segment, so
|
|
1128
|
+
// its only segment is both domain and verb — that is correct here.
|
|
1129
|
+
const domainVariants = new Set(segments.length > 0 ? tokenVariants(segments[0]) : []);
|
|
1130
|
+
const nameVariants = new Set(segments.flatMap(tokenVariants));
|
|
1008
1131
|
const haystack = `${toolName.replace(/_/g, " ")} ${toolDesc} ${catText}`.toLowerCase();
|
|
1009
1132
|
let score = 0;
|
|
1010
|
-
for (const
|
|
1011
|
-
if (
|
|
1133
|
+
for (const { variants } of tokens) {
|
|
1134
|
+
if (variants.some((v) => domainVariants.has(v)))
|
|
1135
|
+
score += 6;
|
|
1136
|
+
else if (variants.some((v) => nameVariants.has(v)))
|
|
1012
1137
|
score += 3;
|
|
1013
|
-
if (haystack.includes(
|
|
1138
|
+
if (variants.some((v) => haystack.includes(v)))
|
|
1014
1139
|
score += 1;
|
|
1015
1140
|
}
|
|
1016
1141
|
if (score === 0)
|
|
@@ -1161,6 +1286,10 @@ export class DiscoveryTools {
|
|
|
1161
1286
|
// Collect all recovery hints for this tool (all error codes)
|
|
1162
1287
|
const hints = RECOVERY_HINTS[toolName] ?? [];
|
|
1163
1288
|
const definition = registered?.definition ?? null;
|
|
1289
|
+
// A deprecated alias is registered as a clone of its canonical, so the
|
|
1290
|
+
// schema/description below ARE the canonical's — the agent gets a working
|
|
1291
|
+
// tool plus the name it should migrate to, not a bare refusal.
|
|
1292
|
+
const deprecation = getAliasFor(toolName);
|
|
1164
1293
|
// Gate visibility (audit P1 #6): surface the authority tier + required
|
|
1165
1294
|
// scope so an agent knows BEFORE calling whether it holds the grant, and
|
|
1166
1295
|
// an explicit note when the scope is unreachable for a standard agent
|
|
@@ -1192,7 +1321,30 @@ export class DiscoveryTools {
|
|
|
1192
1321
|
`{"tool": "${toolName}", "args": { ...arguments per the schema below }}. ` +
|
|
1193
1322
|
"Never tell the user the tool is unavailable — pica_execute executes every tool returned here.",
|
|
1194
1323
|
schema: definition?.inputSchema ?? null,
|
|
1195
|
-
|
|
1324
|
+
...(definition?.outputSchema
|
|
1325
|
+
? { outputSchema: definition.outputSchema }
|
|
1326
|
+
: {}),
|
|
1327
|
+
// Derived, never the raw declaration: most tools declare no
|
|
1328
|
+
// `annotations` at all, so reading the declaration answered `null` for
|
|
1329
|
+
// the large majority of registered tools while listTools() answered real
|
|
1330
|
+
// hints for the same tool (measured 2026-08-24). deriveAnnotations() is
|
|
1331
|
+
// the one derivation both surfaces read — see index.ts and
|
|
1332
|
+
// src/__tests__/tools/tool-details-contract.test.ts.
|
|
1333
|
+
annotations: definition ? deriveAnnotations(definition) : null,
|
|
1334
|
+
// Every category key this tool is listed under. Cross-listed tools
|
|
1335
|
+
// (ADR-226 Decision 12) appear in more than one, and an agent that
|
|
1336
|
+
// arrived via one category otherwise cannot see the others.
|
|
1337
|
+
discovery_categories: Object.entries(CATEGORIES)
|
|
1338
|
+
.filter(([, cat]) => cat.tools.includes(toolName))
|
|
1339
|
+
.map(([key]) => key),
|
|
1340
|
+
...(deprecation
|
|
1341
|
+
? {
|
|
1342
|
+
deprecated: {
|
|
1343
|
+
use: deprecation.canonical,
|
|
1344
|
+
removal_target: deprecation.removal_target,
|
|
1345
|
+
},
|
|
1346
|
+
}
|
|
1347
|
+
: {}),
|
|
1196
1348
|
tier,
|
|
1197
1349
|
required_scope: requiredScope,
|
|
1198
1350
|
...(callableNote ? { callable_note: callableNote } : {}),
|
|
@@ -1264,7 +1416,13 @@ export class DiscoveryTools {
|
|
|
1264
1416
|
readOnlyHint: false,
|
|
1265
1417
|
destructiveHint: false,
|
|
1266
1418
|
idempotentHint: false,
|
|
1267
|
-
openWorldHint
|
|
1419
|
+
// TRUE, matching the `annotationOverrides.openWorldHint` above.
|
|
1420
|
+
// This read `false` until 2026-08-24 while the override next to it
|
|
1421
|
+
// said `true` — the override wins, so the declaration was never
|
|
1422
|
+
// published and only misled the next reader of this file. The
|
|
1423
|
+
// dispatcher wraps every tool, including the ones that email an
|
|
1424
|
+
// external recipient, so `true` is the honest value.
|
|
1425
|
+
openWorldHint: true,
|
|
1268
1426
|
},
|
|
1269
1427
|
},
|
|
1270
1428
|
executor: async (args, ctx) => {
|
|
@@ -1337,17 +1495,41 @@ export class DiscoveryTools {
|
|
|
1337
1495
|
// hallucinated variations instead of consulting the catalog.
|
|
1338
1496
|
// structuredContent mirrors the envelope so telemetry and
|
|
1339
1497
|
// structured-content-aware clients get the code without parsing text.
|
|
1498
|
+
//
|
|
1499
|
+
// The code is TOOL_NOT_FOUND, matching pica_tool_details' answer for
|
|
1500
|
+
// the same question and the ADR-149 Phase 5bcd design. It read
|
|
1501
|
+
// UNKNOWN_TOOL from 2026-07-03 until 2026-08-24; `suggestions` is kept
|
|
1502
|
+
// beside the new `did_you_mean` for callers written against that
|
|
1503
|
+
// shape. Both are asserted in
|
|
1504
|
+
// `src/__tests__/tools/discovery.test.ts`.
|
|
1505
|
+
//
|
|
1506
|
+
// `did_you_mean` is ALWAYS present, empty array included: a key that
|
|
1507
|
+
// only sometimes exists forces every caller to branch on `undefined`
|
|
1508
|
+
// before it can branch on "no suggestions".
|
|
1509
|
+
//
|
|
1510
|
+
// `retry_safe` and `retry_eligible` carry the same fact under two
|
|
1511
|
+
// names, deliberately. `retry_eligible` is the ADR-180 envelope field
|
|
1512
|
+
// that the five sibling envelopes in this file all emit, so dropping
|
|
1513
|
+
// it here alone would make one dispatcher error shaped unlike the
|
|
1514
|
+
// rest; `retry_safe` is the name the same fact wears in
|
|
1515
|
+
// `pica_tool_details.metadata.retry_safe`, which is where an agent
|
|
1516
|
+
// reads it everywhere else. Unifying the file on one key is a
|
|
1517
|
+
// separate change — do it for all six envelopes or none.
|
|
1340
1518
|
if (!this.getToolDef(toolName)) {
|
|
1341
1519
|
const suggestions = this.suggestToolNames(toolName);
|
|
1342
1520
|
const envelope = {
|
|
1343
|
-
|
|
1521
|
+
error: "TOOL_NOT_FOUND",
|
|
1522
|
+
error_code: "TOOL_NOT_FOUND",
|
|
1344
1523
|
tool: toolName,
|
|
1345
1524
|
message: `${toolName} is not a registered tool.` +
|
|
1346
1525
|
(suggestions.length > 0
|
|
1347
1526
|
? ` Closest real tools: ${suggestions.join(", ")}.`
|
|
1348
1527
|
: "") +
|
|
1349
1528
|
" Call pica_tool_details on the intended tool for its exact name and schema, or pica_discover to browse categories — do not guess tool names or argument shapes.",
|
|
1350
|
-
|
|
1529
|
+
did_you_mean: suggestions,
|
|
1530
|
+
suggestions,
|
|
1531
|
+
next_tool: "pica_discover",
|
|
1532
|
+
retry_safe: false,
|
|
1351
1533
|
retry_eligible: false,
|
|
1352
1534
|
};
|
|
1353
1535
|
return {
|
|
@@ -1355,9 +1537,14 @@ export class DiscoveryTools {
|
|
|
1355
1537
|
{ type: "text", text: JSON.stringify(envelope, null, 2) },
|
|
1356
1538
|
],
|
|
1357
1539
|
structuredContent: {
|
|
1540
|
+
error: envelope.error,
|
|
1358
1541
|
error_code: envelope.error_code,
|
|
1359
1542
|
error_message: envelope.message,
|
|
1360
|
-
|
|
1543
|
+
tool: toolName,
|
|
1544
|
+
did_you_mean: suggestions,
|
|
1545
|
+
suggestions,
|
|
1546
|
+
next_tool: "pica_discover",
|
|
1547
|
+
retry_safe: false,
|
|
1361
1548
|
},
|
|
1362
1549
|
isError: true,
|
|
1363
1550
|
};
|