@enfyra/mcp-server 0.2.51 → 0.2.53
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 +4 -1
- package/dist/lib/config-local-adapters.d.ts +11 -1
- package/dist/lib/config-local-adapters.js +5 -3
- package/dist/lib/config-local-adapters.js.map +1 -1
- package/dist/lib/config-local-types.d.ts +1 -0
- package/dist/lib/config-local.js +2 -2
- package/dist/lib/config-local.js.map +1 -1
- package/dist/lib/dynamic-script-context-contract.d.ts +1 -0
- package/dist/lib/dynamic-script-context-contract.js +6 -3
- package/dist/lib/dynamic-script-context-contract.js.map +1 -1
- package/dist/lib/enfyra-mcp-server.js +3 -0
- package/dist/lib/enfyra-mcp-server.js.map +1 -1
- package/dist/lib/mcp-example-handlers-hooks.js +22 -10
- package/dist/lib/mcp-example-handlers-hooks.js.map +1 -1
- package/dist/lib/mcp-instructions.js +1 -0
- package/dist/lib/mcp-instructions.js.map +1 -1
- package/dist/lib/required-knowledge.d.ts +1 -1
- package/dist/lib/required-knowledge.js +19 -4
- package/dist/lib/required-knowledge.js.map +1 -1
- package/dist/lib/script-workspace.d.ts +2 -0
- package/dist/lib/script-workspace.js +116 -0
- package/dist/lib/script-workspace.js.map +1 -0
- package/dist/lib/source-artifacts.d.ts +1 -0
- package/dist/lib/source-artifacts.js +24 -9
- package/dist/lib/source-artifacts.js.map +1 -1
- package/dist/lib/tool-catalog.d.ts +1 -1
- package/dist/lib/tool-catalog.js +8 -27
- package/dist/lib/tool-catalog.js.map +1 -1
- package/dist/lib/tool-contracts.js +3 -0
- package/dist/lib/tool-contracts.js.map +1 -1
- package/dist/lib/tool-execution.d.ts +2 -0
- package/dist/lib/tool-execution.js +30 -0
- package/dist/lib/tool-execution.js.map +1 -0
- package/dist/lib/tool-output-contracts.js +2 -0
- package/dist/lib/tool-output-contracts.js.map +1 -1
- package/dist/lib/toolset-filter.d.ts +1 -1
- package/dist/lib/toolset-filter.js +4 -0
- package/dist/lib/toolset-filter.js.map +1 -1
- package/dist/lib/types.d.ts +1 -0
- package/dist/lib/workflow-definitions.d.ts +21 -1
- package/dist/lib/workflow-definitions.js +21 -4
- package/dist/lib/workflow-definitions.js.map +1 -1
- package/dist/lib/workflow-planner.js +9 -0
- package/dist/lib/workflow-planner.js.map +1 -1
- package/dist/lib/workflow-types.d.ts +1 -1
- package/dist/lib/workspace-files.d.ts +9 -0
- package/dist/lib/workspace-files.js +160 -0
- package/dist/lib/workspace-files.js.map +1 -0
- package/dist/lib/workspace-push.d.ts +44 -0
- package/dist/lib/workspace-push.js +79 -0
- package/dist/lib/workspace-push.js.map +1 -0
- package/dist/lib/workspace-remote.d.ts +3 -0
- package/dist/lib/workspace-remote.js +52 -0
- package/dist/lib/workspace-remote.js.map +1 -0
- package/dist/lib/workspace-state.d.ts +35 -0
- package/dist/lib/workspace-state.js +89 -0
- package/dist/lib/workspace-state.js.map +1 -0
- package/dist/lib/workspace-tools.d.ts +2 -0
- package/dist/lib/workspace-tools.js +40 -0
- package/dist/lib/workspace-tools.js.map +1 -0
- package/dist/lib/workspace-types.d.ts +83 -0
- package/dist/lib/workspace-types.js +2 -0
- package/dist/lib/workspace-types.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { mkdirSync, realpathSync } from 'node:fs';
|
|
2
|
+
import { relative } from 'node:path';
|
|
3
|
+
import { withSourceArtifactDirectory } from './source-artifacts.js';
|
|
4
|
+
import { ensureWorkspaceIgnored, readWorkspaceFile, safeWorkspacePath, withWorkspaceLock, workspacePaths, workspaceTarget, writeWorkspaceFile } from './workspace-files.js';
|
|
5
|
+
import { artifactKey, artifactPath, loadWorkspace, observeArtifact, observationSummary, saveWorkspace, selectArtifacts, sourceRevision, updateFromRemote, workspaceArtifactSchema } from './workspace-state.js';
|
|
6
|
+
import { pushWorkspace } from './workspace-push.js';
|
|
7
|
+
export function createScriptWorkspace(dependencies) {
|
|
8
|
+
const target = workspaceTarget(dependencies.apiUrl);
|
|
9
|
+
let active = null;
|
|
10
|
+
async function resolvePaths(projectRoot) {
|
|
11
|
+
const roots = await dependencies.roots?.() ?? [];
|
|
12
|
+
const configured = projectRoot ?? active?.projectRoot ?? dependencies.projectRoot;
|
|
13
|
+
if (!configured && roots.length !== 1)
|
|
14
|
+
throw new Error('Provide projectRoot explicitly when the client has no unique project root.');
|
|
15
|
+
const paths = workspacePaths(configured ?? roots[0], target);
|
|
16
|
+
if (roots.length && !roots.some((root) => { const rel = relative(realpathSync(root), paths.projectRoot); return rel === '' || (!rel.startsWith('..') && !rel.startsWith('/')); }))
|
|
17
|
+
throw new Error('projectRoot is outside the roots provided by this MCP client.');
|
|
18
|
+
return paths;
|
|
19
|
+
}
|
|
20
|
+
function summary(paths) {
|
|
21
|
+
return { projectRoot: paths.projectRoot, workspaceRoot: paths.workspaceRoot, tempRoot: paths.tempRoot, target: paths.target };
|
|
22
|
+
}
|
|
23
|
+
async function run(input, operation) {
|
|
24
|
+
const paths = await resolvePaths(input.projectRoot);
|
|
25
|
+
loadWorkspace(paths);
|
|
26
|
+
ensureWorkspaceIgnored(paths);
|
|
27
|
+
return withWorkspaceLock(paths, () => withSourceArtifactDirectory(paths.tempRoot, async () => {
|
|
28
|
+
const result = await operation(paths, loadWorkspace(paths));
|
|
29
|
+
active = paths;
|
|
30
|
+
return result;
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
async function prepare(input) {
|
|
34
|
+
const paths = await resolvePaths(input.projectRoot);
|
|
35
|
+
const refs = (input.artifacts ?? []).map((item) => workspaceArtifactSchema.parse(item));
|
|
36
|
+
if (refs.length > 100 || new Set(refs.map(artifactKey)).size !== refs.length)
|
|
37
|
+
throw new Error('Prepare accepts at most 100 unique explicit artifact references.');
|
|
38
|
+
for (const ref of refs) {
|
|
39
|
+
if (ref.path)
|
|
40
|
+
safeWorkspacePath(paths.workspaceRoot, artifactPath(ref, { source: '', sourceField: ref.tableName === 'enfyra_extension' ? 'code' : 'sourceCode', language: 'javascript' }));
|
|
41
|
+
}
|
|
42
|
+
const existing = readWorkspaceFile(paths.projectRoot, paths.manifestPath);
|
|
43
|
+
if (existing)
|
|
44
|
+
loadWorkspace(paths);
|
|
45
|
+
const config = readWorkspaceFile(paths.projectRoot, 'enfyra/project.json');
|
|
46
|
+
if (config && JSON.parse(config).target !== target)
|
|
47
|
+
throw new Error('Workspace project target differs from this Enfyra connection.');
|
|
48
|
+
const gitIgnored = ensureWorkspaceIgnored(paths);
|
|
49
|
+
mkdirSync(paths.workspaceRoot, { recursive: true, mode: 0o700 });
|
|
50
|
+
return withWorkspaceLock(paths, () => withSourceArtifactDirectory(paths.tempRoot, async () => {
|
|
51
|
+
const current = readWorkspaceFile(paths.projectRoot, paths.manifestPath);
|
|
52
|
+
const manifest = current ? loadWorkspace(paths) : { target, artifacts: [] };
|
|
53
|
+
if (!current && input.artifacts === undefined)
|
|
54
|
+
throw new Error('A new workspace requires explicit artifacts from discovery. Pass tableName and id, or artifacts=[] when creating new source; do not clone the whole instance.');
|
|
55
|
+
const pending = [];
|
|
56
|
+
for (const ref of refs) {
|
|
57
|
+
const key = artifactKey(ref);
|
|
58
|
+
const previous = manifest.artifacts.find((item) => item.key === key);
|
|
59
|
+
if (previous) {
|
|
60
|
+
if (ref.path && ref.path !== previous.path)
|
|
61
|
+
throw new Error(`Artifact path is already mapped: ${key}`);
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
const remote = await dependencies.read(ref);
|
|
65
|
+
if (!remote)
|
|
66
|
+
throw new Error(`Remote artifact was not found: ${key}`);
|
|
67
|
+
const path = artifactPath(ref, remote);
|
|
68
|
+
safeWorkspacePath(paths.workspaceRoot, path);
|
|
69
|
+
if (manifest.artifacts.some((item) => item.path === path) || pending.some((item) => item.path === path))
|
|
70
|
+
throw new Error('Artifact paths must be unique.');
|
|
71
|
+
const local = readWorkspaceFile(paths.workspaceRoot, path);
|
|
72
|
+
if (local !== null && local !== remote.source)
|
|
73
|
+
throw new Error(`Local file already exists without a matching baseline: ${path}`);
|
|
74
|
+
pending.push({ ...ref, key, path, sourceField: remote.sourceField, language: remote.language, baseline: sourceRevision(remote), source: remote.source, local });
|
|
75
|
+
}
|
|
76
|
+
if (manifest.artifacts.length + pending.length > 500)
|
|
77
|
+
throw new Error('A workspace supports at most 500 explicitly mapped artifacts. Use a narrower project scope.');
|
|
78
|
+
for (const { source, local, ...artifact } of pending) {
|
|
79
|
+
writeWorkspaceFile(paths.projectRoot, `enfyra/${artifact.path}`, source, local);
|
|
80
|
+
manifest.artifacts.push(artifact);
|
|
81
|
+
}
|
|
82
|
+
saveWorkspace(paths, manifest);
|
|
83
|
+
if (!config)
|
|
84
|
+
writeWorkspaceFile(paths.projectRoot, 'enfyra/project.json', `${JSON.stringify({ target, sourceRoot: 'enfyra', state: '.state/sync.json', guidance: 'Use prepare/inspect/pull/push Enfyra workspace operations. Do not overwrite shared fragments in a separate source tree with these assembled live scripts.' }, null, 2)}\n`, null);
|
|
85
|
+
const artifacts = [];
|
|
86
|
+
for (const artifact of selectArtifacts(manifest, input.keys))
|
|
87
|
+
artifacts.push(observationSummary(await observeArtifact(paths, artifact, dependencies)));
|
|
88
|
+
active = paths;
|
|
89
|
+
return { action: 'enfyra_workspace_prepared', ...summary(paths), gitIgnored, artifacts, guidance: 'Edit localFile after checking status. Use push_enfyra_sources to preview and validate, then apply its planId. Pull never overwrites local edits or deletes sources.' };
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
prepare,
|
|
94
|
+
artifactDirectory: () => active ? safeWorkspacePath(active.projectRoot, relative(active.projectRoot, active.tempRoot)) : null,
|
|
95
|
+
inspect: (input) => run(input, async (paths, manifest) => {
|
|
96
|
+
const artifacts = [];
|
|
97
|
+
for (const artifact of selectArtifacts(manifest, input.keys))
|
|
98
|
+
artifacts.push(observationSummary(await observeArtifact(paths, artifact, dependencies)));
|
|
99
|
+
return { action: 'enfyra_workspace_inspected', ...summary(paths), artifacts };
|
|
100
|
+
}),
|
|
101
|
+
pull: (input) => run(input, async (paths, manifest) => {
|
|
102
|
+
const artifacts = [];
|
|
103
|
+
for (const artifact of selectArtifacts(manifest, input.keys)) {
|
|
104
|
+
const observation = await observeArtifact(paths, artifact, dependencies);
|
|
105
|
+
if (['remote_changed', 'local_missing', 'aligned'].includes(observation.status)) {
|
|
106
|
+
updateFromRemote(paths, observation);
|
|
107
|
+
saveWorkspace(paths, manifest);
|
|
108
|
+
}
|
|
109
|
+
artifacts.push(observationSummary(await observeArtifact(paths, artifact, dependencies)));
|
|
110
|
+
}
|
|
111
|
+
return { action: 'enfyra_workspace_pulled', ...summary(paths), artifacts };
|
|
112
|
+
}),
|
|
113
|
+
push: (input) => run(input, (paths, manifest) => pushWorkspace(paths, manifest, dependencies, input)),
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=script-workspace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"script-workspace.js","sourceRoot":"","sources":["../../src/lib/script-workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
3
|
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
|
|
3
4
|
import { tmpdir } from 'node:os';
|
|
4
|
-
import { join } from 'node:path';
|
|
5
|
+
import { dirname, join } from 'node:path';
|
|
5
6
|
import { normalizeOptionalText } from './tool-input-normalization.js';
|
|
6
7
|
const DEFAULT_PREVIEW_CHARS = 480;
|
|
7
8
|
const DEFAULT_INLINE_LIMIT = 1400;
|
|
@@ -14,6 +15,16 @@ const SOURCE_FIELD_NAMES = new Set([
|
|
|
14
15
|
]);
|
|
15
16
|
const SOURCE_ARTIFACTS = new Map();
|
|
16
17
|
export const SOURCE_ARTIFACT_DIR = join(tmpdir(), 'enfyra-mcp-sources', String(process.pid));
|
|
18
|
+
const artifactDirectory = new AsyncLocalStorage();
|
|
19
|
+
export function withSourceArtifactDirectory(directory, run) {
|
|
20
|
+
return artifactDirectory.run(directory, run);
|
|
21
|
+
}
|
|
22
|
+
function currentArtifactDirectory() {
|
|
23
|
+
const directory = artifactDirectory.getStore();
|
|
24
|
+
if (directory === null)
|
|
25
|
+
throw new Error('Prepare the project source workspace first with prepare_enfyra_workspace. Source artifacts require a project-local .tmp directory.');
|
|
26
|
+
return directory ?? SOURCE_ARTIFACT_DIR;
|
|
27
|
+
}
|
|
17
28
|
function sha256(value) {
|
|
18
29
|
return createHash('sha256').update(String(value), 'utf8').digest('hex');
|
|
19
30
|
}
|
|
@@ -39,18 +50,19 @@ function artifactId(tableName, id, fieldName, hash) {
|
|
|
39
50
|
return [safePart(tableName), safePart(id), safePart(fieldName), hash.slice(0, 16)].join('-');
|
|
40
51
|
}
|
|
41
52
|
export function writeSourceArtifact({ tableName, id, fieldName, source }) {
|
|
53
|
+
const directory = currentArtifactDirectory();
|
|
42
54
|
const hash = sha256(source);
|
|
43
55
|
const extension = extensionForField(fieldName);
|
|
44
|
-
mkdirSync(
|
|
56
|
+
mkdirSync(directory, { recursive: true, mode: 0o700 });
|
|
45
57
|
const fileName = [
|
|
46
58
|
safePart(tableName),
|
|
47
59
|
safePart(id),
|
|
48
60
|
safePart(fieldName),
|
|
49
61
|
hash.slice(0, 12),
|
|
50
62
|
].join('-') + extension;
|
|
51
|
-
const path = join(
|
|
63
|
+
const path = join(directory, fileName);
|
|
52
64
|
writeFileSync(path, source, { mode: 0o600 });
|
|
53
|
-
const resourceId = artifactId(tableName, id, fieldName, hash)
|
|
65
|
+
const resourceId = `${sha256(directory).slice(0, 16)}-${artifactId(tableName, id, fieldName, hash)}`;
|
|
54
66
|
const resourceUri = `enfyra-source://artifact/${encodeURIComponent(resourceId)}`;
|
|
55
67
|
SOURCE_ARTIFACTS.set(resourceId, { path, mimeType: mimeTypeForExtension(extension) });
|
|
56
68
|
return {
|
|
@@ -64,11 +76,14 @@ export function writeSourceArtifact({ tableName, id, fieldName, source }) {
|
|
|
64
76
|
};
|
|
65
77
|
}
|
|
66
78
|
export function cleanupSourceArtifacts() {
|
|
67
|
-
const
|
|
79
|
+
const directory = currentArtifactDirectory();
|
|
80
|
+
const existed = existsSync(directory);
|
|
68
81
|
if (existed)
|
|
69
|
-
rmSync(
|
|
70
|
-
SOURCE_ARTIFACTS
|
|
71
|
-
|
|
82
|
+
rmSync(directory, { recursive: true, force: true });
|
|
83
|
+
for (const [id, artifact] of SOURCE_ARTIFACTS)
|
|
84
|
+
if (dirname(artifact.path) === directory)
|
|
85
|
+
SOURCE_ARTIFACTS.delete(id);
|
|
86
|
+
return { directory, removed: existed };
|
|
72
87
|
}
|
|
73
88
|
export function readSourceArtifactResource(resourceUri) {
|
|
74
89
|
let resourceId = '';
|
|
@@ -141,7 +156,7 @@ export function materializeSourceInput({ source, sourceCode, code, sourceFile, s
|
|
|
141
156
|
export function compactSourceField({ tableName, id, fieldName, source, alwaysWrite = false }) {
|
|
142
157
|
if (typeof source !== 'string')
|
|
143
158
|
return source;
|
|
144
|
-
if (!alwaysWrite && source.length <= DEFAULT_INLINE_LIMIT)
|
|
159
|
+
if (artifactDirectory.getStore() === undefined && !alwaysWrite && source.length <= DEFAULT_INLINE_LIMIT)
|
|
145
160
|
return source;
|
|
146
161
|
return writeSourceArtifact({ tableName, id, fieldName, source });
|
|
147
162
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-artifacts.js","sourceRoot":"","sources":["../../src/lib/source-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"source-artifacts.js","sourceRoot":"","sources":["../../src/lib/source-artifacts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { RegisteredToolDefinition, ToolCatalogOptions, ToolsetRegistrationState } from './types.js';
|
|
2
2
|
export declare function scoreToolSearch(tool: Pick<RegisteredToolDefinition, 'name' | 'description'>, query: string): number;
|
|
3
|
-
export declare function registerToolCatalogTools(server: any, state: ToolsetRegistrationState, { resolveAvailability }?: ToolCatalogOptions): any;
|
|
3
|
+
export declare function registerToolCatalogTools(server: any, state: ToolsetRegistrationState, { resolveAvailability, sourceDirectory }?: ToolCatalogOptions): any;
|
package/dist/lib/tool-catalog.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { zodToJsonSchema } from 'zod-to-json-schema';
|
|
3
|
-
import { recordMcpToolUsage } from './mcp-usage-telemetry.js';
|
|
4
3
|
import { paginateResults } from './pagination.js';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { jsonContent } from './response-format.js';
|
|
5
|
+
import { withSourceArtifactDirectory } from './source-artifacts.js';
|
|
6
|
+
import { executeToolDefinition } from './tool-execution.js';
|
|
7
7
|
import { getToolContract, isCatalogExecutable } from './tool-contracts.js';
|
|
8
|
-
import { getToolOutputSchema
|
|
8
|
+
import { getToolOutputSchema } from './tool-output-contracts.js';
|
|
9
9
|
import { discoverWorkflowRoutes, listWorkflowSurfaces } from './tool-routing.js';
|
|
10
10
|
function inputJsonSchema(tool) {
|
|
11
11
|
return zodToJsonSchema(z.object(tool.inputSchema), { target: 'jsonSchema7', $refStrategy: 'none' });
|
|
@@ -50,7 +50,7 @@ const gatewayInput = z.discriminatedUnion('action', [
|
|
|
50
50
|
z.object({ action: z.literal('discover'), ...discoveryInput }).strict(),
|
|
51
51
|
z.object({ action: z.literal('execute'), ...executionInput }).strict(),
|
|
52
52
|
]);
|
|
53
|
-
export function registerToolCatalogTools(server, state, { resolveAvailability } = {}) {
|
|
53
|
+
export function registerToolCatalogTools(server, state, { resolveAvailability, sourceDirectory } = {}) {
|
|
54
54
|
const availabilityFor = async (names) => {
|
|
55
55
|
const remote = names.filter((name) => name !== 'get_enfyra_api_context' && getToolContract(name).annotations.openWorldHint);
|
|
56
56
|
const availability = defaultAvailability(names);
|
|
@@ -109,6 +109,7 @@ export function registerToolCatalogTools(server, state, { resolveAvailability }
|
|
|
109
109
|
}),
|
|
110
110
|
prerequisites: [
|
|
111
111
|
{ ...invocationFor('get_enfyra_api_context'), when: 'Before the first write, execute and verify the target API.' },
|
|
112
|
+
{ ...invocationFor('prepare_enfyra_workspace'), when: 'Before inspecting or editing live source, prepare its ignored project workspace with explicit artifact references.' },
|
|
112
113
|
{ ...invocationFor('get_enfyra_required_knowledge'), when: 'Discover its schema and execute with the workflow domain before writing.' },
|
|
113
114
|
],
|
|
114
115
|
guidance: [
|
|
@@ -122,28 +123,8 @@ export function registerToolCatalogTools(server, state, { resolveAvailability }
|
|
|
122
123
|
if (!tool || !isCatalogExecutable(request.name)) {
|
|
123
124
|
throw new Error(`Operation "${request.name}" is unavailable through enfyra. Use action=discover to find its guided workflow.`);
|
|
124
125
|
}
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
try {
|
|
128
|
-
const parsed = z.object(tool.inputSchema).parse(request.arguments);
|
|
129
|
-
beforeMcpToolExecution(tool.name, parsed);
|
|
130
|
-
const availability = (await availabilityFor([tool.name]))[tool.name];
|
|
131
|
-
if (availability?.status === 'denied')
|
|
132
|
-
throw new Error(`${tool.name} is unavailable for the current PAT: ${availability.reason}`);
|
|
133
|
-
const result = await tool.handler(parsed, extra);
|
|
134
|
-
formatted = formatToolResult(result, { toolName: tool.name });
|
|
135
|
-
if (formatted?.isError !== true) {
|
|
136
|
-
const validated = validateStructuredToolOutput(tool.name, formatted?.structuredContent);
|
|
137
|
-
if (validated.success === false)
|
|
138
|
-
throw new Error(`${tool.name} returned invalid structured output: ${validated.error.message}`);
|
|
139
|
-
}
|
|
140
|
-
afterMcpToolExecution(tool.name, parsed, formatted);
|
|
141
|
-
recordMcpToolUsage(tool.name, startedAt, [parsed], formatted);
|
|
142
|
-
}
|
|
143
|
-
catch (error) {
|
|
144
|
-
recordMcpToolUsage(tool.name, startedAt, [request.arguments], undefined, error);
|
|
145
|
-
throw error;
|
|
146
|
-
}
|
|
126
|
+
const execute = () => executeToolDefinition(tool, request.arguments, extra, availabilityFor);
|
|
127
|
+
const formatted = await (sourceDirectory ? withSourceArtifactDirectory(sourceDirectory(), execute) : execute());
|
|
147
128
|
const text = formatted?.content?.filter((item) => item.type === 'text').map((item) => item.text).join('\n') ?? '';
|
|
148
129
|
const envelope = jsonContent({ action: 'enfyra_catalog_tool_executed', tool: tool.name, result: formatted?.structuredContent ?? text }, { columnar: false });
|
|
149
130
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-catalog.js","sourceRoot":"","sources":["../../src/lib/tool-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tool-catalog.js","sourceRoot":"","sources":["../../src/lib/tool-catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,9 @@ const DESTRUCTIVE_TOOLS = new Set([
|
|
|
19
19
|
]);
|
|
20
20
|
const MUTATION_TOOL_PATTERN = /^(?:create|update|delete|ensure|patch|install|uninstall|enable|disable|reorder|reload|trigger|set|add|remove)_/;
|
|
21
21
|
const MUTATION_TOOLS = new Set([
|
|
22
|
+
'prepare_enfyra_workspace',
|
|
23
|
+
'pull_enfyra_sources',
|
|
24
|
+
'push_enfyra_sources',
|
|
22
25
|
'api_endpoint_workflow',
|
|
23
26
|
'confirm_schema_mutation',
|
|
24
27
|
'extension_workflow',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-contracts.js","sourceRoot":"","sources":["../../src/lib/tool-contracts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-contracts.js","sourceRoot":"","sources":["../../src/lib/tool-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { RegisteredToolDefinition, ToolCatalogOptions } from './types.js';
|
|
2
|
+
export declare function executeToolDefinition(tool: RegisteredToolDefinition, input: Record<string, unknown>, extra?: unknown, resolveAvailability?: ToolCatalogOptions['resolveAvailability']): Promise<any>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { recordMcpToolUsage } from './mcp-usage-telemetry.js';
|
|
3
|
+
import { formatToolResult } from './response-format.js';
|
|
4
|
+
import { afterMcpToolExecution, beforeMcpToolExecution } from './session-safety.js';
|
|
5
|
+
import { validateStructuredToolOutput } from './tool-output-contracts.js';
|
|
6
|
+
export async function executeToolDefinition(tool, input, extra, resolveAvailability) {
|
|
7
|
+
const startedAt = Date.now();
|
|
8
|
+
try {
|
|
9
|
+
const parsed = z.object(tool.inputSchema).parse(input);
|
|
10
|
+
beforeMcpToolExecution(tool.name, parsed);
|
|
11
|
+
const availability = resolveAvailability ? (await resolveAvailability([tool.name]))[tool.name] : undefined;
|
|
12
|
+
if (availability?.status === 'denied')
|
|
13
|
+
throw new Error(`${tool.name} is unavailable for the current PAT: ${availability.reason}`);
|
|
14
|
+
const result = await tool.handler(parsed, extra);
|
|
15
|
+
const formatted = formatToolResult(result, { toolName: tool.name });
|
|
16
|
+
if (formatted?.isError !== true) {
|
|
17
|
+
const validated = validateStructuredToolOutput(tool.name, formatted?.structuredContent);
|
|
18
|
+
if (validated.success === false)
|
|
19
|
+
throw new Error(`${tool.name} returned invalid structured output: ${validated.error.message}`);
|
|
20
|
+
}
|
|
21
|
+
afterMcpToolExecution(tool.name, parsed, formatted);
|
|
22
|
+
recordMcpToolUsage(tool.name, startedAt, [parsed], formatted);
|
|
23
|
+
return formatted;
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
recordMcpToolUsage(tool.name, startedAt, [input], undefined, error);
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=tool-execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-execution.js","sourceRoot":"","sources":["../../src/lib/tool-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAG1E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAA8B,EAAE,KAA8B,EAAE,KAAe,EAAE,mBAA+D;IAC1L,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAA4B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxE,sBAAsB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3G,IAAI,YAAY,EAAE,MAAM,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,wCAAwC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QAClI,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,SAAS,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;YACxF,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,wCAAwC,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAClI,CAAC;QACD,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACpD,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;QAC9D,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACpE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -177,6 +177,8 @@ const BASE_OUTPUT_TOOLS = new Set([
|
|
|
177
177
|
'count_records',
|
|
178
178
|
]);
|
|
179
179
|
export function getToolOutputSchema(toolName) {
|
|
180
|
+
if (['prepare_enfyra_workspace', 'inspect_enfyra_workspace', 'pull_enfyra_sources', 'push_enfyra_sources'].includes(toolName))
|
|
181
|
+
return actionOutputSchema;
|
|
180
182
|
if (toolName === 'enfyra')
|
|
181
183
|
return actionOutputSchema;
|
|
182
184
|
if (toolName === 'discover_enfyra_workflows')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-output-contracts.js","sourceRoot":"","sources":["../../src/lib/tool-output-contracts.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-output-contracts.js","sourceRoot":"","sources":["../../src/lib/tool-output-contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { McpProfile, McpToolset, ToolsetRegistrationState } from './types.js';
|
|
2
2
|
export type { McpProfile, McpToolset } from './types.js';
|
|
3
3
|
export declare const MCP_PROFILES: readonly ["all", "extension", "schema", "runtime", "operations"];
|
|
4
|
-
export declare const CORE_TOOL_NAMES: readonly ["get_enfyra_required_knowledge", "get_enfyra_examples", "discover_enfyra_workflows", "discover_enfyra_system", "discover_runtime_context", "discover_query_capabilities", "discover_script_contexts", "get_enfyra_api_context", "get_current_user", "get_permission_profile", "report_mcp_errors"];
|
|
4
|
+
export declare const CORE_TOOL_NAMES: readonly ["prepare_enfyra_workspace", "inspect_enfyra_workspace", "pull_enfyra_sources", "push_enfyra_sources", "get_enfyra_required_knowledge", "get_enfyra_examples", "discover_enfyra_workflows", "discover_enfyra_system", "discover_runtime_context", "discover_query_capabilities", "discover_script_contexts", "get_enfyra_api_context", "get_current_user", "get_permission_profile", "report_mcp_errors"];
|
|
5
5
|
export declare function normalizeMcpProfile(value: unknown): McpProfile;
|
|
6
6
|
export declare function isToolInProfile(toolName: string, profile?: McpProfile): boolean;
|
|
7
7
|
export declare function installToolsetFilter(server: any, toolset: McpToolset, profile?: McpProfile): ToolsetRegistrationState;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export const MCP_PROFILES = ['all', 'extension', 'schema', 'runtime', 'operations'];
|
|
2
2
|
export const CORE_TOOL_NAMES = [
|
|
3
|
+
'prepare_enfyra_workspace',
|
|
4
|
+
'inspect_enfyra_workspace',
|
|
5
|
+
'pull_enfyra_sources',
|
|
6
|
+
'push_enfyra_sources',
|
|
3
7
|
'get_enfyra_required_knowledge',
|
|
4
8
|
'get_enfyra_examples',
|
|
5
9
|
'discover_enfyra_workflows',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolset-filter.js","sourceRoot":"","sources":["../../src/lib/toolset-filter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"toolset-filter.js","sourceRoot":"","sources":["../../src/lib/toolset-filter.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAU,CAAC;AAE7F,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,0BAA0B;IAC1B,0BAA0B;IAC1B,qBAAqB;IACrB,qBAAqB;IACrB,+BAA+B;IAC/B,qBAAqB;IACrB,2BAA2B;IAC3B,wBAAwB;IACxB,0BAA0B;IAC1B,6BAA6B;IAC7B,0BAA0B;IAC1B,wBAAwB;IACxB,kBAAkB;IAClB,wBAAwB;IACxB,mBAAmB;CACX,CAAC;AAEX,MAAM,kBAAkB,GAA0D;IAChF,SAAS,EAAE;QACT,GAAG,eAAe;QAClB,yBAAyB;QACzB,qBAAqB;QACrB,eAAe;QACf,oBAAoB;QACpB,aAAa;QACb,eAAe;QACf,iBAAiB;QACjB,gBAAgB;QAChB,0BAA0B;QAC1B,8BAA8B;QAC9B,oBAAoB;QACpB,4BAA4B;QAC5B,oBAAoB;QACpB,kBAAkB;QAClB,aAAa;QACb,uBAAuB;QACvB,sBAAsB;QACtB,aAAa;QACb,oBAAoB;QACpB,eAAe;QACf,uBAAuB;QACvB,yBAAyB;QACzB,yBAAyB;KAC1B;IACD,MAAM,EAAE;QACN,GAAG,eAAe;QAClB,gCAAgC;QAChC,qBAAqB;QACrB,yBAAyB;QACzB,eAAe;QACf,eAAe;QACf,oBAAoB;QACpB,oBAAoB;QACpB,gBAAgB;QAChB,2BAA2B;QAC3B,aAAa;QACb,eAAe;QACf,iBAAiB;QACjB,gBAAgB;QAChB,gBAAgB;QAChB,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,eAAe;QACf,yBAAyB;QACzB,gBAAgB;QAChB,gBAAgB;QAChB,gBAAgB;QAChB,kBAAkB;QAClB,yBAAyB;QACzB,6BAA6B;QAC7B,kBAAkB;QAClB,oBAAoB;QACpB,yBAAyB;QACzB,yBAAyB;QACzB,yBAAyB;QACzB,cAAc;QACd,iBAAiB;QACjB,oBAAoB;QACpB,cAAc;KACf;IACD,OAAO,EAAE;QACP,GAAG,eAAe;QAClB,4BAA4B;QAC5B,gCAAgC;QAChC,qBAAqB;QACrB,eAAe;QACf,eAAe;QACf,qBAAqB;QACrB,sBAAsB;QACtB,yBAAyB;QACzB,uBAAuB;QACvB,uBAAuB;QACvB,gBAAgB;QAChB,iBAAiB;QACjB,kBAAkB;QAClB,oBAAoB;QACpB,gBAAgB;QAChB,gBAAgB;QAChB,cAAc;QACd,oBAAoB;QACpB,qBAAqB;QACrB,cAAc;QACd,sBAAsB;QACtB,mBAAmB;QACnB,yBAAyB;QACzB,mBAAmB;QACnB,cAAc;QACd,yBAAyB;QACzB,cAAc;QACd,oBAAoB;QACpB,yBAAyB;QACzB,yBAAyB;QACzB,0BAA0B;QAC1B,wBAAwB;QACxB,eAAe;QACf,aAAa;QACb,qBAAqB;QACrB,qBAAqB;QACrB,aAAa;QACb,kBAAkB;QAClB,iBAAiB;KAClB;IACD,UAAU,EAAE;QACV,GAAG,eAAe;QAClB,qBAAqB;QACrB,mBAAmB;QACnB,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,uBAAuB;QACvB,aAAa;QACb,eAAe;QACf,iBAAiB;QACjB,gBAAgB;QAChB,gBAAgB;QAChB,gBAAgB;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,oBAAoB;QACpB,sBAAsB;QACtB,kBAAkB;QAClB,YAAY;QACZ,iBAAiB;QACjB,gBAAgB;QAChB,iBAAiB;QACjB,mBAAmB;QACnB,cAAc;QACd,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,uBAAuB;QACvB,cAAc;QACd,eAAe;QACf,oBAAoB;QACpB,sBAAsB;QACtB,kBAAkB;KACnB;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC5E,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACrC,CAAC;AAErD,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrD,OAAO,YAAY,CAAC,QAAQ,CAAC,GAAiB,CAAC,CAAC,CAAC,CAAC,GAAiB,CAAC,CAAC,CAAC,KAAK,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAAgB,EAAE,UAAsB,KAAK;IAC3E,IAAI,OAAO,KAAK,KAAK;QAAE,OAAO,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9D,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAW,EACX,OAAmB,EACnB,UAAsB,KAAK;IAE3B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAoC,CAAC;IAElE,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;aACrE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;aAC/B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,CAAC,IAAI,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,KAAK,QAAQ,CAAC;QAClC,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3C,IAAI,YAAY,IAAI,CAAC,OAAO;YAAE,YAAY,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3D,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACzG,kBAAkB,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,KAAK,GAA6B;QACtC,OAAO;QACP,OAAO;QACP,WAAW;QACX,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAClD,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;QAC5C,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;aACpD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;aAC9B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KAC5B,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,OAAmB,EAAE,UAAsB,KAAK;IAC9F,OAAO;QACL,iBAAiB,OAAO,wBAAwB,OAAO,mDAAmD;QAC1G,8IAA8I;QAC9I,iHAAiH;QACjH,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,uEAAuE,CAAC,CAAC;KACxG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC"}
|
package/dist/lib/types.d.ts
CHANGED
|
@@ -61,6 +61,7 @@ export type McpToolset = 'guided';
|
|
|
61
61
|
export type McpProfile = 'all' | 'extension' | 'schema' | 'runtime' | 'operations';
|
|
62
62
|
export interface ToolCatalogOptions {
|
|
63
63
|
resolveAvailability?: (toolNames: string[]) => Promise<Record<string, ToolAvailability>>;
|
|
64
|
+
sourceDirectory?: () => string | null;
|
|
64
65
|
}
|
|
65
66
|
export type ToolAvailabilityStatus = 'allowed' | 'denied' | 'unknown';
|
|
66
67
|
export interface ToolAvailability {
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
import type { WorkflowProfile, WorkflowSurface } from './workflow-types.js';
|
|
2
2
|
export type { AvoidToolRule, ToolWorkflow, WorkflowDetail, WorkflowPathStep, WorkflowProfile, WorkflowRouteOptions, WorkflowSurface } from './workflow-types.js';
|
|
3
|
-
export declare const WORKFLOW_SURFACES: readonly ["api-endpoint", "extension", "schema", "record-data", "dynamic-script", "route-access", "guards-permissions-rules", "flow", "websocket", "graphql", "storage-file", "oauth", "identity-access", "platform-config", "package", "cache", "logs-debug", "auth-context"];
|
|
3
|
+
export declare const WORKFLOW_SURFACES: readonly ["script-workspace", "api-endpoint", "extension", "schema", "record-data", "dynamic-script", "route-access", "guards-permissions-rules", "flow", "websocket", "graphql", "storage-file", "oauth", "identity-access", "platform-config", "package", "cache", "logs-debug", "auth-context"];
|
|
4
4
|
export declare const ALL_DETAILS: readonly ["summary", "plan", "full"];
|
|
5
5
|
export declare const WORKFLOW_SURFACES_BY_PROFILE: Record<Exclude<WorkflowProfile, 'all'>, readonly WorkflowSurface[]>;
|
|
6
6
|
export declare const TOOL_WORKFLOWS: ({
|
|
7
|
+
key: "script-workspace";
|
|
8
|
+
title: string;
|
|
9
|
+
useWhen: string[];
|
|
10
|
+
keywords: string[];
|
|
11
|
+
firstTools: string[];
|
|
12
|
+
inspectTools: string[];
|
|
13
|
+
knowledgeTools: string[];
|
|
14
|
+
writeTools: string[];
|
|
15
|
+
verifyTools: string[];
|
|
16
|
+
avoidTools: {
|
|
17
|
+
tool: string;
|
|
18
|
+
when: string;
|
|
19
|
+
useInstead: string;
|
|
20
|
+
reason: string;
|
|
21
|
+
}[];
|
|
22
|
+
requiredAck: string[];
|
|
23
|
+
exampleCategories: any[];
|
|
24
|
+
nextStepTemplate: string[];
|
|
25
|
+
recommendedScope: string;
|
|
26
|
+
} | {
|
|
7
27
|
key: "api-endpoint";
|
|
8
28
|
title: string;
|
|
9
29
|
useWhen: string[];
|