@plurnk/plurnk-mcp 1.8.0 → 1.9.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/README.md +26 -22
- package/SPEC.md +103 -69
- package/dist/McpExecutor.d.ts +25 -2
- package/dist/McpExecutor.d.ts.map +1 -1
- package/dist/McpExecutor.js +9 -3
- package/dist/McpExecutor.js.map +1 -1
- package/dist/Module.d.ts +68 -11
- package/dist/Module.d.ts.map +1 -1
- package/dist/Module.js +362 -658
- package/dist/Module.js.map +1 -1
- package/dist/capabilityMatrix.js +2 -2
- package/dist/capabilityMatrix.js.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +10 -1
- package/dist/client.js.map +1 -1
- package/dist/extensionChannel.d.ts.map +1 -1
- package/dist/extensionChannel.js +18 -4
- package/dist/extensionChannel.js.map +1 -1
- package/package.json +4 -4
package/dist/Module.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { RuntimeAvailability, RuntimeDecl } from "@plurnk/plurnk-execs";
|
|
2
2
|
import type { FindStatement, RepresentationPreparationRequest, RepresentationPreparationResult, SchemeCtx, SchemeResult } from "@plurnk/plurnk-schemes";
|
|
3
|
+
import { type FunctionalityCandidate, type FunctionalityDiscoverQuery, type JsonSchema, type ProblemDetails } from "@plurnk/plurnk-contracts";
|
|
3
4
|
import McpExecutor from "./McpExecutor.ts";
|
|
4
5
|
interface RuntimeSchemeFacet {
|
|
5
6
|
claims(pathname: string): boolean;
|
|
@@ -18,23 +19,79 @@ type ModuleActionContext = {
|
|
|
18
19
|
} | {
|
|
19
20
|
readonly scope: "workspace";
|
|
20
21
|
readonly workspaceId: number;
|
|
22
|
+
} | {
|
|
23
|
+
readonly scope: "worker";
|
|
24
|
+
readonly workspaceId: number;
|
|
25
|
+
readonly workerId: number;
|
|
26
|
+
};
|
|
27
|
+
interface WorkerIdentity {
|
|
28
|
+
readonly workspaceId: number;
|
|
29
|
+
readonly workerId: number;
|
|
30
|
+
}
|
|
31
|
+
type Outcome = {
|
|
32
|
+
readonly state: "active";
|
|
33
|
+
readonly detail?: object;
|
|
34
|
+
} | {
|
|
35
|
+
readonly state: "unavailable";
|
|
36
|
+
readonly problem: ProblemDetails;
|
|
37
|
+
} | {
|
|
38
|
+
readonly state: "authorization-required";
|
|
39
|
+
readonly authorization: {
|
|
40
|
+
readonly url: string;
|
|
41
|
+
};
|
|
21
42
|
};
|
|
43
|
+
interface Preparation extends WorkerIdentity {
|
|
44
|
+
readonly enabled: ReadonlyMap<string, object>;
|
|
45
|
+
readonly previous: unknown | null;
|
|
46
|
+
readonly failure: "publish-unavailable" | "reject";
|
|
47
|
+
readonly force?: string;
|
|
48
|
+
retain(): () => void;
|
|
49
|
+
}
|
|
50
|
+
interface Prepared {
|
|
51
|
+
readonly runtimes: readonly RuntimeRegistration[];
|
|
52
|
+
readonly documents: readonly {
|
|
53
|
+
readonly pathname: string;
|
|
54
|
+
readonly content: string;
|
|
55
|
+
}[];
|
|
56
|
+
readonly outcomes: ReadonlyMap<string, Outcome>;
|
|
57
|
+
readonly snapshot: unknown;
|
|
58
|
+
commit(): Promise<void>;
|
|
59
|
+
abort(): Promise<void>;
|
|
60
|
+
}
|
|
61
|
+
interface FunctionalityAdapter {
|
|
62
|
+
readonly family: string;
|
|
63
|
+
readonly namespaceOwner: string;
|
|
64
|
+
readonly summary: string;
|
|
65
|
+
readonly definitionSchema: JsonSchema;
|
|
66
|
+
available(identity: WorkerIdentity): Promise<readonly {
|
|
67
|
+
alias: string;
|
|
68
|
+
definition: object;
|
|
69
|
+
enabled: boolean;
|
|
70
|
+
}[]>;
|
|
71
|
+
discover(query: FunctionalityDiscoverQuery, identity: WorkerIdentity): Promise<readonly FunctionalityCandidate[]>;
|
|
72
|
+
admit(input: unknown, identity: WorkerIdentity): Promise<{
|
|
73
|
+
alias: string;
|
|
74
|
+
definition: object;
|
|
75
|
+
}>;
|
|
76
|
+
prepare(preparation: Preparation): Promise<Prepared>;
|
|
77
|
+
teardown(snapshot: unknown, identity: WorkerIdentity): Promise<void>;
|
|
78
|
+
}
|
|
79
|
+
interface FunctionalityFamilyHandle {
|
|
80
|
+
invoke(verb: "list" | "discover" | "add" | "enable" | "disable" | "remove", params: unknown, identity: WorkerIdentity): Promise<{
|
|
81
|
+
readonly status: number;
|
|
82
|
+
readonly body: unknown;
|
|
83
|
+
}>;
|
|
84
|
+
refresh(identity: WorkerIdentity): Promise<void>;
|
|
85
|
+
}
|
|
22
86
|
interface ModuleSetupSeam {
|
|
23
87
|
registerModuleAction(registration: {
|
|
24
88
|
readonly name: string;
|
|
25
|
-
readonly scope: "worldless" | "workspace";
|
|
89
|
+
readonly scope: "worldless" | "workspace" | "worker";
|
|
90
|
+
readonly inputSchema: JsonSchema;
|
|
91
|
+
readonly outputSchema: JsonSchema;
|
|
26
92
|
readonly handler: (params: Readonly<Record<string, unknown>>, context: ModuleActionContext) => unknown | Promise<unknown>;
|
|
27
93
|
}): void;
|
|
28
|
-
|
|
29
|
-
hydrate(workspaceId: number): void | Promise<void>;
|
|
30
|
-
}): void;
|
|
31
|
-
readWorkspaceModuleState(workspaceId: number, namespaceOwner: string): Promise<unknown | null>;
|
|
32
|
-
replaceWorkspaceCapabilities(replacement: {
|
|
33
|
-
readonly workspaceId: number;
|
|
34
|
-
readonly namespaceOwner: string;
|
|
35
|
-
readonly state: unknown | null;
|
|
36
|
-
readonly runtimes: readonly RuntimeRegistration[];
|
|
37
|
-
}): Promise<void>;
|
|
94
|
+
registerFunctionalityAdapter(adapter: FunctionalityAdapter): FunctionalityFamilyHandle;
|
|
38
95
|
}
|
|
39
96
|
export interface ModuleOptions {
|
|
40
97
|
readonly env?: NodeJS.ProcessEnv;
|
package/dist/Module.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../src/Module.ts"],"names":[],"mappings":"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"}
|