@bevel-software/platform-core-backend 0.29.0 → 0.31.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/agent-guide/access-control.md +49 -4
- package/agent-guide/html-views.md +76 -2
- package/dist/__tests__/test-repositories.d.ts +3 -0
- package/dist/__tests__/test-repositories.d.ts.map +1 -0
- package/dist/__tests__/test-repositories.js +18 -0
- package/dist/__tests__/test-repositories.js.map +1 -0
- package/dist/core/catalog-revision.js +3 -3
- package/dist/core/create-core-server.d.ts.map +1 -1
- package/dist/core/create-core-server.js +3 -2
- package/dist/core/create-core-server.js.map +1 -1
- package/dist/core/create-core-services.d.ts +3 -0
- package/dist/core/create-core-services.d.ts.map +1 -1
- package/dist/core/create-core-services.js +35 -5
- package/dist/core/create-core-services.js.map +1 -1
- package/dist/core/lifecycle.d.ts +8 -0
- package/dist/core/lifecycle.d.ts.map +1 -1
- package/dist/core/lifecycle.js +4 -0
- package/dist/core/lifecycle.js.map +1 -1
- package/dist/modules/access/access-control.interface.d.ts +20 -0
- package/dist/modules/access/access-control.interface.d.ts.map +1 -1
- package/dist/modules/access/access-control.service.d.ts +32 -1
- package/dist/modules/access/access-control.service.d.ts.map +1 -1
- package/dist/modules/access/access-control.service.js +135 -17
- package/dist/modules/access/access-control.service.js.map +1 -1
- package/dist/modules/access/access.routes.d.ts.map +1 -1
- package/dist/modules/access/access.routes.js +20 -6
- package/dist/modules/access/access.routes.js.map +1 -1
- package/dist/modules/agent-instructions/shared-file-rules.d.ts +1 -1
- package/dist/modules/agent-instructions/shared-file-rules.js +1 -1
- package/dist/modules/audit/agent-audit.service.d.ts.map +1 -1
- package/dist/modules/audit/agent-audit.service.js +66 -6
- package/dist/modules/audit/agent-audit.service.js.map +1 -1
- package/dist/modules/audit/audit.contract.d.ts +52 -8
- package/dist/modules/audit/audit.contract.d.ts.map +1 -1
- package/dist/modules/audit/audit.contract.js +37 -1
- package/dist/modules/audit/audit.contract.js.map +1 -1
- package/dist/modules/audit/audit.routes.d.ts +1 -1
- package/dist/modules/audit/audit.routes.d.ts.map +1 -1
- package/dist/modules/audit/audit.routes.js +15 -13
- package/dist/modules/audit/audit.routes.js.map +1 -1
- package/dist/modules/audit/request-audit.d.ts +21 -10
- package/dist/modules/audit/request-audit.d.ts.map +1 -1
- package/dist/modules/audit/request-audit.js +26 -10
- package/dist/modules/audit/request-audit.js.map +1 -1
- package/dist/modules/database/core-schema.d.ts +22 -3
- package/dist/modules/database/core-schema.d.ts.map +1 -1
- package/dist/modules/database/core-schema.js +15 -6
- package/dist/modules/database/core-schema.js.map +1 -1
- package/dist/modules/diff/diff.service.d.ts.map +1 -1
- package/dist/modules/diff/diff.service.js +7 -1
- package/dist/modules/diff/diff.service.js.map +1 -1
- package/dist/modules/kb-fs/git-dir.d.ts +21 -0
- package/dist/modules/kb-fs/git-dir.d.ts.map +1 -0
- package/dist/modules/kb-fs/git-dir.js +58 -0
- package/dist/modules/kb-fs/git-dir.js.map +1 -0
- package/dist/modules/kb-fs/index.d.ts +3 -0
- package/dist/modules/kb-fs/index.d.ts.map +1 -1
- package/dist/modules/kb-fs/index.js +3 -1
- package/dist/modules/kb-fs/index.js.map +1 -1
- package/dist/modules/kb-fs/locking-filesystem.d.ts.map +1 -1
- package/dist/modules/kb-fs/locking-filesystem.js +3 -12
- package/dist/modules/kb-fs/locking-filesystem.js.map +1 -1
- package/dist/modules/kb-fs/mutex.d.ts +11 -0
- package/dist/modules/kb-fs/mutex.d.ts.map +1 -1
- package/dist/modules/kb-fs/mutex.js +14 -0
- package/dist/modules/kb-fs/mutex.js.map +1 -1
- package/dist/modules/kb-fs/ref-files.d.ts +63 -0
- package/dist/modules/kb-fs/ref-files.d.ts.map +1 -0
- package/dist/modules/kb-fs/ref-files.js +249 -0
- package/dist/modules/kb-fs/ref-files.js.map +1 -0
- package/dist/modules/mcp/mcp-auth.middleware.d.ts +14 -0
- package/dist/modules/mcp/mcp-auth.middleware.d.ts.map +1 -1
- package/dist/modules/mcp/mcp-auth.middleware.js +4 -0
- package/dist/modules/mcp/mcp-auth.middleware.js.map +1 -1
- package/dist/modules/mcp/mcp.routes.d.ts +5 -0
- package/dist/modules/mcp/mcp.routes.d.ts.map +1 -1
- package/dist/modules/mcp/mcp.routes.js +67 -0
- package/dist/modules/mcp/mcp.routes.js.map +1 -1
- package/dist/modules/mcp/mcp.service.d.ts +107 -27
- package/dist/modules/mcp/mcp.service.d.ts.map +1 -1
- package/dist/modules/mcp/mcp.service.js +257 -50
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/request-context.d.ts +25 -0
- package/dist/modules/mcp/request-context.d.ts.map +1 -0
- package/dist/modules/mcp/request-context.js +11 -0
- package/dist/modules/mcp/request-context.js.map +1 -0
- package/dist/modules/mcp/shared-definitions.d.ts +56 -0
- package/dist/modules/mcp/shared-definitions.d.ts.map +1 -0
- package/dist/modules/mcp/shared-definitions.js +117 -0
- package/dist/modules/mcp/shared-definitions.js.map +1 -0
- package/dist/modules/mcp/surface-cache.d.ts +70 -0
- package/dist/modules/mcp/surface-cache.d.ts.map +1 -0
- package/dist/modules/mcp/surface-cache.js +104 -0
- package/dist/modules/mcp/surface-cache.js.map +1 -0
- package/dist/modules/plugins/teams.routes.d.ts +4 -0
- package/dist/modules/plugins/teams.routes.d.ts.map +1 -1
- package/dist/modules/plugins/teams.routes.js +9 -1
- package/dist/modules/plugins/teams.routes.js.map +1 -1
- package/dist/modules/tool-auth/internal-token.service.d.ts +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.d.ts +1 -2
- package/dist/modules/tool-auth/tool-auth.middleware.d.ts.map +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.js +1 -2
- package/dist/modules/tool-auth/tool-auth.middleware.js.map +1 -1
- package/dist/modules/tool-helpers/tool-context.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-context.js +33 -12
- package/dist/modules/tool-helpers/tool-context.js.map +1 -1
- package/dist/modules/tool-helpers/tool-handler.d.ts +2 -2
- package/dist/modules/tool-helpers/tool.contract.d.ts +10 -2
- package/dist/modules/tool-helpers/tool.contract.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool.contract.js.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js +3 -14
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts +18 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.js +453 -2
- package/dist/modules/workflow/agent-tools/workflow.tools.js.map +1 -1
- package/dist/modules/workflow/git/git.service.d.ts +142 -4
- package/dist/modules/workflow/git/git.service.d.ts.map +1 -1
- package/dist/modules/workflow/git/git.service.js +645 -128
- package/dist/modules/workflow/git/git.service.js.map +1 -1
- package/dist/modules/workflow/read-on-branch.d.ts +35 -0
- package/dist/modules/workflow/read-on-branch.d.ts.map +1 -0
- package/dist/modules/workflow/read-on-branch.js +58 -0
- package/dist/modules/workflow/read-on-branch.js.map +1 -0
- package/dist/modules/workflow/workflow-hooks.d.ts +1 -1
- package/dist/modules/workflow/workflow.routes.d.ts.map +1 -1
- package/dist/modules/workflow/workflow.routes.js +22 -41
- package/dist/modules/workflow/workflow.routes.js.map +1 -1
- package/dist/modules/workflow/workflow.service.d.ts +48 -8
- package/dist/modules/workflow/workflow.service.d.ts.map +1 -1
- package/dist/modules/workflow/workflow.service.js +163 -16
- package/dist/modules/workflow/workflow.service.js.map +1 -1
- package/dist/modules/workspace/agent-access.gate.d.ts +2 -2
- package/dist/modules/workspace/agent-access.gate.js +2 -2
- package/dist/modules/workspace/bounded-matcher.d.ts +79 -0
- package/dist/modules/workspace/bounded-matcher.d.ts.map +1 -0
- package/dist/modules/workspace/bounded-matcher.js +261 -0
- package/dist/modules/workspace/bounded-matcher.js.map +1 -0
- package/dist/modules/workspace/fetch-instant.d.ts +9 -0
- package/dist/modules/workspace/fetch-instant.d.ts.map +1 -0
- package/dist/modules/workspace/fetch-instant.js +13 -0
- package/dist/modules/workspace/fetch-instant.js.map +1 -0
- package/dist/modules/workspace/index.d.ts +9 -0
- package/dist/modules/workspace/index.d.ts.map +1 -1
- package/dist/modules/workspace/index.js +10 -0
- package/dist/modules/workspace/index.js.map +1 -1
- package/dist/modules/workspace/kb-repository.contract.d.ts +124 -0
- package/dist/modules/workspace/kb-repository.contract.d.ts.map +1 -0
- package/dist/modules/workspace/kb-repository.contract.js +19 -0
- package/dist/modules/workspace/kb-repository.contract.js.map +1 -0
- package/dist/modules/workspace/kb-repository.d.ts +236 -0
- package/dist/modules/workspace/kb-repository.d.ts.map +1 -0
- package/dist/modules/workspace/kb-repository.js +811 -0
- package/dist/modules/workspace/kb-repository.js.map +1 -0
- package/dist/modules/workspace/pattern-matcher.contract.d.ts +50 -0
- package/dist/modules/workspace/pattern-matcher.contract.d.ts.map +1 -0
- package/dist/modules/workspace/pattern-matcher.contract.js +27 -0
- package/dist/modules/workspace/pattern-matcher.contract.js.map +1 -0
- package/dist/modules/workspace/routine-write-policy.d.ts +0 -7
- package/dist/modules/workspace/routine-write-policy.d.ts.map +1 -1
- package/dist/modules/workspace/routine-write-policy.js +0 -5
- package/dist/modules/workspace/routine-write-policy.js.map +1 -1
- package/dist/modules/workspace/set-aside-clone.d.ts +40 -0
- package/dist/modules/workspace/set-aside-clone.d.ts.map +1 -1
- package/dist/modules/workspace/set-aside-clone.js +139 -0
- package/dist/modules/workspace/set-aside-clone.js.map +1 -1
- package/dist/modules/workspace/startup/kb-startup-runner.d.ts +99 -0
- package/dist/modules/workspace/startup/kb-startup-runner.d.ts.map +1 -1
- package/dist/modules/workspace/startup/kb-startup-runner.js +407 -29
- package/dist/modules/workspace/startup/kb-startup-runner.js.map +1 -1
- package/dist/modules/workspace/workspace.service.d.ts +68 -32
- package/dist/modules/workspace/workspace.service.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.service.js +240 -161
- package/dist/modules/workspace/workspace.service.js.map +1 -1
- package/dist/modules/workspace/workspace.tools.d.ts +13 -4
- package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.tools.js +162 -336
- package/dist/modules/workspace/workspace.tools.js.map +1 -1
- package/dist/shared/git.contract.d.ts +7 -0
- package/dist/shared/git.contract.d.ts.map +1 -1
- package/dist/shared/git.contract.js +9 -0
- package/dist/shared/git.contract.js.map +1 -1
- package/dist/shared/no-link-below.d.ts +10 -0
- package/dist/shared/no-link-below.d.ts.map +1 -0
- package/dist/shared/no-link-below.js +30 -0
- package/dist/shared/no-link-below.js.map +1 -0
- package/dist/test-setup.js +4 -0
- package/dist/test-setup.js.map +1 -1
- package/migrations/0018_agent_events_page.sql +11 -0
- package/migrations/meta/0018_snapshot.json +2429 -0
- package/migrations/meta/_journal.json +8 -1
- package/package.json +3 -3
- package/src/__tests__/test-repositories.ts +22 -0
- package/src/__tests__/workspace-service.ts +69 -0
- package/src/core/__tests__/lifecycle.test.ts +16 -0
- package/src/core/catalog-revision.ts +3 -3
- package/src/core/create-core-server.ts +3 -2
- package/src/core/create-core-services.ts +39 -4
- package/src/core/lifecycle.ts +10 -0
- package/src/modules/access/__tests__/access-control.atref-cache.test.ts +144 -4
- package/src/modules/access/__tests__/access-control.group-read.test.ts +73 -0
- package/src/modules/access/__tests__/access.routes.group-grant.test.ts +66 -0
- package/src/modules/access/__tests__/access.routes.unknown-email.test.ts +2 -0
- package/src/modules/access/access-control.interface.ts +22 -0
- package/src/modules/access/access-control.service.ts +138 -15
- package/src/modules/access/access.routes.ts +22 -6
- package/src/modules/agent-guide/__tests__/agent-guide.test.ts +22 -1
- package/src/modules/agent-instructions/shared-file-rules.ts +1 -1
- package/src/modules/audit/__tests__/agent-audit.service.test.ts +78 -1
- package/src/modules/audit/__tests__/audit.routes.test.ts +43 -5
- package/src/modules/audit/agent-audit.service.ts +66 -6
- package/src/modules/audit/audit.contract.ts +62 -10
- package/src/modules/audit/audit.routes.ts +14 -12
- package/src/modules/audit/request-audit.ts +28 -13
- package/src/modules/database/core-schema.ts +15 -6
- package/src/modules/diff/__tests__/diff.service.seed-atomicity.test.ts +2 -1
- package/src/modules/diff/__tests__/diff.service.test.ts +2 -1
- package/src/modules/diff/__tests__/diff.service.worktree.test.ts +76 -0
- package/src/modules/diff/diff.service.ts +6 -4
- package/src/modules/kb-fs/__tests__/git-dir.test.ts +77 -0
- package/src/modules/kb-fs/__tests__/mutex.canonical.test.ts +57 -0
- package/src/modules/kb-fs/__tests__/ref-files.test.ts +338 -0
- package/src/modules/kb-fs/git-dir.ts +53 -0
- package/src/modules/kb-fs/index.ts +3 -0
- package/src/modules/kb-fs/locking-filesystem.ts +3 -12
- package/src/modules/kb-fs/mutex.ts +16 -0
- package/src/modules/kb-fs/ref-files.ts +279 -0
- package/src/modules/mcp/__tests__/mcp-routes-harness.ts +7 -1
- package/src/modules/mcp/__tests__/mcp.routes.page.test.ts +115 -0
- package/src/modules/mcp/__tests__/mcp.surface-cache.test.ts +521 -0
- package/src/modules/mcp/__tests__/shared-definitions.test.ts +28 -0
- package/src/modules/mcp/__tests__/surface-cache.test.ts +127 -0
- package/src/modules/mcp/mcp-auth.middleware.ts +21 -0
- package/src/modules/mcp/mcp.routes.ts +68 -0
- package/src/modules/mcp/mcp.service.ts +315 -51
- package/src/modules/mcp/request-context.ts +34 -0
- package/src/modules/mcp/shared-definitions.ts +121 -0
- package/src/modules/mcp/surface-cache.ts +154 -0
- package/src/modules/plugins/__tests__/teams.routes.test.ts +55 -0
- package/src/modules/plugins/teams.routes.ts +14 -1
- package/src/modules/settings/__tests__/setup.routes.layout-phase.test.ts +2 -2
- package/src/modules/settings/__tests__/setup.routes.managed-phase.test.ts +2 -2
- package/src/modules/tool-auth/internal-token.service.ts +1 -1
- package/src/modules/tool-auth/tool-auth.middleware.ts +1 -2
- package/src/modules/tool-helpers/__tests__/branch-declaration.test.ts +2 -2
- package/src/modules/tool-helpers/tool-context.ts +37 -18
- package/src/modules/tool-helpers/tool-handler.ts +2 -2
- package/src/modules/tool-helpers/tool.contract.ts +10 -2
- package/src/modules/tool-registry/__tests__/own-tool-schemas.test.ts +1 -1
- package/src/modules/tool-registry/__tests__/tool-description-length.test.ts +7 -2
- package/src/modules/workflow/__tests__/workflow.routes.history-read-gate.test.ts +23 -12
- package/src/modules/workflow/__tests__/workflow.service.facade.test.ts +250 -4
- package/src/modules/workflow/agent-tools/__tests__/workflow.tools.test.ts +464 -4
- package/src/modules/workflow/agent-tools/change-request-read.tools.ts +4 -22
- package/src/modules/workflow/agent-tools/workflow.tools.ts +462 -1
- package/src/modules/workflow/git/__tests__/git.service.changedPathsMemo.test.ts +175 -0
- package/src/modules/workflow/git/__tests__/git.service.diffFileBetweenBranches.test.ts +76 -11
- package/src/modules/workflow/git/__tests__/git.service.mergeIntoBranch.test.ts +721 -0
- package/src/modules/workflow/git/__tests__/git.service.worktrees.test.ts +284 -0
- package/src/modules/workflow/git/git.service.ts +719 -126
- package/src/modules/workflow/read-on-branch.ts +79 -0
- package/src/modules/workflow/workflow-hooks.ts +1 -1
- package/src/modules/workflow/workflow.routes.ts +21 -39
- package/src/modules/workflow/workflow.service.ts +203 -16
- package/src/modules/workspace/__tests__/agent-downloads.test.ts +2 -2
- package/src/modules/workspace/__tests__/bounded-matcher.test.ts +213 -0
- package/src/modules/workspace/__tests__/git-internals.security.test.ts +22 -7
- package/src/modules/workspace/__tests__/kb-repository.test.ts +481 -0
- package/src/modules/workspace/__tests__/rest-tool-arguments.test.ts +14 -0
- package/src/modules/workspace/__tests__/routine-write-policy.test.ts +0 -11
- package/src/modules/workspace/__tests__/workspace-paths-inside-the-repo.test.ts +2 -2
- package/src/modules/workspace/__tests__/workspace.routes.folder-zip-access.test.ts +2 -2
- package/src/modules/workspace/__tests__/workspace.routes.folders.test.ts +4 -3
- package/src/modules/workspace/__tests__/workspace.service.any-workspace-credentials.test.ts +2 -2
- package/src/modules/workspace/__tests__/workspace.service.ensure-remotes-fetched.test.ts +2 -2
- package/src/modules/workspace/__tests__/workspace.service.forget-clone-races.test.ts +12 -5
- package/src/modules/workspace/__tests__/workspace.service.list-cloned.test.ts +6 -6
- package/src/modules/workspace/__tests__/workspace.service.move-never-overwrites.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.service.read-filter.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.service.replaced-repository.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.service.test.ts +24 -23
- package/src/modules/workspace/__tests__/workspace.service.unknown-branch.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.service.worktrees.test.ts +620 -0
- package/src/modules/workspace/__tests__/workspace.tools.agents-file.test.ts +15 -1
- package/src/modules/workspace/__tests__/workspace.tools.branch-errors.test.ts +71 -5
- package/src/modules/workspace/__tests__/workspace.tools.test.ts +153 -298
- package/src/modules/workspace/agent-access.gate.ts +2 -2
- package/src/modules/workspace/bounded-matcher.ts +328 -0
- package/src/modules/workspace/fetch-instant.ts +13 -0
- package/src/modules/workspace/index.ts +23 -0
- package/src/modules/workspace/kb-repository.contract.ts +124 -0
- package/src/modules/workspace/kb-repository.ts +844 -0
- package/src/modules/workspace/pattern-matcher.contract.ts +69 -0
- package/src/modules/workspace/routine-write-policy.ts +0 -15
- package/src/modules/workspace/set-aside-clone.ts +140 -0
- package/src/modules/workspace/startup/__tests__/kb-startup-runner.degraded.test.ts +3 -2
- package/src/modules/workspace/startup/__tests__/kb-startup-runner.test.ts +12 -10
- package/src/modules/workspace/startup/__tests__/kb-startup-runner.worktrees.test.ts +613 -0
- package/src/modules/workspace/startup/kb-startup-runner.ts +422 -29
- package/src/modules/workspace/startup/steps/__tests__/steps.test.ts +4 -3
- package/src/modules/workspace/workspace.service.ts +247 -169
- package/src/modules/workspace/workspace.tools.ts +179 -365
- package/src/shared/__tests__/no-link-below.test.ts +45 -0
- package/src/shared/git.contract.ts +10 -0
- package/src/shared/no-link-below.ts +29 -0
- package/src/test-setup.ts +5 -0
|
@@ -5,6 +5,9 @@ import { type McpService } from './mcp.service.js';
|
|
|
5
5
|
import type { BevelOAuthProvider } from './oauth/bevel-oauth-provider.js';
|
|
6
6
|
import type { ILlmUsageMeter } from '../tool-auth/llm-usage-meter.js';
|
|
7
7
|
import '../tool-auth/external-api-key.interface.js';
|
|
8
|
+
import './mcp-auth.middleware.js';
|
|
9
|
+
/** The header a page's calls carry: the page's knowledge-base path, URI-encoded. */
|
|
10
|
+
export declare const PAGE_HEADER = "x-bevel-page";
|
|
8
11
|
/**
|
|
9
12
|
* Routes for the remote MCP server + the connection-key management endpoints.
|
|
10
13
|
*
|
|
@@ -19,6 +22,8 @@ import '../tool-auth/external-api-key.interface.js';
|
|
|
19
22
|
*
|
|
20
23
|
* POST /mcp/local-token — exchange an MCP OAuth access token
|
|
21
24
|
* for a loopback internal token
|
|
25
|
+
* POST /mcp/page-refusals — record a page's call its viewer
|
|
26
|
+
* refused (session only)
|
|
22
27
|
*
|
|
23
28
|
* The `/mcp` POST accepts either a connection key or a JWT/OAuth token (see
|
|
24
29
|
* McpAuthMiddleware). The `/mcp/external-api-keys/*` endpoints accept only the JWT —
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.routes.d.ts","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.routes.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAA+B,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAYpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.routes.d.ts","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.routes.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAA+B,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAYpF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,4CAA4C,CAAC;AACpD,OAAO,0BAA0B,CAAC;AA6BlC,oFAAoF;AACpF,eAAO,MAAM,WAAW,iBAAiB,CAAC;AA0B1C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,sBAAsB,EAC7C,iBAAiB,EAAE,cAAc,EACjC,iBAAiB,EAAE,cAAc,EACjC,eAAe,EAAE,cAAc,EAC/B,cAAc,EAAE,oBAAoB,EACpC,aAAa,EAAE,kBAAkB,EAGjC,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,CAyVhB"}
|
|
@@ -6,6 +6,8 @@ import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/
|
|
|
6
6
|
import { InvalidTokenLabelError, TokenNotFoundError, TokenStillActiveError, } from '../tool-auth/external-api-key.errors.js';
|
|
7
7
|
import { MCP_LOOPBACK_TOKEN_TTL_MS } from './mcp.service.js';
|
|
8
8
|
import '../tool-auth/external-api-key.interface.js'; // req.externalApiKeyId augmentation
|
|
9
|
+
import './mcp-auth.middleware.js'; // req.mcpCallerKind augmentation
|
|
10
|
+
import { isPagePath } from '../audit/index.js';
|
|
9
11
|
/** Pull the raw bearer token off an already-authenticated request. */
|
|
10
12
|
function extractBearer(req) {
|
|
11
13
|
const header = req.headers.authorization ?? '';
|
|
@@ -29,6 +31,33 @@ const INTERNAL_ERROR = -32603;
|
|
|
29
31
|
function jsonRpcError(res, status, code, message) {
|
|
30
32
|
res.status(status).json({ jsonrpc: '2.0', error: { code, message }, id: null });
|
|
31
33
|
}
|
|
34
|
+
/** The header a page's calls carry: the page's knowledge-base path, URI-encoded. */
|
|
35
|
+
export const PAGE_HEADER = 'x-bevel-page';
|
|
36
|
+
/**
|
|
37
|
+
* The page a request names, decoded: null when it names none, an error
|
|
38
|
+
* message when it names one it may not.
|
|
39
|
+
*
|
|
40
|
+
* Only a session — the person signed in to the app, whose app is relaying a
|
|
41
|
+
* page's calls — may name one. A connection key, an OAuth token or an
|
|
42
|
+
* internal token belongs to an agent, which has an Audit log row of its own;
|
|
43
|
+
* letting it name a page would let it write its calls into a page's history.
|
|
44
|
+
*/
|
|
45
|
+
function pageOf(req) {
|
|
46
|
+
const raw = req.headers[PAGE_HEADER];
|
|
47
|
+
if (raw === undefined)
|
|
48
|
+
return { page: null };
|
|
49
|
+
if (req.mcpCallerKind !== 'session') {
|
|
50
|
+
return { error: 'X-Bevel-Page names the page a signed-in person\'s call comes from; it is not accepted with this credential.' };
|
|
51
|
+
}
|
|
52
|
+
let page;
|
|
53
|
+
try {
|
|
54
|
+
page = decodeURIComponent(Array.isArray(raw) ? (raw[0] ?? '') : raw);
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return { error: 'X-Bevel-Page is not a URI-encoded path.' };
|
|
58
|
+
}
|
|
59
|
+
return isPagePath(page) ? { page } : { error: 'X-Bevel-Page is not a knowledge-base path.' };
|
|
60
|
+
}
|
|
32
61
|
/**
|
|
33
62
|
* Routes for the remote MCP server + the connection-key management endpoints.
|
|
34
63
|
*
|
|
@@ -43,6 +72,8 @@ function jsonRpcError(res, status, code, message) {
|
|
|
43
72
|
*
|
|
44
73
|
* POST /mcp/local-token — exchange an MCP OAuth access token
|
|
45
74
|
* for a loopback internal token
|
|
75
|
+
* POST /mcp/page-refusals — record a page's call its viewer
|
|
76
|
+
* refused (session only)
|
|
46
77
|
*
|
|
47
78
|
* The `/mcp` POST accepts either a connection key or a JWT/OAuth token (see
|
|
48
79
|
* McpAuthMiddleware). The `/mcp/external-api-keys/*` endpoints accept only the JWT —
|
|
@@ -76,6 +107,11 @@ resourceMetadataUrl) {
|
|
|
76
107
|
* closes — finished, or abandoned by the client mid-call.
|
|
77
108
|
*/
|
|
78
109
|
router.post('/mcp', mcpAuthMiddleware, async (req, res) => {
|
|
110
|
+
const named = pageOf(req);
|
|
111
|
+
if ('error' in named) {
|
|
112
|
+
jsonRpcError(res, 400, TRANSPORT_ERROR, named.error);
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
79
115
|
let server;
|
|
80
116
|
res.on('close', () => {
|
|
81
117
|
// Closing the server closes its transport too.
|
|
@@ -97,6 +133,9 @@ resourceMetadataUrl) {
|
|
|
97
133
|
// The proxy authenticates its loopback calls with the SAME bearer the
|
|
98
134
|
// client used here, so it acts on the request exactly as the caller would.
|
|
99
135
|
bearer: extractBearer(req),
|
|
136
|
+
// The page whose script made the call, when the app relays one —
|
|
137
|
+
// its calls are audited under the page (see pageOf).
|
|
138
|
+
...(named.page ? { page: named.page } : {}),
|
|
100
139
|
}, req.body);
|
|
101
140
|
// The client gave up while the server was being built: nothing to answer.
|
|
102
141
|
if (res.writableEnded || res.destroyed) {
|
|
@@ -138,6 +177,34 @@ resourceMetadataUrl) {
|
|
|
138
177
|
};
|
|
139
178
|
router.get('/mcp', methodNotAllowed);
|
|
140
179
|
router.delete('/mcp', methodNotAllowed);
|
|
180
|
+
/**
|
|
181
|
+
* A call a page asked to make and its viewer refused. It never ran, so it
|
|
182
|
+
* never reached `/mcp`; the app reports it so the Audit log lists it
|
|
183
|
+
* under the page, as refused, beside the page's allowed calls.
|
|
184
|
+
*
|
|
185
|
+
* Body: `{ page, tool, args? }` — the page's knowledge-base path and the
|
|
186
|
+
* tool's name as the page called it. Session only, like the page header.
|
|
187
|
+
*/
|
|
188
|
+
router.post('/mcp/page-refusals', mcpAuthMiddleware, async (req, res) => {
|
|
189
|
+
if (req.mcpCallerKind !== 'session') {
|
|
190
|
+
res.status(403).json({ error: 'Only the app records a page\'s refused calls.' });
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
const body = (req.body ?? {});
|
|
194
|
+
if (typeof body.page !== 'string' || !isPagePath(body.page) || typeof body.tool !== 'string' || !body.tool) {
|
|
195
|
+
res.status(400).json({ error: 'page (a knowledge-base path) and tool are required' });
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
const args = body.args && typeof body.args === 'object' && !Array.isArray(body.args) ? body.args : {};
|
|
199
|
+
try {
|
|
200
|
+
await mcpService.recordPageRefusal({ userId: req.userId, bearer: extractBearer(req) }, body.page, body.tool, args);
|
|
201
|
+
res.status(204).end();
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
log.error('recording a page refusal failed:', { err });
|
|
205
|
+
res.status(500).json({ error: 'Failed to record the refusal' });
|
|
206
|
+
}
|
|
207
|
+
});
|
|
141
208
|
// ── Connection-key management (JWT-only) ───────────────────────────────
|
|
142
209
|
router.get('/mcp/external-api-keys', jwtAuthMiddleware, async (req, res) => {
|
|
143
210
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.routes.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp.routes.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,9 @@ import type { IToolManualService } from '../tool-manuals/tool-manuals.contract.j
|
|
|
8
8
|
import type { SpillStore } from '../workspace/spill-store.js';
|
|
9
9
|
import type { HiddenToolSource } from '../../shared/hidden-tools.js';
|
|
10
10
|
import type { InternalTokenService } from '../tool-auth/internal-token.service.js';
|
|
11
|
-
import type
|
|
11
|
+
import { type IAgentEventRecorder } from '../audit/index.js';
|
|
12
12
|
import { type DownstreamPoolOptions } from './downstream-pool.js';
|
|
13
|
+
import { type SurfaceCacheOptions } from './surface-cache.js';
|
|
13
14
|
import { type AgentPreambleReader } from '../agent-instructions/index.js';
|
|
14
15
|
/**
|
|
15
16
|
* Configuration for the loopback proxy. `loopbackBaseUrl` is the backend's own
|
|
@@ -42,6 +43,11 @@ export interface McpProxyOptions {
|
|
|
42
43
|
kbLayout?: () => KbLayout;
|
|
43
44
|
/** Bounds of the downstream (`mcp.json`) connection pool; defaults are 4h idle / 5000 entries. */
|
|
44
45
|
downstreamPool?: Pick<DownstreamPoolOptions<unknown>, 'idleTtlMs' | 'maxEntries' | 'now'>;
|
|
46
|
+
/**
|
|
47
|
+
* Bounds of the cache of built tool surfaces (see {@link SurfaceCache});
|
|
48
|
+
* defaults are 1h idle / 500 entries. `maxEntries: 0` builds per request.
|
|
49
|
+
*/
|
|
50
|
+
surfaceCache?: SurfaceCacheOptions;
|
|
45
51
|
/**
|
|
46
52
|
* The scope this knowledge base's secrets vault was registered under (see
|
|
47
53
|
* `secrets-variable-loader.ts`), so the UTCP clients built here resolve a
|
|
@@ -63,6 +69,18 @@ export interface McpCaller {
|
|
|
63
69
|
connectionId?: string | null;
|
|
64
70
|
/** The raw bearer the request carried. */
|
|
65
71
|
bearer: string;
|
|
72
|
+
/**
|
|
73
|
+
* The scope the caller's credential grants. Every external credential is
|
|
74
|
+
* write-scoped today; carried so a surface built for one scope can never
|
|
75
|
+
* serve the other once a read-scoped key exists. Absent = `write`.
|
|
76
|
+
*/
|
|
77
|
+
scope?: 'read' | 'write';
|
|
78
|
+
/**
|
|
79
|
+
* The knowledge-base path of the HTML page whose script made this request,
|
|
80
|
+
* as the person signed in to the app. The route accepts it from a session
|
|
81
|
+
* caller only. Its calls are recorded in the Audit log under the page.
|
|
82
|
+
*/
|
|
83
|
+
page?: string | null;
|
|
66
84
|
}
|
|
67
85
|
/**
|
|
68
86
|
* Lifetime of the internal token minted as an OAuth/JWT request's loopback
|
|
@@ -80,20 +98,35 @@ export declare const MCP_LOOPBACK_TOKEN_TTL_MS: number;
|
|
|
80
98
|
* The MCP server is a GENERIC, STATELESS proxy over the UTCP tool surface. It
|
|
81
99
|
* owns no tool logic and no session: every HTTP request gets its own MCP
|
|
82
100
|
* `Server`, built from that request's bearer. When the request needs tools it
|
|
83
|
-
*
|
|
84
|
-
* catalog (over loopback, authenticated as the
|
|
85
|
-
* ONCE behind the REST surface),
|
|
86
|
-
* to the MCP client. A tool call is dispatched straight back through the same
|
|
101
|
+
* uses the caller's `UtcpClient` — pointed at the backend's own
|
|
102
|
+
* `GET /api/agent/all-tools` catalog (over loopback, authenticated as the
|
|
103
|
+
* caller, so ACL filtering lives ONCE behind the REST surface), every tool
|
|
104
|
+
* discovered — and re-exposes each one to the MCP client. A tool call is dispatched straight back through the same
|
|
87
105
|
* REST endpoint the tool's UTCP `tool_call_template` names — so the agent logic,
|
|
88
106
|
* thread continuity, and per-key token metering all live ONCE behind that REST
|
|
89
107
|
* endpoint (`AgentAskService` for `ask`), never duplicated here.
|
|
90
108
|
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
109
|
+
* The client is built once per person, caller kind, key scope and catalog
|
|
110
|
+
* revision, and reused until one of those changes (see {@link SurfaceCache}):
|
|
111
|
+
* the revision is the fingerprint `hexis-mcp` already polls, so a `.tool`
|
|
112
|
+
* added, edited or put out of the caller's reach is a new revision and a new
|
|
113
|
+
* build, while a note saved anywhere is not. A secret changing evicts the
|
|
114
|
+
* person's clients (a shared one, everyone's). Building cost a full catalog
|
|
115
|
+
* fetch and discovery per request, which on a slow knowledge base was the
|
|
116
|
+
* difference between an answer and a client's discovery timeout.
|
|
117
|
+
*
|
|
118
|
+
* A cached client carries no request's bearer. Each request brings its own,
|
|
119
|
+
* through the request context (see `request-context.ts`): the
|
|
120
|
+
* platform-hosted manuals read it at call time, so a connection key's metering
|
|
121
|
+
* and audit stay its own, a revoked key fails on its next request while the
|
|
122
|
+
* person's client stays warm for their other key, and a token minted for one
|
|
123
|
+
* request never has to outlive it. The cache holds references and nothing the
|
|
124
|
+
* process could not rebuild, so a restart between two requests is still
|
|
125
|
+
* undetectable by the client: the first request after it rebuilds.
|
|
93
126
|
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
127
|
+
* Tool definitions are held once for every client that discovered the same
|
|
128
|
+
* ones (see {@link SharedDefinitions}), so hundreds of warm clients of one
|
|
129
|
+
* catalog cost one catalog's worth of schemas and descriptions.
|
|
97
130
|
*
|
|
98
131
|
* The one exception to "nothing between requests" is proxied third-party MCP
|
|
99
132
|
* servers (`mcp` manuals): those are session-ful by nature, so their
|
|
@@ -159,6 +192,8 @@ export declare class McpService {
|
|
|
159
192
|
*/
|
|
160
193
|
private readonly toolSchemas;
|
|
161
194
|
private readonly downstream;
|
|
195
|
+
private readonly surfaces;
|
|
196
|
+
private readonly definitions;
|
|
162
197
|
constructor(opts: McpProxyOptions, secretsVault?: ISecretsVaultService | undefined, toolManuals?: IToolManualService | undefined, internalTokens?: InternalTokenService | undefined, revokeOAuthAccess?: ((bearer: string) => Promise<void>) | undefined, auditRecorder?: IAgentEventRecorder | undefined,
|
|
163
198
|
/**
|
|
164
199
|
* The MCP Apps this deployment serves — the views a tool's `_meta` names
|
|
@@ -178,10 +213,12 @@ export declare class McpService {
|
|
|
178
213
|
* A secret changed — wired to the secrets vault's mutation listener.
|
|
179
214
|
* `null` = a shared secret changed (affects everyone).
|
|
180
215
|
*
|
|
181
|
-
*
|
|
182
|
-
* just-repaired credential is retried on the very next request)
|
|
183
|
-
* downstream connections (dialed and discovered with the old credential)
|
|
184
|
-
*
|
|
216
|
+
* Three things were built from the old value: remembered manual failures (so
|
|
217
|
+
* a just-repaired credential is retried on the very next request), pooled
|
|
218
|
+
* downstream connections (dialed and discovered with the old credential),
|
|
219
|
+
* and cached surfaces (whose tools, and whose list of manuals waiting on a
|
|
220
|
+
* sign-in, were decided with it). All are dropped; the next request
|
|
221
|
+
* rebuilds whatever it needs.
|
|
185
222
|
*/
|
|
186
223
|
onSecretsChanged(userId: string | null): void;
|
|
187
224
|
/**
|
|
@@ -205,17 +242,55 @@ export declare class McpService {
|
|
|
205
242
|
* Cheap by construction: nothing is fetched up front except what the
|
|
206
243
|
* request's own messages need. The agent instructions are read only when the
|
|
207
244
|
* request carries an `initialize` (the only place they ride); the tool
|
|
208
|
-
*
|
|
209
|
-
*
|
|
245
|
+
* surface is looked up on the first handler that needs it — the caller's
|
|
246
|
+
* cached one, or a fresh build — and shared by every message of the request
|
|
247
|
+
* (a JSON-RPC batch).
|
|
210
248
|
*/
|
|
211
249
|
createRequestServer(caller: McpCaller, messages: unknown): Promise<Server>;
|
|
212
250
|
/**
|
|
213
|
-
*
|
|
214
|
-
*
|
|
251
|
+
* Record that the person viewing `page` refused it a call: the page asked to
|
|
252
|
+
* write, the app asked them, and they answered Deny. Nothing ran, so the
|
|
253
|
+
* call never reached this server as a `tools/call`; the app reports it here
|
|
254
|
+
* so the Audit log shows the page's attempt beside its allowed calls.
|
|
255
|
+
*
|
|
256
|
+
* The tool is named the way the page named it (its MCP name) and recorded
|
|
257
|
+
* the way that call would have been: through the person's surface, which
|
|
258
|
+
* the page's earlier calls have normally left warm.
|
|
259
|
+
*/
|
|
260
|
+
recordPageRefusal(caller: Pick<McpCaller, 'userId' | 'bearer' | 'scope'>, page: string, toolName: string, args: Record<string, unknown>): Promise<void>;
|
|
261
|
+
/**
|
|
262
|
+
* The caller's tool surface: the one cached for their catalog revision, or
|
|
263
|
+
* a fresh build that is then cached.
|
|
264
|
+
*
|
|
265
|
+
* The key is the person, the kind of caller (a connection key, or a person
|
|
266
|
+
* through OAuth or their session — the latter two reach the same loopback
|
|
267
|
+
* identity), the credential's scope, and the catalog revision. The revision
|
|
268
|
+
* is asked for on every request, with the request's own bearer, so it is
|
|
269
|
+
* the caller's CURRENT catalog that picks the surface: a manual released,
|
|
270
|
+
* edited or put out of their reach moves it, and the request builds anew.
|
|
215
271
|
*
|
|
216
|
-
*
|
|
217
|
-
*
|
|
218
|
-
*
|
|
272
|
+
* When the revision cannot be read the request builds a surface of its own
|
|
273
|
+
* and keeps it to itself — the per-request behaviour this replaced, never a
|
|
274
|
+
* surface it cannot tell is current.
|
|
275
|
+
*/
|
|
276
|
+
private surfaceFor;
|
|
277
|
+
/**
|
|
278
|
+
* The caller's catalog revision (`GET /api/agent/catalog-revision`, the one
|
|
279
|
+
* `hexis-mcp` polls), read with their bearer; null when it cannot be read.
|
|
280
|
+
* A deployment or a test that does not serve the route answers 404, which
|
|
281
|
+
* is not worth a line in the log; anything else is.
|
|
282
|
+
*/
|
|
283
|
+
private fetchCatalogRevision;
|
|
284
|
+
/**
|
|
285
|
+
* Build a tool surface: catalog over loopback, a UTCP client, every manual
|
|
286
|
+
* registered (pooled for `mcp` ones), tools flattened, definitions shared.
|
|
287
|
+
*
|
|
288
|
+
* Runs inside the request that asked for it, whose bearer the knowledge
|
|
289
|
+
* base's discovery reads; the client it builds keeps none of it.
|
|
290
|
+
*
|
|
291
|
+
* Logs one line with the time each half took and whether it was a cache
|
|
292
|
+
* miss, so a build is measured rather than assumed, and a log that shows
|
|
293
|
+
* one line for two requests shows the second was served warm.
|
|
219
294
|
*/
|
|
220
295
|
private buildSurface;
|
|
221
296
|
/**
|
|
@@ -252,7 +327,7 @@ export declare class McpService {
|
|
|
252
327
|
/** The KB manual's discovery template — the fallback if `all-tools` is unavailable. */
|
|
253
328
|
private kbManualTemplate;
|
|
254
329
|
/**
|
|
255
|
-
* One `CodeModeUtcpClient` per
|
|
330
|
+
* One `CodeModeUtcpClient` per surface. Reserved `API_URL`/`CONNECTION_KEY` are
|
|
256
331
|
* seeded (namespaced) ONLY for Bevel-hosted manuals — the KB manual and inline
|
|
257
332
|
* `.tool` sub-manuals, whose discovery template targets the loopback (`${API_URL}`).
|
|
258
333
|
* Third-party http/mcp `.tool`s point at arbitrary user URLs, so we must NOT seed
|
|
@@ -260,9 +335,14 @@ export declare class McpService {
|
|
|
260
335
|
* would otherwise exfiltrate the caller's token to its own endpoint. Tool
|
|
261
336
|
* `${SECRET}` refs resolve lazily via the per-user `bevel-secrets` loader.
|
|
262
337
|
*
|
|
263
|
-
*
|
|
264
|
-
*
|
|
265
|
-
*
|
|
338
|
+
* `CONNECTION_KEY` is seeded as a placeholder and bound to the request
|
|
339
|
+
* context (see {@link bindRequestBearer}): the client is shared by the
|
|
340
|
+
* person's requests, and each call carries the bearer of the request it
|
|
341
|
+
* belongs to.
|
|
342
|
+
*
|
|
343
|
+
* Not `close()`d: a client holds no connection of its own (its `mcp`
|
|
344
|
+
* manuals route to the pool, so its own `mcp` protocol instance never opens
|
|
345
|
+
* a session), and dropping the reference is the whole teardown.
|
|
266
346
|
*/
|
|
267
347
|
private buildClient;
|
|
268
348
|
/**
|
|
@@ -277,8 +357,8 @@ export declare class McpService {
|
|
|
277
357
|
* pool (see {@link attachDownstream}).
|
|
278
358
|
*
|
|
279
359
|
* Failures are memoized per (user, manual definition) for a few minutes (see
|
|
280
|
-
* {@link ManualFailureMemo}):
|
|
281
|
-
* manual with a broken credential (expired OAuth, revoked key) would
|
|
360
|
+
* {@link ManualFailureMemo}): a surface is rebuilt when its catalog
|
|
361
|
+
* revision or the caller's secrets change (see {@link RequestSurface.degraded}), and a manual with a broken credential (expired OAuth, revoked key) would
|
|
282
362
|
* otherwise re-dial its provider on every single one. The definition's
|
|
283
363
|
* fingerprint is part of the key, so a manual edited after a failure (a
|
|
284
364
|
* corrected `mcp.json` URL) is tried on the very next request.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.service.d.ts","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAgBnE,OAAO,YAAY,CAAC;AACpB,OAAO,WAAW,CAAC;AASnB,OAAO,EAeL,KAAK,cAAc,EAIpB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,4CAA4C,CAAC;AAEpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mcp.service.d.ts","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"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"}
|