@withpica/mcp-server 2.6.1 → 2.7.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/dist/config.d.ts +25 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +12 -30
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/pica-sdk.d.ts +1231 -0
- package/dist/pica-sdk.d.ts.map +1 -0
- package/dist/pica-sdk.js +1403 -0
- package/dist/pica-sdk.js.map +1 -0
- package/dist/prompts/index.d.ts +64 -64
- package/dist/prompts/index.js +24 -24
- package/dist/prompts/index.js.map +1 -1
- package/dist/resources/index.d.ts +53 -55
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +54 -133
- package/dist/resources/index.js.map +1 -1
- package/dist/server.d.ts +32 -49
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +14 -103
- package/dist/server.js.map +1 -1
- package/dist/tools/index.d.ts +37 -83
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +84 -442
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/people.d.ts +47 -39
- package/dist/tools/people.d.ts.map +1 -1
- package/dist/tools/people.js +109 -148
- package/dist/tools/people.js.map +1 -1
- package/dist/tools/recordings.d.ts +9 -9
- package/dist/tools/recordings.d.ts.map +1 -1
- package/dist/tools/recordings.js +48 -121
- package/dist/tools/recordings.js.map +1 -1
- package/dist/tools/search.d.ts +21 -21
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +3 -3
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/works.d.ts +47 -39
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +116 -201
- package/dist/tools/works.js.map +1 -1
- package/dist/utils/errors.d.ts +29 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +115 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/formatting.d.ts +82 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +125 -0
- package/dist/utils/formatting.js.map +1 -0
- package/package.json +1 -1
- package/server.json +3 -3
- package/dist/__mocks__/mppx-mcp-sdk-server.d.ts +0 -6
- package/dist/__mocks__/mppx-mcp-sdk-server.d.ts.map +0 -1
- package/dist/__mocks__/mppx-mcp-sdk-server.js +0 -6
- package/dist/__mocks__/mppx-mcp-sdk-server.js.map +0 -1
- package/dist/__mocks__/mppx-server.d.ts +0 -12
- package/dist/__mocks__/mppx-server.d.ts.map +0 -1
- package/dist/__mocks__/mppx-server.js +0 -12
- package/dist/__mocks__/mppx-server.js.map +0 -1
- package/dist/apps/download.d.ts +0 -2
- package/dist/apps/download.d.ts.map +0 -1
- package/dist/apps/download.js +0 -125
- package/dist/apps/download.js.map +0 -1
- package/dist/apps/generated/shared-bundle.d.ts +0 -5
- package/dist/apps/generated/shared-bundle.d.ts.map +0 -1
- package/dist/apps/generated/shared-bundle.js +0 -7
- package/dist/apps/generated/shared-bundle.js.map +0 -1
- package/dist/apps/shared.d.ts +0 -15
- package/dist/apps/shared.d.ts.map +0 -1
- package/dist/apps/shared.js +0 -480
- package/dist/apps/shared.js.map +0 -1
- package/dist/apps/upload.d.ts +0 -2
- package/dist/apps/upload.d.ts.map +0 -1
- package/dist/apps/upload.js +0 -280
- package/dist/apps/upload.js.map +0 -1
- package/dist/resources/llms-primer.d.ts +0 -2
- package/dist/resources/llms-primer.d.ts.map +0 -1
- package/dist/resources/llms-primer.js +0 -68
- package/dist/resources/llms-primer.js.map +0 -1
- package/dist/server-instructions.d.ts +0 -9
- package/dist/server-instructions.d.ts.map +0 -1
- package/dist/server-instructions.js +0 -34
- package/dist/server-instructions.js.map +0 -1
- package/dist/tools/agreement-types.d.ts +0 -27
- package/dist/tools/agreement-types.d.ts.map +0 -1
- package/dist/tools/agreement-types.js +0 -387
- package/dist/tools/agreement-types.js.map +0 -1
- package/dist/tools/agreements.d.ts +0 -20
- package/dist/tools/agreements.d.ts.map +0 -1
- package/dist/tools/agreements.js +0 -363
- package/dist/tools/agreements.js.map +0 -1
- package/dist/tools/analytics.d.ts +0 -20
- package/dist/tools/analytics.d.ts.map +0 -1
- package/dist/tools/analytics.js +0 -124
- package/dist/tools/analytics.js.map +0 -1
- package/dist/tools/app-tools.d.ts +0 -21
- package/dist/tools/app-tools.d.ts.map +0 -1
- package/dist/tools/app-tools.js +0 -248
- package/dist/tools/app-tools.js.map +0 -1
- package/dist/tools/assets.d.ts +0 -21
- package/dist/tools/assets.d.ts.map +0 -1
- package/dist/tools/assets.js +0 -441
- package/dist/tools/assets.js.map +0 -1
- package/dist/tools/audio-files.d.ts +0 -20
- package/dist/tools/audio-files.d.ts.map +0 -1
- package/dist/tools/audio-files.js +0 -384
- package/dist/tools/audio-files.js.map +0 -1
- package/dist/tools/auth.d.ts +0 -22
- package/dist/tools/auth.d.ts.map +0 -1
- package/dist/tools/auth.js +0 -210
- package/dist/tools/auth.js.map +0 -1
- package/dist/tools/bulk.d.ts +0 -16
- package/dist/tools/bulk.d.ts.map +0 -1
- package/dist/tools/bulk.js +0 -85
- package/dist/tools/bulk.js.map +0 -1
- package/dist/tools/calendar.d.ts +0 -15
- package/dist/tools/calendar.d.ts.map +0 -1
- package/dist/tools/calendar.js +0 -67
- package/dist/tools/calendar.js.map +0 -1
- package/dist/tools/collaborators.d.ts +0 -17
- package/dist/tools/collaborators.d.ts.map +0 -1
- package/dist/tools/collaborators.js +0 -131
- package/dist/tools/collaborators.js.map +0 -1
- package/dist/tools/comparisons.d.ts +0 -22
- package/dist/tools/comparisons.d.ts.map +0 -1
- package/dist/tools/comparisons.js +0 -78
- package/dist/tools/comparisons.js.map +0 -1
- package/dist/tools/credits.d.ts +0 -17
- package/dist/tools/credits.d.ts.map +0 -1
- package/dist/tools/credits.js +0 -312
- package/dist/tools/credits.js.map +0 -1
- package/dist/tools/dashboard.d.ts +0 -19
- package/dist/tools/dashboard.d.ts.map +0 -1
- package/dist/tools/dashboard.js +0 -146
- package/dist/tools/dashboard.js.map +0 -1
- package/dist/tools/directory.d.ts +0 -15
- package/dist/tools/directory.d.ts.map +0 -1
- package/dist/tools/directory.js +0 -106
- package/dist/tools/directory.js.map +0 -1
- package/dist/tools/discovery.d.ts +0 -28
- package/dist/tools/discovery.d.ts.map +0 -1
- package/dist/tools/discovery.js +0 -560
- package/dist/tools/discovery.js.map +0 -1
- package/dist/tools/disputes.d.ts +0 -18
- package/dist/tools/disputes.d.ts.map +0 -1
- package/dist/tools/disputes.js +0 -61
- package/dist/tools/disputes.js.map +0 -1
- package/dist/tools/documents.d.ts +0 -15
- package/dist/tools/documents.d.ts.map +0 -1
- package/dist/tools/documents.js +0 -36
- package/dist/tools/documents.js.map +0 -1
- package/dist/tools/duplicates.d.ts +0 -16
- package/dist/tools/duplicates.d.ts.map +0 -1
- package/dist/tools/duplicates.js +0 -87
- package/dist/tools/duplicates.js.map +0 -1
- package/dist/tools/enrichment.d.ts +0 -20
- package/dist/tools/enrichment.d.ts.map +0 -1
- package/dist/tools/enrichment.js +0 -154
- package/dist/tools/enrichment.js.map +0 -1
- package/dist/tools/exports.d.ts +0 -19
- package/dist/tools/exports.d.ts.map +0 -1
- package/dist/tools/exports.js +0 -175
- package/dist/tools/exports.js.map +0 -1
- package/dist/tools/import-documents.d.ts +0 -21
- package/dist/tools/import-documents.d.ts.map +0 -1
- package/dist/tools/import-documents.js +0 -203
- package/dist/tools/import-documents.js.map +0 -1
- package/dist/tools/import.d.ts +0 -30
- package/dist/tools/import.d.ts.map +0 -1
- package/dist/tools/import.js +0 -455
- package/dist/tools/import.js.map +0 -1
- package/dist/tools/integrations.d.ts +0 -15
- package/dist/tools/integrations.d.ts.map +0 -1
- package/dist/tools/integrations.js +0 -100
- package/dist/tools/integrations.js.map +0 -1
- package/dist/tools/licensing.d.ts +0 -40
- package/dist/tools/licensing.d.ts.map +0 -1
- package/dist/tools/licensing.js +0 -431
- package/dist/tools/licensing.js.map +0 -1
- package/dist/tools/memory.d.ts +0 -21
- package/dist/tools/memory.d.ts.map +0 -1
- package/dist/tools/memory.js +0 -116
- package/dist/tools/memory.js.map +0 -1
- package/dist/tools/metadata.d.ts +0 -15
- package/dist/tools/metadata.d.ts.map +0 -1
- package/dist/tools/metadata.js +0 -1069
- package/dist/tools/metadata.js.map +0 -1
- package/dist/tools/multimedia.d.ts +0 -19
- package/dist/tools/multimedia.d.ts.map +0 -1
- package/dist/tools/multimedia.js +0 -291
- package/dist/tools/multimedia.js.map +0 -1
- package/dist/tools/notes.d.ts +0 -21
- package/dist/tools/notes.d.ts.map +0 -1
- package/dist/tools/notes.js +0 -108
- package/dist/tools/notes.js.map +0 -1
- package/dist/tools/notifications.d.ts +0 -17
- package/dist/tools/notifications.d.ts.map +0 -1
- package/dist/tools/notifications.js +0 -117
- package/dist/tools/notifications.js.map +0 -1
- package/dist/tools/projects.d.ts +0 -19
- package/dist/tools/projects.d.ts.map +0 -1
- package/dist/tools/projects.js +0 -140
- package/dist/tools/projects.js.map +0 -1
- package/dist/tools/publishers.d.ts +0 -16
- package/dist/tools/publishers.d.ts.map +0 -1
- package/dist/tools/publishers.js +0 -69
- package/dist/tools/publishers.js.map +0 -1
- package/dist/tools/purchases.d.ts +0 -15
- package/dist/tools/purchases.d.ts.map +0 -1
- package/dist/tools/purchases.js +0 -63
- package/dist/tools/purchases.js.map +0 -1
- package/dist/tools/recovery-hints.d.ts +0 -14
- package/dist/tools/recovery-hints.d.ts.map +0 -1
- package/dist/tools/recovery-hints.js +0 -277
- package/dist/tools/recovery-hints.js.map +0 -1
- package/dist/tools/releases.d.ts +0 -18
- package/dist/tools/releases.d.ts.map +0 -1
- package/dist/tools/releases.js +0 -128
- package/dist/tools/releases.js.map +0 -1
- package/dist/tools/royalties.d.ts +0 -23
- package/dist/tools/royalties.d.ts.map +0 -1
- package/dist/tools/royalties.js +0 -257
- package/dist/tools/royalties.js.map +0 -1
- package/dist/tools/send.d.ts +0 -17
- package/dist/tools/send.d.ts.map +0 -1
- package/dist/tools/send.js +0 -185
- package/dist/tools/send.js.map +0 -1
- package/dist/tools/sessions.d.ts +0 -18
- package/dist/tools/sessions.d.ts.map +0 -1
- package/dist/tools/sessions.js +0 -115
- package/dist/tools/sessions.js.map +0 -1
- package/dist/tools/settings.d.ts +0 -18
- package/dist/tools/settings.d.ts.map +0 -1
- package/dist/tools/settings.js +0 -96
- package/dist/tools/settings.js.map +0 -1
- package/dist/tools/share-links.d.ts +0 -19
- package/dist/tools/share-links.d.ts.map +0 -1
- package/dist/tools/share-links.js +0 -121
- package/dist/tools/share-links.js.map +0 -1
- package/dist/tools/split-sheets.d.ts +0 -25
- package/dist/tools/split-sheets.d.ts.map +0 -1
- package/dist/tools/split-sheets.js +0 -307
- package/dist/tools/split-sheets.js.map +0 -1
- package/dist/tools/team.d.ts +0 -22
- package/dist/tools/team.d.ts.map +0 -1
- package/dist/tools/team.js +0 -134
- package/dist/tools/team.js.map +0 -1
- package/dist/tools/telegram.d.ts +0 -20
- package/dist/tools/telegram.d.ts.map +0 -1
- package/dist/tools/telegram.js +0 -88
- package/dist/tools/telegram.js.map +0 -1
- package/dist/tools/uploads.d.ts +0 -17
- package/dist/tools/uploads.d.ts.map +0 -1
- package/dist/tools/uploads.js +0 -156
- package/dist/tools/uploads.js.map +0 -1
package/dist/resources/index.js
CHANGED
|
@@ -1,123 +1,78 @@
|
|
|
1
1
|
// Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
|
|
2
|
-
import { ResourceError } from "
|
|
2
|
+
import { ResourceError } from "../utils/errors.js";
|
|
3
3
|
import { readFileSync } from "fs";
|
|
4
4
|
import { join } from "path";
|
|
5
5
|
import { WITHPICA_PRIMER } from "./llms-primer.js";
|
|
6
|
-
import { UPLOAD_HTML } from "../apps/upload.js";
|
|
7
|
-
import { DOWNLOAD_HTML } from "../apps/download.js";
|
|
8
|
-
import { PICA_STORAGE_CONNECT_DOMAINS } from "../apps/shared.js";
|
|
9
6
|
export class ResourceRegistry {
|
|
10
7
|
pica;
|
|
11
|
-
|
|
12
|
-
constructor(pica, config) {
|
|
8
|
+
constructor(pica) {
|
|
13
9
|
this.pica = pica;
|
|
14
|
-
this.config = config;
|
|
15
10
|
}
|
|
16
11
|
/**
|
|
17
12
|
* List all available resources
|
|
18
13
|
*/
|
|
19
14
|
listResources() {
|
|
20
|
-
|
|
15
|
+
return [
|
|
21
16
|
{
|
|
22
|
-
uri: "
|
|
23
|
-
name: "
|
|
24
|
-
description: "
|
|
17
|
+
uri: "llms://primer",
|
|
18
|
+
name: "PICA Domain Primer",
|
|
19
|
+
description: "Plain-language description of PICA's domain model, entity relationships, and recommended agent workflows. Read this first.",
|
|
25
20
|
mimeType: "text/markdown",
|
|
26
21
|
},
|
|
22
|
+
{
|
|
23
|
+
uri: "works://list",
|
|
24
|
+
name: "All Works",
|
|
25
|
+
description: "Complete list of musical works in the catalog",
|
|
26
|
+
mimeType: "application/json",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
uri: "people://list",
|
|
30
|
+
name: "All People",
|
|
31
|
+
description: "Complete list of people (artists, composers, etc.)",
|
|
32
|
+
mimeType: "application/json",
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
uri: "recordings://list",
|
|
36
|
+
name: "All Recordings",
|
|
37
|
+
description: "Complete list of recordings",
|
|
38
|
+
mimeType: "application/json",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
uri: "catalog://stats",
|
|
42
|
+
name: "Catalog Statistics",
|
|
43
|
+
description: "Statistics and metrics about the catalog",
|
|
44
|
+
mimeType: "application/json",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
uri: "catalog://health",
|
|
48
|
+
name: "Catalog Health (PICA Score)",
|
|
49
|
+
description: "PICA Score — composite legibility index (0-100) with grade, 4-pillar breakdown, and actionable suggestions",
|
|
50
|
+
mimeType: "application/json",
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
uri: "workspace://context",
|
|
54
|
+
name: "Workspace Context",
|
|
55
|
+
description: "Aggregated workspace orientation — org info, catalog stats, health score, and top priorities in one call",
|
|
56
|
+
mimeType: "application/json",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
uri: "events://recent",
|
|
60
|
+
name: "Recent Events",
|
|
61
|
+
description: "Recent webhook delivery events — what happened in this workspace recently",
|
|
62
|
+
mimeType: "application/json",
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
uri: "api://openapi",
|
|
66
|
+
name: "OpenAPI Specification",
|
|
67
|
+
description: "OpenAPI 3.1 spec for the top 20 PICA API endpoints — works, people, recordings, agreements, credits, search, health",
|
|
68
|
+
mimeType: "text/yaml",
|
|
69
|
+
},
|
|
27
70
|
];
|
|
28
|
-
if (this.config?.lobbyMode || !this.pica) {
|
|
29
|
-
return resources;
|
|
30
|
-
}
|
|
31
|
-
resources.push({
|
|
32
|
-
uri: "llms://primer",
|
|
33
|
-
name: "PICA Domain Primer",
|
|
34
|
-
description: "Plain-language description of PICA's domain model, entity relationships, and recommended agent workflows. Read this first.",
|
|
35
|
-
mimeType: "text/markdown",
|
|
36
|
-
}, {
|
|
37
|
-
uri: "works://list",
|
|
38
|
-
name: "All Works",
|
|
39
|
-
description: "Complete list of musical works in the catalog",
|
|
40
|
-
mimeType: "application/json",
|
|
41
|
-
}, {
|
|
42
|
-
uri: "people://list",
|
|
43
|
-
name: "All People",
|
|
44
|
-
description: "Complete list of people (artists, composers, etc.)",
|
|
45
|
-
mimeType: "application/json",
|
|
46
|
-
}, {
|
|
47
|
-
uri: "recordings://list",
|
|
48
|
-
name: "All Recordings",
|
|
49
|
-
description: "Complete list of recordings",
|
|
50
|
-
mimeType: "application/json",
|
|
51
|
-
}, {
|
|
52
|
-
uri: "catalog://stats",
|
|
53
|
-
name: "Catalog Statistics",
|
|
54
|
-
description: "Statistics and metrics about the catalog",
|
|
55
|
-
mimeType: "application/json",
|
|
56
|
-
}, {
|
|
57
|
-
uri: "catalog://health",
|
|
58
|
-
name: "Catalog Health (PICA Score)",
|
|
59
|
-
description: "PICA Score — composite legibility index (0-100) with grade, 4-pillar breakdown, and actionable suggestions",
|
|
60
|
-
mimeType: "application/json",
|
|
61
|
-
}, {
|
|
62
|
-
uri: "workspace://context",
|
|
63
|
-
name: "Workspace Context",
|
|
64
|
-
description: "Aggregated workspace orientation — org info, catalog stats, health score, and top priorities in one call",
|
|
65
|
-
mimeType: "application/json",
|
|
66
|
-
}, {
|
|
67
|
-
uri: "events://recent",
|
|
68
|
-
name: "Recent Events",
|
|
69
|
-
description: "Recent webhook delivery events — what happened in this workspace recently",
|
|
70
|
-
mimeType: "application/json",
|
|
71
|
-
}, {
|
|
72
|
-
uri: "api://openapi",
|
|
73
|
-
name: "OpenAPI Specification",
|
|
74
|
-
description: "OpenAPI 3.1 spec for the top 20 PICA API endpoints — works, people, recordings, agreements, credits, search, health",
|
|
75
|
-
mimeType: "text/yaml",
|
|
76
|
-
}, {
|
|
77
|
-
uri: "ui://pica/upload",
|
|
78
|
-
name: "Upload Files",
|
|
79
|
-
description: "Generic file upload card — drop zone for audio, photos, documents, anything",
|
|
80
|
-
mimeType: "text/html;profile=mcp-app",
|
|
81
|
-
}, {
|
|
82
|
-
uri: "ui://pica/download",
|
|
83
|
-
name: "Download File",
|
|
84
|
-
description: "File download card — shows file metadata and a download button",
|
|
85
|
-
mimeType: "text/html;profile=mcp-app",
|
|
86
|
-
});
|
|
87
|
-
return resources;
|
|
88
71
|
}
|
|
89
72
|
/**
|
|
90
73
|
* Read a resource by URI
|
|
91
74
|
*/
|
|
92
75
|
async readResource(uri) {
|
|
93
|
-
switch (uri) {
|
|
94
|
-
case "pica://welcome":
|
|
95
|
-
return {
|
|
96
|
-
contents: [
|
|
97
|
-
{
|
|
98
|
-
uri: "pica://welcome",
|
|
99
|
-
mimeType: "text/markdown",
|
|
100
|
-
text: "# welcome to PICA\n\n" +
|
|
101
|
-
"PICA manages your music catalog — works, recordings, credits, agreements, and more.\n\n" +
|
|
102
|
-
"## get started\n\n" +
|
|
103
|
-
'Say **"sign me in"** and provide your email address. ' +
|
|
104
|
-
"You'll receive a magic link — click it, and all tools unlock automatically.\n\n" +
|
|
105
|
-
"No API key needed. No config files. Just talk.\n\n" +
|
|
106
|
-
"## what you can do after signing in\n\n" +
|
|
107
|
-
"- Add and manage works, recordings, and credits\n" +
|
|
108
|
-
"- Enrich metadata from Spotify, MusicBrainz, MLC, and more\n" +
|
|
109
|
-
"- Generate exports (CSV, NRO, CAR reports)\n" +
|
|
110
|
-
"- Track agreements and splits\n" +
|
|
111
|
-
"- Search your catalog and get health reports\n",
|
|
112
|
-
},
|
|
113
|
-
],
|
|
114
|
-
};
|
|
115
|
-
default:
|
|
116
|
-
break;
|
|
117
|
-
}
|
|
118
|
-
if (!this.pica) {
|
|
119
|
-
throw new ResourceError(`Resource not available in lobby mode: ${uri}`);
|
|
120
|
-
}
|
|
121
76
|
switch (uri) {
|
|
122
77
|
case "llms://primer":
|
|
123
78
|
return {
|
|
@@ -145,40 +100,6 @@ export class ResourceRegistry {
|
|
|
145
100
|
return await this.getRecentEvents();
|
|
146
101
|
case "api://openapi":
|
|
147
102
|
return this.getOpenAPISpec();
|
|
148
|
-
case "ui://pica/upload":
|
|
149
|
-
return {
|
|
150
|
-
contents: [
|
|
151
|
-
{
|
|
152
|
-
uri: "ui://pica/upload",
|
|
153
|
-
mimeType: "text/html;profile=mcp-app",
|
|
154
|
-
text: UPLOAD_HTML,
|
|
155
|
-
_meta: {
|
|
156
|
-
ui: {
|
|
157
|
-
csp: {
|
|
158
|
-
connectDomains: PICA_STORAGE_CONNECT_DOMAINS,
|
|
159
|
-
},
|
|
160
|
-
},
|
|
161
|
-
},
|
|
162
|
-
},
|
|
163
|
-
],
|
|
164
|
-
};
|
|
165
|
-
case "ui://pica/download":
|
|
166
|
-
return {
|
|
167
|
-
contents: [
|
|
168
|
-
{
|
|
169
|
-
uri: "ui://pica/download",
|
|
170
|
-
mimeType: "text/html;profile=mcp-app",
|
|
171
|
-
text: DOWNLOAD_HTML,
|
|
172
|
-
_meta: {
|
|
173
|
-
ui: {
|
|
174
|
-
csp: {
|
|
175
|
-
connectDomains: PICA_STORAGE_CONNECT_DOMAINS,
|
|
176
|
-
},
|
|
177
|
-
},
|
|
178
|
-
},
|
|
179
|
-
},
|
|
180
|
-
],
|
|
181
|
-
};
|
|
182
103
|
default:
|
|
183
104
|
throw new ResourceError(`Resource not found: ${uri}`);
|
|
184
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAS7D,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAS7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAW,MAAM,MAAM,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAmBnD,MAAM,OAAO,gBAAgB;IACnB,IAAI,CAAa;IAEzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO;YACL;gBACE,GAAG,EAAE,eAAe;gBACpB,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EACT,4HAA4H;gBAC9H,QAAQ,EAAE,eAAe;aAC1B;YACD;gBACE,GAAG,EAAE,cAAc;gBACnB,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,+CAA+C;gBAC5D,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,eAAe;gBACpB,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,oDAAoD;gBACjE,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,mBAAmB;gBACxB,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,6BAA6B;gBAC1C,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,iBAAiB;gBACtB,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,0CAA0C;gBACvD,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,kBAAkB;gBACvB,IAAI,EAAE,6BAA6B;gBACnC,WAAW,EACT,4GAA4G;gBAC9G,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,qBAAqB;gBAC1B,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EACT,0GAA0G;gBAC5G,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,iBAAiB;gBACtB,IAAI,EAAE,eAAe;gBACrB,WAAW,EACT,2EAA2E;gBAC7E,QAAQ,EAAE,kBAAkB;aAC7B;YACD;gBACE,GAAG,EAAE,eAAe;gBACpB,IAAI,EAAE,uBAAuB;gBAC7B,WAAW,EACT,qHAAqH;gBACvH,QAAQ,EAAE,WAAW;aACtB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,GAAW;QAC5B,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,eAAe;gBAClB,OAAO;oBACL,QAAQ,EAAE;wBACR;4BACE,GAAG,EAAE,eAAe;4BACpB,QAAQ,EAAE,eAAe;4BACzB,IAAI,EAAE,eAAe;yBACtB;qBACF;iBACF,CAAC;YAEJ,KAAK,cAAc;gBACjB,OAAO,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAEnC,KAAK,eAAe;gBAClB,OAAO,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAEpC,KAAK,mBAAmB;gBACtB,OAAO,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAExC,KAAK,iBAAiB;gBACpB,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAEtC,KAAK,kBAAkB;gBACrB,OAAO,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAEvC,KAAK,qBAAqB;gBACxB,OAAO,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAE1C,KAAK,iBAAiB;gBACpB,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAEtC,KAAK,eAAe;gBAClB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;YAE/B;gBACE,MAAM,IAAI,aAAa,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,2CAA2C;QAC3C,MAAM,aAAa,GAAG;YACpB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,0BAA0B,CAAC;SAChD,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpD,OAAO;oBACL,QAAQ,EAAE;wBACR;4BACE,GAAG,EAAE,eAAe;4BACpB,QAAQ,EAAE,WAAW;4BACrB,IAAI,EAAE,WAAW;yBAClB;qBACF;iBACF,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;YAClB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,aAAa,CACrB,2DAA2D,CAC5D,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1D,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,cAAc;oBACnB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,KAAK,EAAE,KAAK,CAAC,MAAM;wBACnB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BAC1B,EAAE,EAAE,IAAI,CAAC,EAAE;4BACX,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,WAAW,EAAE,IAAI,CAAC,WAAW;4BAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;yBACxC,CAAC,CAAC;qBACJ,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa;QACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5D,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,eAAe;oBACpB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,KAAK,EAAE,MAAM,CAAC,MAAM;wBACpB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;4BAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;4BACb,UAAU,EAAE,MAAM,CAAC,UAAU;4BAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;4BAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;4BACnB,IAAI,EAAE,MAAM,CAAC,IAAI;4BACjB,cAAc,EAAE,MAAM,CAAC,cAAc;yBACtC,CAAC,CAAC;qBACJ,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB;QAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpE,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,mBAAmB;oBACxB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,KAAK,EAAE,UAAU,CAAC,MAAM;wBACxB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;4BACzC,EAAE,EAAE,SAAS,CAAC,EAAE;4BAChB,KAAK,EAAE,SAAS,CAAC,KAAK;4BACtB,IAAI,EAAE,SAAS,CAAC,IAAI;4BACpB,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;4BAC5C,OAAO,EAAE,SAAS,CAAC,OAAO;yBAC3B,CAAC,CAAC;qBACJ,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe;QAC3B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;SAC3C,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE;gBACR,WAAW,EAAE,KAAK,CAAC,MAAM;gBACzB,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,gBAAgB,EAAE,UAAU,CAAC,MAAM;gBACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACvC;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM;gBACnD,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM;gBACtD,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM;gBAC7C,OAAO,EAAE;oBACP,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,aAAa,CAAC;yBAC5D,MAAM;oBACT,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,aAAa,CAAC;yBAC5D,MAAM;oBACT,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,YAAY,CAAC,CAAC,MAAM;oBACpE,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,aAAa,CAAC;yBAC5D,MAAM;iBACV;aACF;YACD,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC,MAAM;gBACpB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM;gBAChD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM;gBAC9C,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,MAAM;aAChE;YACD,UAAU,EAAE;gBACV,KAAK,EAAE,UAAU,CAAC,MAAM;gBACxB,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM;aACnD;SACF,CAAC;QAEF,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,iBAAiB;oBACtB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAE9C,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,kBAAkB;oBACvB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAEvD,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,qBAAqB;oBAC1B,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvC;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAE7D,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,GAAG,EAAE,iBAAiB;oBACtB,QAAQ,EAAE,kBAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACtC;aACF;SACF,CAAC;IACJ,CAAC;CACF"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,52 +1,35 @@
|
|
|
1
1
|
import { ServerConfig } from "./config.js";
|
|
2
2
|
export declare class PicaMcpServer {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
*
|
|
35
|
-
* Transport is selected by environment:
|
|
36
|
-
* - MCP_TRANSPORT=http → HTTP server on MCP_PORT (default 3100)
|
|
37
|
-
* - Otherwise → stdio (default, for Claude Code / Cursor / VS Code)
|
|
38
|
-
*/
|
|
39
|
-
start(): Promise<void>;
|
|
40
|
-
private startStdio;
|
|
41
|
-
private startHttp;
|
|
42
|
-
/**
|
|
43
|
-
* Register protocol handlers on a server instance.
|
|
44
|
-
* Used by both the main server (stdio) and per-request servers (HTTP).
|
|
45
|
-
*/
|
|
46
|
-
private registerHandlers;
|
|
47
|
-
/**
|
|
48
|
-
* Stop the MCP server
|
|
49
|
-
*/
|
|
50
|
-
stop(): Promise<void>;
|
|
3
|
+
private server;
|
|
4
|
+
private pica;
|
|
5
|
+
private toolRegistry;
|
|
6
|
+
private resourceRegistry;
|
|
7
|
+
private promptRegistry;
|
|
8
|
+
private config;
|
|
9
|
+
private httpServer?;
|
|
10
|
+
constructor(config: ServerConfig);
|
|
11
|
+
/**
|
|
12
|
+
* Set up MCP protocol handlers on the main server instance (for stdio)
|
|
13
|
+
*/
|
|
14
|
+
private setupHandlers;
|
|
15
|
+
/**
|
|
16
|
+
* Start the MCP server.
|
|
17
|
+
*
|
|
18
|
+
* Transport is selected by environment:
|
|
19
|
+
* - MCP_TRANSPORT=http → HTTP server on MCP_PORT (default 3100)
|
|
20
|
+
* - Otherwise → stdio (default, for Claude Code / Cursor / VS Code)
|
|
21
|
+
*/
|
|
22
|
+
start(): Promise<void>;
|
|
23
|
+
private startStdio;
|
|
24
|
+
private startHttp;
|
|
25
|
+
/**
|
|
26
|
+
* Register protocol handlers on a server instance.
|
|
27
|
+
* Used by both the main server (stdio) and per-request servers (HTTP).
|
|
28
|
+
*/
|
|
29
|
+
private registerHandlers;
|
|
30
|
+
/**
|
|
31
|
+
* Stop the MCP server
|
|
32
|
+
*/
|
|
33
|
+
stop(): Promise<void>;
|
|
51
34
|
}
|
|
52
|
-
//# sourceMappingURL=server.d.ts.map
|
|
35
|
+
//# sourceMappingURL=server.d.ts.map
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM3C,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAkC;gBAEzC,MAAM,EAAE,YAAY;IAiChC;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAkBd,UAAU;YAKV,SAAS;IAwHvB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA6CxB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAS5B"}
|
package/dist/server.js
CHANGED
|
@@ -8,14 +8,11 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
|
|
|
8
8
|
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
|
|
9
9
|
import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
10
10
|
import { createServer } from "node:http";
|
|
11
|
-
import {
|
|
12
|
-
import { PicaClient } from "@withpica/mcp-sdk";
|
|
11
|
+
import { PicaClient } from "./pica-sdk.js";
|
|
13
12
|
import { ToolRegistry } from "./tools/index.js";
|
|
14
13
|
import { ResourceRegistry } from "./resources/index.js";
|
|
15
14
|
import { PromptRegistry } from "./prompts/index.js";
|
|
16
|
-
import { logError } from "
|
|
17
|
-
import { makeStdioCallerContext, makeHttpAuditFn, McpAuditLogger, } from "@withpica/mcp-utils";
|
|
18
|
-
import { SERVER_INSTRUCTIONS } from "./server-instructions.js";
|
|
15
|
+
import { logError } from "./utils/errors.js";
|
|
19
16
|
export class PicaMcpServer {
|
|
20
17
|
server;
|
|
21
18
|
pica;
|
|
@@ -26,110 +23,29 @@ export class PicaMcpServer {
|
|
|
26
23
|
httpServer;
|
|
27
24
|
constructor(config) {
|
|
28
25
|
this.config = config;
|
|
29
|
-
// Initialize PICA SDK client
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
this.pica = null;
|
|
39
|
-
}
|
|
26
|
+
// Initialize PICA SDK client
|
|
27
|
+
this.pica = new PicaClient({
|
|
28
|
+
apiKey: config.picaApiKey,
|
|
29
|
+
baseUrl: config.picaApiUrl,
|
|
30
|
+
debug: config.debug,
|
|
31
|
+
});
|
|
40
32
|
// Initialize MCP server
|
|
41
33
|
this.server = new Server({
|
|
42
34
|
name: config.serverName,
|
|
43
35
|
version: config.version,
|
|
44
36
|
}, {
|
|
45
37
|
capabilities: {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
// `notifications/resources/list_changed` after sign-in or
|
|
49
|
-
// sign-out hot-swaps the registries. Without this declaration
|
|
50
|
-
// the client won't subscribe to those notifications, and the
|
|
51
|
-
// tool surface stays frozen at the lobby pair forever.
|
|
52
|
-
tools: { listChanged: true },
|
|
53
|
-
resources: { listChanged: true },
|
|
38
|
+
tools: {},
|
|
39
|
+
resources: {},
|
|
54
40
|
prompts: {},
|
|
55
41
|
},
|
|
56
|
-
instructions: SERVER_INSTRUCTIONS,
|
|
57
42
|
});
|
|
58
|
-
// Initialize registries
|
|
59
|
-
this.toolRegistry = new ToolRegistry(this.pica
|
|
60
|
-
this.resourceRegistry = new ResourceRegistry(this.pica
|
|
43
|
+
// Initialize registries
|
|
44
|
+
this.toolRegistry = new ToolRegistry(this.pica);
|
|
45
|
+
this.resourceRegistry = new ResourceRegistry(this.pica);
|
|
61
46
|
this.promptRegistry = new PromptRegistry();
|
|
62
|
-
// Wire audit logger — fire-and-forget POST to /api/mcp/audit
|
|
63
|
-
this.toolRegistry.setAuditLogger(new McpAuditLogger(makeHttpAuditFn({
|
|
64
|
-
baseUrl: config.picaApiUrl,
|
|
65
|
-
apiKey: config.picaApiKey,
|
|
66
|
-
})));
|
|
67
47
|
this.setupHandlers();
|
|
68
48
|
}
|
|
69
|
-
/**
|
|
70
|
-
* Reinitialize server with new credentials (called after successful auth)
|
|
71
|
-
*/
|
|
72
|
-
reinitialize(apiKey) {
|
|
73
|
-
this.pica = new PicaClient({
|
|
74
|
-
apiKey,
|
|
75
|
-
baseUrl: this.config.picaApiUrl,
|
|
76
|
-
debug: this.config.debug,
|
|
77
|
-
});
|
|
78
|
-
this.config = { ...this.config, picaApiKey: apiKey, lobbyMode: false };
|
|
79
|
-
this.toolRegistry = new ToolRegistry(this.pica, this.config, (key) => this.reinitialize(key), makeStdioCallerContext(apiKey), () => this.signOut());
|
|
80
|
-
this.toolRegistry.setAuditLogger(new McpAuditLogger(makeHttpAuditFn({ baseUrl: this.config.picaApiUrl, apiKey })));
|
|
81
|
-
this.resourceRegistry = new ResourceRegistry(this.pica, this.config);
|
|
82
|
-
console.error("[MCP Server] Reinitialized with new credentials");
|
|
83
|
-
// Tell the client the tool + resource lists have changed so it
|
|
84
|
-
// re-fetches and discovers the full authenticated surface. Without
|
|
85
|
-
// these notifications the client keeps showing the lobby pair
|
|
86
|
-
// (sign_in/sign_out) even though sign-in succeeded — the in-memory
|
|
87
|
-
// registries on the server know about the 168 catalog tools but
|
|
88
|
-
// the client never asks for them again.
|
|
89
|
-
//
|
|
90
|
-
// Fire-and-forget: a failure to notify is a soft error (the user
|
|
91
|
-
// can manually trigger another tool call which will work since the
|
|
92
|
-
// server's internal state is correct), so we log and continue
|
|
93
|
-
// rather than throwing inside the callback path that just rebuilt
|
|
94
|
-
// the registries.
|
|
95
|
-
this.server.sendToolListChanged().catch((err) => {
|
|
96
|
-
console.error("[MCP Server] Failed to send tools/list_changed notification:", err);
|
|
97
|
-
});
|
|
98
|
-
this.server.sendResourceListChanged().catch((err) => {
|
|
99
|
-
console.error("[MCP Server] Failed to send resources/list_changed notification:", err);
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Reset the server back to lobby mode (called after sign_out).
|
|
104
|
-
* Mirrors reinitialize() but in reverse: clears the PicaClient,
|
|
105
|
-
* sets lobbyMode=true, and rebuilds the tool/resource registries so
|
|
106
|
-
* the next tools/list call returns only [pica_sign_in, pica_sign_out].
|
|
107
|
-
*
|
|
108
|
-
* Without this the server would keep advertising the full authenticated
|
|
109
|
-
* tool surface after sign_out until the process is restarted, which
|
|
110
|
-
* lies about what's actually available — every privileged tool call
|
|
111
|
-
* would still fail at the API layer (no PicaClient), but the surface
|
|
112
|
-
* itself shouldn't pretend the catalog is reachable.
|
|
113
|
-
*/
|
|
114
|
-
signOut() {
|
|
115
|
-
this.pica = null;
|
|
116
|
-
this.config = { ...this.config, picaApiKey: "", lobbyMode: true };
|
|
117
|
-
this.toolRegistry = new ToolRegistry(this.pica, this.config, (key) => this.reinitialize(key), makeStdioCallerContext(""), () => this.signOut());
|
|
118
|
-
this.toolRegistry.setAuditLogger(new McpAuditLogger(makeHttpAuditFn({ baseUrl: this.config.picaApiUrl, apiKey: "" })));
|
|
119
|
-
this.resourceRegistry = new ResourceRegistry(this.pica, this.config);
|
|
120
|
-
console.error("[MCP Server] Reset to lobby mode after sign_out");
|
|
121
|
-
// Same listChanged story as reinitialize() — without these the
|
|
122
|
-
// client keeps advertising the full authenticated surface to the
|
|
123
|
-
// model after sign-out, and any tool call would fail at the API
|
|
124
|
-
// layer with a confusing "no credentials" error instead of the
|
|
125
|
-
// model saying "you need to sign in first."
|
|
126
|
-
this.server.sendToolListChanged().catch((err) => {
|
|
127
|
-
console.error("[MCP Server] Failed to send tools/list_changed notification (signOut):", err);
|
|
128
|
-
});
|
|
129
|
-
this.server.sendResourceListChanged().catch((err) => {
|
|
130
|
-
console.error("[MCP Server] Failed to send resources/list_changed notification (signOut):", err);
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
49
|
/**
|
|
134
50
|
* Set up MCP protocol handlers on the main server instance (for stdio)
|
|
135
51
|
*/
|
|
@@ -154,7 +70,6 @@ export class PicaMcpServer {
|
|
|
154
70
|
console.error("[MCP Server] PICA MCP Server started");
|
|
155
71
|
console.error(`[MCP Server] Version: ${this.config.version}`);
|
|
156
72
|
console.error(`[MCP Server] Transport: ${mode === "http" ? "HTTP" : "stdio"}`);
|
|
157
|
-
console.error(`[MCP Server] Mode: ${this.config.lobbyMode ? "lobby (sign in to connect)" : "authenticated"}`);
|
|
158
73
|
console.error(`[MCP Server] API URL: ${this.config.picaApiUrl}`);
|
|
159
74
|
console.error("[MCP Server] Ready to accept connections");
|
|
160
75
|
}
|
|
@@ -183,11 +98,7 @@ export class PicaMcpServer {
|
|
|
183
98
|
const token = authHeader.startsWith("Bearer ")
|
|
184
99
|
? authHeader.slice(7)
|
|
185
100
|
: "";
|
|
186
|
-
|
|
187
|
-
const secretBuf = Buffer.from(httpSecret);
|
|
188
|
-
const isValid = tokenBuf.length === secretBuf.length &&
|
|
189
|
-
timingSafeEqual(tokenBuf, secretBuf);
|
|
190
|
-
if (!isValid) {
|
|
101
|
+
if (token !== httpSecret) {
|
|
191
102
|
res.writeHead(401, { "Content-Type": "application/json" });
|
|
192
103
|
res.end(JSON.stringify({ error: "Unauthorized" }));
|
|
193
104
|
return;
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|