@loop_ouroboros/mcp-hub-lite 1.0.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/CHANGELOG.md +228 -0
- package/LICENSE +21 -0
- package/README.md +354 -0
- package/dist/client/assets/HomeView-f901HeKw.js +1 -0
- package/dist/client/assets/ResourceDetailView-BdOaL_-o.css +1 -0
- package/dist/client/assets/ResourceDetailView-Bz66ZjfY.js +1 -0
- package/dist/client/assets/ResourcesView-CjMklkyv.css +1 -0
- package/dist/client/assets/ResourcesView-lI_fItfA.js +1 -0
- package/dist/client/assets/ServerDashboard-7_8Og9JJ.css +1 -0
- package/dist/client/assets/ServerDashboard-Bgx8WVkx.js +2 -0
- package/dist/client/assets/ServerListView-Bws09jNR.css +1 -0
- package/dist/client/assets/ServerListView-CP6Ffkfx.js +30 -0
- package/dist/client/assets/ServerStatusTags.vue_vue_type_script_setup_true_lang-BHiTFM7-.js +1 -0
- package/dist/client/assets/SessionsView-D68qKR4D.js +1 -0
- package/dist/client/assets/SettingsView-BPYfO9BE.js +1 -0
- package/dist/client/assets/ToolCallDialog-Br8FNebN.js +1 -0
- package/dist/client/assets/ToolCallDialog-C7eh7jHE.css +1 -0
- package/dist/client/assets/ToolsView-B6hUiR43.js +1 -0
- package/dist/client/assets/ToolsView-BLnU8cV6.css +1 -0
- package/dist/client/assets/_baseClone-DCmK847M.js +1 -0
- package/dist/client/assets/_plugin-vue_export-helper-DlAUqK2U.js +1 -0
- package/dist/client/assets/el-form-item-BVMLpmVC.css +1 -0
- package/dist/client/assets/el-form-item-DM0q2hmO.js +12 -0
- package/dist/client/assets/el-input-BtI9NECe.js +1 -0
- package/dist/client/assets/el-input-CmuHb8HS.css +1 -0
- package/dist/client/assets/el-loading-CChNmKeI.js +1 -0
- package/dist/client/assets/el-loading-bpKhqqQq.css +1 -0
- package/dist/client/assets/el-overlay-B2ZKM6Up.css +1 -0
- package/dist/client/assets/el-overlay-lZZbPmsX.js +1 -0
- package/dist/client/assets/el-select-BXztu2b5.js +1 -0
- package/dist/client/assets/el-select-C0U_l4IZ.css +1 -0
- package/dist/client/assets/el-tab-pane-CnNoQHsR.css +1 -0
- package/dist/client/assets/el-tab-pane-Dy9ruaEX.js +1 -0
- package/dist/client/assets/el-table-column-98UyVgBH.js +1 -0
- package/dist/client/assets/el-table-column-T_mV9jNw.css +1 -0
- package/dist/client/assets/el-tag-B5lLT51E.js +1 -0
- package/dist/client/assets/el-tag-DjxZVOpb.css +1 -0
- package/dist/client/assets/event-BB_Ol6Sd.js +1 -0
- package/dist/client/assets/index-BgKcmWJr.js +1 -0
- package/dist/client/assets/index-BsDWtoIl.css +1 -0
- package/dist/client/assets/index-BzQXG7no.js +1 -0
- package/dist/client/assets/index-CSTs2jYk.js +2 -0
- package/dist/client/assets/omit-Bx5HJNV_.js +1 -0
- package/dist/client/assets/raf-B9VDMtMF.js +1 -0
- package/dist/client/assets/typescript-Bp3YSIOJ.js +1 -0
- package/dist/client/assets/vnode-B8aJx8u4.js +1 -0
- package/dist/client/assets/vue-vendor-6ny5zj9i.js +3 -0
- package/dist/client/index.html +15 -0
- package/dist/server/shared/index.d.ts +3 -0
- package/dist/server/shared/index.d.ts.map +1 -0
- package/dist/server/shared/index.js +2 -0
- package/dist/server/shared/models/index.d.ts +4 -0
- package/dist/server/shared/models/index.d.ts.map +1 -0
- package/dist/server/shared/models/index.js +3 -0
- package/dist/server/shared/models/resource.model.d.ts +8 -0
- package/dist/server/shared/models/resource.model.d.ts.map +1 -0
- package/dist/server/shared/models/resource.model.js +1 -0
- package/dist/server/shared/models/server.model.d.ts +57 -0
- package/dist/server/shared/models/server.model.d.ts.map +1 -0
- package/dist/server/shared/models/server.model.js +1 -0
- package/dist/server/shared/models/session.model.d.ts +73 -0
- package/dist/server/shared/models/session.model.d.ts.map +1 -0
- package/dist/server/shared/models/session.model.js +70 -0
- package/dist/server/shared/models/tool.model.d.ts +22 -0
- package/dist/server/shared/models/tool.model.d.ts.map +1 -0
- package/dist/server/shared/models/tool.model.js +1 -0
- package/dist/server/shared/types/client.types.d.ts +35 -0
- package/dist/server/shared/types/client.types.d.ts.map +1 -0
- package/dist/server/shared/types/client.types.js +5 -0
- package/dist/server/shared/types/common.types.d.ts +5 -0
- package/dist/server/shared/types/common.types.d.ts.map +1 -0
- package/dist/server/shared/types/common.types.js +2 -0
- package/dist/server/shared/types/index.d.ts +4 -0
- package/dist/server/shared/types/index.d.ts.map +1 -0
- package/dist/server/shared/types/index.js +3 -0
- package/dist/server/shared/types/session.types.d.ts +15 -0
- package/dist/server/shared/types/session.types.d.ts.map +1 -0
- package/dist/server/shared/types/session.types.js +5 -0
- package/dist/server/shared/types/websocket.types.d.ts +177 -0
- package/dist/server/shared/types/websocket.types.d.ts.map +1 -0
- package/dist/server/shared/types/websocket.types.js +25 -0
- package/dist/server/src/api/mcp/debug-response-wrapper.d.ts +13 -0
- package/dist/server/src/api/mcp/debug-response-wrapper.d.ts.map +1 -0
- package/dist/server/src/api/mcp/debug-response-wrapper.js +271 -0
- package/dist/server/src/api/mcp/gateway.d.ts +14 -0
- package/dist/server/src/api/mcp/gateway.d.ts.map +1 -0
- package/dist/server/src/api/mcp/gateway.js +116 -0
- package/dist/server/src/api/mcp/session-context-extractor.d.ts +47 -0
- package/dist/server/src/api/mcp/session-context-extractor.d.ts.map +1 -0
- package/dist/server/src/api/mcp/session-context-extractor.js +127 -0
- package/dist/server/src/api/mcp/sse-stream-manager.d.ts +13 -0
- package/dist/server/src/api/mcp/sse-stream-manager.d.ts.map +1 -0
- package/dist/server/src/api/mcp/sse-stream-manager.js +40 -0
- package/dist/server/src/api/web/clients.d.ts +30 -0
- package/dist/server/src/api/web/clients.d.ts.map +1 -0
- package/dist/server/src/api/web/clients.js +41 -0
- package/dist/server/src/api/web/config.d.ts +21 -0
- package/dist/server/src/api/web/config.d.ts.map +1 -0
- package/dist/server/src/api/web/config.js +119 -0
- package/dist/server/src/api/web/health.d.ts +21 -0
- package/dist/server/src/api/web/health.d.ts.map +1 -0
- package/dist/server/src/api/web/health.js +24 -0
- package/dist/server/src/api/web/hub-tools.d.ts +30 -0
- package/dist/server/src/api/web/hub-tools.d.ts.map +1 -0
- package/dist/server/src/api/web/hub-tools.js +202 -0
- package/dist/server/src/api/web/logs.d.ts +30 -0
- package/dist/server/src/api/web/logs.d.ts.map +1 -0
- package/dist/server/src/api/web/logs.js +141 -0
- package/dist/server/src/api/web/mcp-status.d.ts +29 -0
- package/dist/server/src/api/web/mcp-status.d.ts.map +1 -0
- package/dist/server/src/api/web/mcp-status.js +126 -0
- package/dist/server/src/api/web/resources.d.ts +28 -0
- package/dist/server/src/api/web/resources.d.ts.map +1 -0
- package/dist/server/src/api/web/resources.js +93 -0
- package/dist/server/src/api/web/search.d.ts +26 -0
- package/dist/server/src/api/web/search.d.ts.map +1 -0
- package/dist/server/src/api/web/search.js +62 -0
- package/dist/server/src/api/web/servers.d.ts +33 -0
- package/dist/server/src/api/web/servers.d.ts.map +1 -0
- package/dist/server/src/api/web/servers.js +235 -0
- package/dist/server/src/api/web/sessions.d.ts +29 -0
- package/dist/server/src/api/web/sessions.d.ts.map +1 -0
- package/dist/server/src/api/web/sessions.js +104 -0
- package/dist/server/src/api/ws/events.d.ts +29 -0
- package/dist/server/src/api/ws/events.d.ts.map +1 -0
- package/dist/server/src/api/ws/events.js +44 -0
- package/dist/server/src/api/ws/ws-handler.d.ts +83 -0
- package/dist/server/src/api/ws/ws-handler.d.ts.map +1 -0
- package/dist/server/src/api/ws/ws-handler.js +217 -0
- package/dist/server/src/app.d.ts +24 -0
- package/dist/server/src/app.d.ts.map +1 -0
- package/dist/server/src/app.js +108 -0
- package/dist/server/src/cli/commands/list.d.ts +71 -0
- package/dist/server/src/cli/commands/list.d.ts.map +1 -0
- package/dist/server/src/cli/commands/list.js +97 -0
- package/dist/server/src/cli/commands/restart.d.ts +42 -0
- package/dist/server/src/cli/commands/restart.d.ts.map +1 -0
- package/dist/server/src/cli/commands/restart.js +61 -0
- package/dist/server/src/cli/commands/start.d.ts +43 -0
- package/dist/server/src/cli/commands/start.d.ts.map +1 -0
- package/dist/server/src/cli/commands/start.js +160 -0
- package/dist/server/src/cli/commands/status.d.ts +39 -0
- package/dist/server/src/cli/commands/status.d.ts.map +1 -0
- package/dist/server/src/cli/commands/status.js +164 -0
- package/dist/server/src/cli/commands/stop.d.ts +34 -0
- package/dist/server/src/cli/commands/stop.d.ts.map +1 -0
- package/dist/server/src/cli/commands/stop.js +47 -0
- package/dist/server/src/cli/commands/ui.d.ts +44 -0
- package/dist/server/src/cli/commands/ui.d.ts.map +1 -0
- package/dist/server/src/cli/commands/ui.js +95 -0
- package/dist/server/src/cli/index.d.ts +62 -0
- package/dist/server/src/cli/index.d.ts.map +1 -0
- package/dist/server/src/cli/index.js +88 -0
- package/dist/server/src/cli/parse-args.d.ts +108 -0
- package/dist/server/src/cli/parse-args.d.ts.map +1 -0
- package/dist/server/src/cli/parse-args.js +131 -0
- package/dist/server/src/cli/server.d.ts +171 -0
- package/dist/server/src/cli/server.d.ts.map +1 -0
- package/dist/server/src/cli/server.js +246 -0
- package/dist/server/src/config/config-change-logger.d.ts +16 -0
- package/dist/server/src/config/config-change-logger.d.ts.map +1 -0
- package/dist/server/src/config/config-change-logger.js +43 -0
- package/dist/server/src/config/config-loader.d.ts +22 -0
- package/dist/server/src/config/config-loader.d.ts.map +1 -0
- package/dist/server/src/config/config-loader.js +66 -0
- package/dist/server/src/config/config-manager.d.ts +158 -0
- package/dist/server/src/config/config-manager.d.ts.map +1 -0
- package/dist/server/src/config/config-manager.js +246 -0
- package/dist/server/src/config/config-saver.d.ts +16 -0
- package/dist/server/src/config/config-saver.d.ts.map +1 -0
- package/dist/server/src/config/config-saver.js +28 -0
- package/dist/server/src/config/config.schema.d.ts +108 -0
- package/dist/server/src/config/config.schema.d.ts.map +1 -0
- package/dist/server/src/config/config.schema.js +103 -0
- package/dist/server/src/config/server-config-manager.d.ts +74 -0
- package/dist/server/src/config/server-config-manager.d.ts.map +1 -0
- package/dist/server/src/config/server-config-manager.js +157 -0
- package/dist/server/src/config/type-converter.d.ts +13 -0
- package/dist/server/src/config/type-converter.d.ts.map +1 -0
- package/dist/server/src/config/type-converter.js +37 -0
- package/dist/server/src/index.d.ts +3 -0
- package/dist/server/src/index.d.ts.map +1 -0
- package/dist/server/src/index.js +352 -0
- package/dist/server/src/models/event.model.d.ts +106 -0
- package/dist/server/src/models/event.model.d.ts.map +1 -0
- package/dist/server/src/models/event.model.js +5 -0
- package/dist/server/src/models/server.model.d.ts +19 -0
- package/dist/server/src/models/server.model.d.ts.map +1 -0
- package/dist/server/src/models/server.model.js +1 -0
- package/dist/server/src/models/system-tools.constants.d.ts +73 -0
- package/dist/server/src/models/system-tools.constants.d.ts.map +1 -0
- package/dist/server/src/models/system-tools.constants.js +31 -0
- package/dist/server/src/models/types.d.ts +84 -0
- package/dist/server/src/models/types.d.ts.map +1 -0
- package/dist/server/src/models/types.js +67 -0
- package/dist/server/src/pid/file.d.ts +26 -0
- package/dist/server/src/pid/file.d.ts.map +1 -0
- package/dist/server/src/pid/file.js +68 -0
- package/dist/server/src/pid/manager.d.ts +98 -0
- package/dist/server/src/pid/manager.d.ts.map +1 -0
- package/dist/server/src/pid/manager.js +158 -0
- package/dist/server/src/pid/types.d.ts +13 -0
- package/dist/server/src/pid/types.d.ts.map +1 -0
- package/dist/server/src/pid/types.js +4 -0
- package/dist/server/src/server/dev-server.d.ts +2 -0
- package/dist/server/src/server/dev-server.d.ts.map +1 -0
- package/dist/server/src/server/dev-server.js +171 -0
- package/dist/server/src/server/runner.d.ts +57 -0
- package/dist/server/src/server/runner.d.ts.map +1 -0
- package/dist/server/src/server/runner.js +163 -0
- package/dist/server/src/services/client-tracker.service.d.ts +132 -0
- package/dist/server/src/services/client-tracker.service.d.ts.map +1 -0
- package/dist/server/src/services/client-tracker.service.js +203 -0
- package/dist/server/src/services/connection/connection-manager.d.ts +478 -0
- package/dist/server/src/services/connection/connection-manager.d.ts.map +1 -0
- package/dist/server/src/services/connection/connection-manager.js +929 -0
- package/dist/server/src/services/connection/index.d.ts +6 -0
- package/dist/server/src/services/connection/index.d.ts.map +1 -0
- package/dist/server/src/services/connection/index.js +4 -0
- package/dist/server/src/services/connection/tool-cache.d.ts +122 -0
- package/dist/server/src/services/connection/tool-cache.d.ts.map +1 -0
- package/dist/server/src/services/connection/tool-cache.js +202 -0
- package/dist/server/src/services/connection/types.d.ts +30 -0
- package/dist/server/src/services/connection/types.d.ts.map +1 -0
- package/dist/server/src/services/connection/types.js +1 -0
- package/dist/server/src/services/event-bus.service.d.ts +169 -0
- package/dist/server/src/services/event-bus.service.d.ts.map +1 -0
- package/dist/server/src/services/event-bus.service.js +200 -0
- package/dist/server/src/services/gateway/gateway.service.d.ts +61 -0
- package/dist/server/src/services/gateway/gateway.service.d.ts.map +1 -0
- package/dist/server/src/services/gateway/gateway.service.js +107 -0
- package/dist/server/src/services/gateway/index.d.ts +8 -0
- package/dist/server/src/services/gateway/index.d.ts.map +1 -0
- package/dist/server/src/services/gateway/index.js +6 -0
- package/dist/server/src/services/gateway/log-formatter.d.ts +26 -0
- package/dist/server/src/services/gateway/log-formatter.d.ts.map +1 -0
- package/dist/server/src/services/gateway/log-formatter.js +66 -0
- package/dist/server/src/services/gateway/request-handlers/call-tool-handler.d.ts +13 -0
- package/dist/server/src/services/gateway/request-handlers/call-tool-handler.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/call-tool-handler.js +131 -0
- package/dist/server/src/services/gateway/request-handlers/index.d.ts +9 -0
- package/dist/server/src/services/gateway/request-handlers/index.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/index.js +8 -0
- package/dist/server/src/services/gateway/request-handlers/initialize-handler.d.ts +11 -0
- package/dist/server/src/services/gateway/request-handlers/initialize-handler.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/initialize-handler.js +85 -0
- package/dist/server/src/services/gateway/request-handlers/resources-handler.d.ts +11 -0
- package/dist/server/src/services/gateway/request-handlers/resources-handler.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/resources-handler.js +56 -0
- package/dist/server/src/services/gateway/request-handlers/system-tools-handler.d.ts +11 -0
- package/dist/server/src/services/gateway/request-handlers/system-tools-handler.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/system-tools-handler.js +228 -0
- package/dist/server/src/services/gateway/request-handlers/tools-handler.d.ts +11 -0
- package/dist/server/src/services/gateway/request-handlers/tools-handler.d.ts.map +1 -0
- package/dist/server/src/services/gateway/request-handlers/tools-handler.js +79 -0
- package/dist/server/src/services/gateway/tool-list-generator.d.ts +23 -0
- package/dist/server/src/services/gateway/tool-list-generator.d.ts.map +1 -0
- package/dist/server/src/services/gateway/tool-list-generator.js +115 -0
- package/dist/server/src/services/gateway/types.d.ts +27 -0
- package/dist/server/src/services/gateway/types.d.ts.map +1 -0
- package/dist/server/src/services/gateway/types.js +4 -0
- package/dist/server/src/services/gateway.service.d.ts +7 -0
- package/dist/server/src/services/gateway.service.d.ts.map +1 -0
- package/dist/server/src/services/gateway.service.js +6 -0
- package/dist/server/src/services/hub-manager.service.d.ts +299 -0
- package/dist/server/src/services/hub-manager.service.d.ts.map +1 -0
- package/dist/server/src/services/hub-manager.service.js +413 -0
- package/dist/server/src/services/hub-tools/index.d.ts +10 -0
- package/dist/server/src/services/hub-tools/index.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/index.js +6 -0
- package/dist/server/src/services/hub-tools/resource-generator.d.ts +63 -0
- package/dist/server/src/services/hub-tools/resource-generator.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/resource-generator.js +141 -0
- package/dist/server/src/services/hub-tools/server-selector.d.ts +63 -0
- package/dist/server/src/services/hub-tools/server-selector.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/server-selector.js +108 -0
- package/dist/server/src/services/hub-tools/system-tool-definitions.d.ts +47 -0
- package/dist/server/src/services/hub-tools/system-tool-definitions.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/system-tool-definitions.js +225 -0
- package/dist/server/src/services/hub-tools/tool-search.d.ts +85 -0
- package/dist/server/src/services/hub-tools/tool-search.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/tool-search.js +115 -0
- package/dist/server/src/services/hub-tools/types.d.ts +42 -0
- package/dist/server/src/services/hub-tools/types.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools/types.js +1 -0
- package/dist/server/src/services/hub-tools.service.d.ts +235 -0
- package/dist/server/src/services/hub-tools.service.d.ts.map +1 -0
- package/dist/server/src/services/hub-tools.service.js +457 -0
- package/dist/server/src/services/log-storage.service.d.ts +177 -0
- package/dist/server/src/services/log-storage.service.d.ts.map +1 -0
- package/dist/server/src/services/log-storage.service.js +243 -0
- package/dist/server/src/services/mcp-connection-manager.d.ts +7 -0
- package/dist/server/src/services/mcp-connection-manager.d.ts.map +1 -0
- package/dist/server/src/services/mcp-connection-manager.js +6 -0
- package/dist/server/src/services/mcp-session-manager.d.ts +6 -0
- package/dist/server/src/services/mcp-session-manager.d.ts.map +1 -0
- package/dist/server/src/services/mcp-session-manager.js +4 -0
- package/dist/server/src/services/search/index.d.ts +5 -0
- package/dist/server/src/services/search/index.d.ts.map +1 -0
- package/dist/server/src/services/search/index.js +5 -0
- package/dist/server/src/services/search/search-cache.d.ts +132 -0
- package/dist/server/src/services/search/search-cache.d.ts.map +1 -0
- package/dist/server/src/services/search/search-cache.js +151 -0
- package/dist/server/src/services/search/search-core.service.d.ts +108 -0
- package/dist/server/src/services/search/search-core.service.d.ts.map +1 -0
- package/dist/server/src/services/search/search-core.service.js +187 -0
- package/dist/server/src/services/search/search-scorer.d.ts +54 -0
- package/dist/server/src/services/search/search-scorer.d.ts.map +1 -0
- package/dist/server/src/services/search/search-scorer.js +83 -0
- package/dist/server/src/services/search/types.d.ts +20 -0
- package/dist/server/src/services/search/types.d.ts.map +1 -0
- package/dist/server/src/services/search/types.js +1 -0
- package/dist/server/src/services/session/index.d.ts +6 -0
- package/dist/server/src/services/session/index.d.ts.map +1 -0
- package/dist/server/src/services/session/index.js +4 -0
- package/dist/server/src/services/session/session-manager.d.ts +352 -0
- package/dist/server/src/services/session/session-manager.d.ts.map +1 -0
- package/dist/server/src/services/session/session-manager.js +835 -0
- package/dist/server/src/services/session/types.d.ts +32 -0
- package/dist/server/src/services/session/types.d.ts.map +1 -0
- package/dist/server/src/services/session/types.js +1 -0
- package/dist/server/src/services/simple-search.service.d.ts +67 -0
- package/dist/server/src/services/simple-search.service.d.ts.map +1 -0
- package/dist/server/src/services/simple-search.service.js +82 -0
- package/dist/server/src/services/system-tool-handler.d.ts +10 -0
- package/dist/server/src/services/system-tool-handler.d.ts.map +1 -0
- package/dist/server/src/services/system-tool-handler.js +77 -0
- package/dist/server/src/utils/error-handler.d.ts +18 -0
- package/dist/server/src/utils/error-handler.d.ts.map +1 -0
- package/dist/server/src/utils/error-handler.js +59 -0
- package/dist/server/src/utils/format-utils.d.ts +23 -0
- package/dist/server/src/utils/format-utils.d.ts.map +1 -0
- package/dist/server/src/utils/format-utils.js +58 -0
- package/dist/server/src/utils/index.d.ts +2 -0
- package/dist/server/src/utils/index.d.ts.map +1 -0
- package/dist/server/src/utils/index.js +1 -0
- package/dist/server/src/utils/json-utils.d.ts +82 -0
- package/dist/server/src/utils/json-utils.d.ts.map +1 -0
- package/dist/server/src/utils/json-utils.js +204 -0
- package/dist/server/src/utils/log-rotator.d.ts +223 -0
- package/dist/server/src/utils/log-rotator.d.ts.map +1 -0
- package/dist/server/src/utils/log-rotator.js +306 -0
- package/dist/server/src/utils/logger/dev-logger.d.ts +39 -0
- package/dist/server/src/utils/logger/dev-logger.d.ts.map +1 -0
- package/dist/server/src/utils/logger/dev-logger.js +63 -0
- package/dist/server/src/utils/logger/index.d.ts +36 -0
- package/dist/server/src/utils/logger/index.d.ts.map +1 -0
- package/dist/server/src/utils/logger/index.js +46 -0
- package/dist/server/src/utils/logger/log-colors.d.ts +27 -0
- package/dist/server/src/utils/logger/log-colors.d.ts.map +1 -0
- package/dist/server/src/utils/logger/log-colors.js +41 -0
- package/dist/server/src/utils/logger/log-context.d.ts +13 -0
- package/dist/server/src/utils/logger/log-context.d.ts.map +1 -0
- package/dist/server/src/utils/logger/log-context.js +5 -0
- package/dist/server/src/utils/logger/log-formatter.d.ts +47 -0
- package/dist/server/src/utils/logger/log-formatter.d.ts.map +1 -0
- package/dist/server/src/utils/logger/log-formatter.js +150 -0
- package/dist/server/src/utils/logger/log-modules.d.ts +141 -0
- package/dist/server/src/utils/logger/log-modules.d.ts.map +1 -0
- package/dist/server/src/utils/logger/log-modules.js +81 -0
- package/dist/server/src/utils/logger/log-output.d.ts +68 -0
- package/dist/server/src/utils/logger/log-output.d.ts.map +1 -0
- package/dist/server/src/utils/logger/log-output.js +320 -0
- package/dist/server/src/utils/logger/logger.d.ts +190 -0
- package/dist/server/src/utils/logger/logger.d.ts.map +1 -0
- package/dist/server/src/utils/logger/logger.js +350 -0
- package/dist/server/src/utils/logger.d.ts +12 -0
- package/dist/server/src/utils/logger.d.ts.map +1 -0
- package/dist/server/src/utils/logger.js +12 -0
- package/dist/server/src/utils/mcp-error-handler.d.ts +162 -0
- package/dist/server/src/utils/mcp-error-handler.d.ts.map +1 -0
- package/dist/server/src/utils/mcp-error-handler.js +270 -0
- package/dist/server/src/utils/port-checker.d.ts +16 -0
- package/dist/server/src/utils/port-checker.d.ts.map +1 -0
- package/dist/server/src/utils/port-checker.js +242 -0
- package/dist/server/src/utils/request-context.d.ts +71 -0
- package/dist/server/src/utils/request-context.d.ts.map +1 -0
- package/dist/server/src/utils/request-context.js +73 -0
- package/dist/server/src/utils/tool-args-parser.d.ts +17 -0
- package/dist/server/src/utils/tool-args-parser.d.ts.map +1 -0
- package/dist/server/src/utils/tool-args-parser.js +34 -0
- package/dist/server/src/utils/transports/sse-transport.d.ts +104 -0
- package/dist/server/src/utils/transports/sse-transport.d.ts.map +1 -0
- package/dist/server/src/utils/transports/sse-transport.js +189 -0
- package/dist/server/src/utils/transports/stdio-transport.d.ts +122 -0
- package/dist/server/src/utils/transports/stdio-transport.d.ts.map +1 -0
- package/dist/server/src/utils/transports/stdio-transport.js +324 -0
- package/dist/server/src/utils/transports/streamable-http-transport.d.ts +146 -0
- package/dist/server/src/utils/transports/streamable-http-transport.d.ts.map +1 -0
- package/dist/server/src/utils/transports/streamable-http-transport.js +212 -0
- package/dist/server/src/utils/transports/transport-factory.d.ts +26 -0
- package/dist/server/src/utils/transports/transport-factory.d.ts.map +1 -0
- package/dist/server/src/utils/transports/transport-factory.js +104 -0
- package/dist/server/src/utils/transports/transport.interface.d.ts +35 -0
- package/dist/server/src/utils/transports/transport.interface.d.ts.map +1 -0
- package/dist/server/src/utils/transports/transport.interface.js +1 -0
- package/dist/server/tests/contract/mcp-protocol/initialize.test.d.ts +2 -0
- package/dist/server/tests/contract/mcp-protocol/initialize.test.d.ts.map +1 -0
- package/dist/server/tests/contract/mcp-protocol/initialize.test.js +103 -0
- package/dist/server/tests/contract/mcp-protocol/tools-call.test.d.ts +2 -0
- package/dist/server/tests/contract/mcp-protocol/tools-call.test.d.ts.map +1 -0
- package/dist/server/tests/contract/mcp-protocol/tools-call.test.js +181 -0
- package/dist/server/tests/contract/mcp-protocol/tools-list.test.d.ts +2 -0
- package/dist/server/tests/contract/mcp-protocol/tools-list.test.d.ts.map +1 -0
- package/dist/server/tests/contract/mcp-protocol/tools-list.test.js +155 -0
- package/dist/server/tests/evaluation/evaluation.test.d.ts +2 -0
- package/dist/server/tests/evaluation/evaluation.test.d.ts.map +1 -0
- package/dist/server/tests/evaluation/evaluation.test.js +102 -0
- package/dist/server/tests/helpers/sdk-test-helpers.d.ts +32 -0
- package/dist/server/tests/helpers/sdk-test-helpers.d.ts.map +1 -0
- package/dist/server/tests/helpers/sdk-test-helpers.js +82 -0
- package/dist/server/tests/integration/api/gateway.test.d.ts +2 -0
- package/dist/server/tests/integration/api/gateway.test.d.ts.map +1 -0
- package/dist/server/tests/integration/api/gateway.test.js +366 -0
- package/dist/server/tests/integration/gateway/fault-tolerance.test.d.ts +2 -0
- package/dist/server/tests/integration/gateway/fault-tolerance.test.d.ts.map +1 -0
- package/dist/server/tests/integration/gateway/fault-tolerance.test.js +109 -0
- package/dist/server/tests/integration/gateway/mcp-connection.test.d.ts +2 -0
- package/dist/server/tests/integration/gateway/mcp-connection.test.d.ts.map +1 -0
- package/dist/server/tests/integration/gateway/mcp-connection.test.js +149 -0
- package/dist/server/tests/server.test.d.ts +2 -0
- package/dist/server/tests/server.test.d.ts.map +1 -0
- package/dist/server/tests/server.test.js +95 -0
- package/dist/server/tests/setup.d.ts +7 -0
- package/dist/server/tests/setup.d.ts.map +1 -0
- package/dist/server/tests/setup.js +53 -0
- package/dist/server/tests/types/logger-test-helpers.d.ts +17 -0
- package/dist/server/tests/types/logger-test-helpers.d.ts.map +1 -0
- package/dist/server/tests/types/logger-test-helpers.js +4 -0
- package/dist/server/tests/types/test-helpers.d.ts +27 -0
- package/dist/server/tests/types/test-helpers.d.ts.map +1 -0
- package/dist/server/tests/types/test-helpers.js +4 -0
- package/dist/server/tests/unit/cli/basic-cli.test.d.ts +2 -0
- package/dist/server/tests/unit/cli/basic-cli.test.d.ts.map +1 -0
- package/dist/server/tests/unit/cli/basic-cli.test.js +33 -0
- package/dist/server/tests/unit/cli/cli.test.d.ts +2 -0
- package/dist/server/tests/unit/cli/cli.test.d.ts.map +1 -0
- package/dist/server/tests/unit/cli/cli.test.js +17 -0
- package/dist/server/tests/unit/cli/commands.test.d.ts +2 -0
- package/dist/server/tests/unit/cli/commands.test.d.ts.map +1 -0
- package/dist/server/tests/unit/cli/commands.test.js +75 -0
- package/dist/server/tests/unit/cli/server.test.d.ts +2 -0
- package/dist/server/tests/unit/cli/server.test.d.ts.map +1 -0
- package/dist/server/tests/unit/cli/server.test.js +68 -0
- package/dist/server/tests/unit/server/runner.test.d.ts +2 -0
- package/dist/server/tests/unit/server/runner.test.d.ts.map +1 -0
- package/dist/server/tests/unit/server/runner.test.js +488 -0
- package/dist/server/tests/unit/server/setup.d.ts +2 -0
- package/dist/server/tests/unit/server/setup.d.ts.map +1 -0
- package/dist/server/tests/unit/server/setup.js +21 -0
- package/dist/server/tests/unit/services/gateway-logging.test.d.ts +2 -0
- package/dist/server/tests/unit/services/gateway-logging.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/gateway-logging.test.js +47 -0
- package/dist/server/tests/unit/services/hub-manager-service.test.d.ts +2 -0
- package/dist/server/tests/unit/services/hub-manager-service.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/hub-manager-service.test.js +140 -0
- package/dist/server/tests/unit/services/hub-manager.test.d.ts +2 -0
- package/dist/server/tests/unit/services/hub-manager.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/hub-manager.test.js +98 -0
- package/dist/server/tests/unit/services/hub-tools.service.test.d.ts +2 -0
- package/dist/server/tests/unit/services/hub-tools.service.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/hub-tools.service.test.js +674 -0
- package/dist/server/tests/unit/services/search/search-cache.test.d.ts +2 -0
- package/dist/server/tests/unit/services/search/search-cache.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/search/search-cache.test.js +58 -0
- package/dist/server/tests/unit/services/search/search-core.service.test.d.ts +2 -0
- package/dist/server/tests/unit/services/search/search-core.service.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/search/search-core.service.test.js +84 -0
- package/dist/server/tests/unit/services/search/search-scorer.test.d.ts +2 -0
- package/dist/server/tests/unit/services/search/search-scorer.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/search/search-scorer.test.js +97 -0
- package/dist/server/tests/unit/services/session-manager.test.d.ts +2 -0
- package/dist/server/tests/unit/services/session-manager.test.d.ts.map +1 -0
- package/dist/server/tests/unit/services/session-manager.test.js +481 -0
- package/dist/server/tests/unit/utils/config.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/config.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/config.test.js +634 -0
- package/dist/server/tests/unit/utils/json-utils.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/json-utils.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/json-utils.test.js +296 -0
- package/dist/server/tests/unit/utils/log-rotator.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/log-rotator.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/log-rotator.test.js +296 -0
- package/dist/server/tests/unit/utils/logger.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/logger.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/logger.test.js +462 -0
- package/dist/server/tests/unit/utils/mcp-error-handler.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/mcp-error-handler.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/mcp-error-handler.test.js +163 -0
- package/dist/server/tests/unit/utils/request-context.test.d.ts +2 -0
- package/dist/server/tests/unit/utils/request-context.test.d.ts.map +1 -0
- package/dist/server/tests/unit/utils/request-context.test.js +82 -0
- package/dist/server/vite.config.d.ts +3 -0
- package/dist/server/vite.config.d.ts.map +1 -0
- package/dist/server/vite.config.js +160 -0
- package/dist/server/vitest.config.d.ts +3 -0
- package/dist/server/vitest.config.d.ts.map +1 -0
- package/dist/server/vitest.config.js +53 -0
- package/package.json +113 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { logger } from '../utils/logger.js';
|
|
2
|
+
import { eventBus } from './event-bus.service.js';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import { configManager } from '../config/config-manager.js';
|
|
5
|
+
import { formatDuration } from '../utils/format-utils.js';
|
|
6
|
+
/**
|
|
7
|
+
* Client tracking service that manages client connections and their metadata.
|
|
8
|
+
*
|
|
9
|
+
* This service maintains a registry of connected clients (typically IDEs or other
|
|
10
|
+
* MCP clients) and tracks their connection state, metadata, and workspace roots.
|
|
11
|
+
* It provides automatic cleanup of stale clients after a timeout period and
|
|
12
|
+
* publishes connection/disconnection events via the event bus.
|
|
13
|
+
*
|
|
14
|
+
* The service is primarily used by the MCP session manager to track which clients
|
|
15
|
+
* are connected and maintain their context information for proper session management.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* // Update client information when a new connection is established
|
|
19
|
+
* clientTrackerService.updateClient({
|
|
20
|
+
* sessionId: 'session-123',
|
|
21
|
+
* clientName: 'VS Code',
|
|
22
|
+
* clientVersion: '1.85.0',
|
|
23
|
+
* cwd: '/home/user/project'
|
|
24
|
+
* });
|
|
25
|
+
*
|
|
26
|
+
* // Get all currently connected clients
|
|
27
|
+
* const clients = clientTrackerService.getClients();
|
|
28
|
+
*/
|
|
29
|
+
class ClientTrackerService {
|
|
30
|
+
clients = new Map();
|
|
31
|
+
// Use the same timeout as session manager (default 30 minutes)
|
|
32
|
+
get TIMEOUT_MS() {
|
|
33
|
+
return configManager.getConfig().security.sessionTimeout;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Creates a new client tracker service instance.
|
|
37
|
+
*
|
|
38
|
+
* Initializes the service with automatic periodic cleanup of stale clients
|
|
39
|
+
* every 60 seconds to prevent memory leaks from disconnected clients.
|
|
40
|
+
*/
|
|
41
|
+
constructor() {
|
|
42
|
+
// Periodic cleanup
|
|
43
|
+
setInterval(() => this.cleanup(), 60000);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Updates or creates a client entry with the provided context information.
|
|
47
|
+
*
|
|
48
|
+
* This method is called whenever a client sends a request with context information.
|
|
49
|
+
* It preserves existing client metadata that isn't provided in the new context,
|
|
50
|
+
* ensuring that clients don't lose their previously established information.
|
|
51
|
+
*
|
|
52
|
+
* If this is a new client (not previously tracked), it publishes a 'client-connected'
|
|
53
|
+
* event to notify other services about the new connection.
|
|
54
|
+
*
|
|
55
|
+
* @param context - The client context containing session ID and optional metadata
|
|
56
|
+
* @param context.sessionId - Unique identifier for the client session
|
|
57
|
+
* @param context.clientName - Optional name of the client application
|
|
58
|
+
* @param context.clientVersion - Optional version of the client application
|
|
59
|
+
* @param context.protocolVersion - Optional MCP protocol version
|
|
60
|
+
* @param context.project - Optional project identifier
|
|
61
|
+
* @param context.cwd - Optional current working directory
|
|
62
|
+
* @param context.userAgent - Optional user agent string
|
|
63
|
+
* @param context.ip - Optional client IP address
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* clientTrackerService.updateClient({
|
|
67
|
+
* sessionId: 'session-123',
|
|
68
|
+
* clientName: 'VS Code',
|
|
69
|
+
* clientVersion: '1.85.0',
|
|
70
|
+
* cwd: '/home/user/project'
|
|
71
|
+
* });
|
|
72
|
+
*/
|
|
73
|
+
updateClient(context) {
|
|
74
|
+
const existing = this.clients.get(context.sessionId);
|
|
75
|
+
const clientInfo = {
|
|
76
|
+
...context,
|
|
77
|
+
// Preserve existing info if not provided in new request
|
|
78
|
+
clientName: context.clientName || existing?.clientName,
|
|
79
|
+
clientVersion: context.clientVersion || existing?.clientVersion,
|
|
80
|
+
protocolVersion: context.protocolVersion || existing?.protocolVersion,
|
|
81
|
+
project: context.project || existing?.project,
|
|
82
|
+
cwd: context.cwd || existing?.cwd, // Preserve CWD if not provided in new request (e.g. inferred from roots)
|
|
83
|
+
userAgent: context.userAgent || existing?.userAgent,
|
|
84
|
+
ip: context.ip || existing?.ip,
|
|
85
|
+
lastSeen: Date.now(),
|
|
86
|
+
roots: existing?.roots // Preserve roots if already fetched
|
|
87
|
+
};
|
|
88
|
+
this.clients.set(context.sessionId, clientInfo);
|
|
89
|
+
// If it's a new client, publish connection event
|
|
90
|
+
if (!existing) {
|
|
91
|
+
eventBus.publish('client-connected', {
|
|
92
|
+
timestamp: Date.now(),
|
|
93
|
+
client: clientInfo
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Updates the workspace roots for a specific client session.
|
|
99
|
+
*
|
|
100
|
+
* This method is typically called when a client provides its workspace root
|
|
101
|
+
* directories, which helps determine the client's working directory context.
|
|
102
|
+
* If the client doesn't have a current working directory (cwd) set, it will
|
|
103
|
+
* attempt to infer one from the first root URI in the list.
|
|
104
|
+
*
|
|
105
|
+
* For file:// URIs, it converts them to local file paths using Node.js's
|
|
106
|
+
* fileURLToPath utility. For other URI schemes, it uses the URI directly.
|
|
107
|
+
*
|
|
108
|
+
* @param sessionId - The unique session identifier for the client
|
|
109
|
+
* @param roots - Array of client root objects containing URI information
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* clientTrackerService.updateClientRoots('session-123', [
|
|
113
|
+
* { uri: 'file:///home/user/project' },
|
|
114
|
+
* { uri: 'file:///home/user/other-project' }
|
|
115
|
+
* ]);
|
|
116
|
+
*/
|
|
117
|
+
updateClientRoots(sessionId, roots) {
|
|
118
|
+
const client = this.clients.get(sessionId);
|
|
119
|
+
if (client) {
|
|
120
|
+
client.roots = roots;
|
|
121
|
+
client.lastSeen = Date.now();
|
|
122
|
+
// If CWD is missing, try to infer from roots
|
|
123
|
+
if (!client.cwd && roots.length > 0) {
|
|
124
|
+
// Convert file:// uri to path if possible, or just use URI
|
|
125
|
+
const root = roots[0];
|
|
126
|
+
if (root.uri.startsWith('file://')) {
|
|
127
|
+
try {
|
|
128
|
+
client.cwd = fileURLToPath(root.uri);
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
client.cwd = root.uri;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
client.cwd = root.uri;
|
|
136
|
+
}
|
|
137
|
+
logger.debug(`Inferred CWD for session ${sessionId} from roots: ${client.cwd}`);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Retrieves all currently tracked client information.
|
|
143
|
+
*
|
|
144
|
+
* Returns an array of all active client info objects, including their metadata
|
|
145
|
+
* and connection state. This is useful for monitoring all connected clients
|
|
146
|
+
* or displaying client information in administrative interfaces.
|
|
147
|
+
*
|
|
148
|
+
* @returns Array of ClientInfo objects representing all tracked clients
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* const allClients = clientTrackerService.getClients();
|
|
152
|
+
* console.log(`Currently tracking ${allClients.length} clients`);
|
|
153
|
+
*/
|
|
154
|
+
getClients() {
|
|
155
|
+
return Array.from(this.clients.values());
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Retrieves client information for a specific session ID.
|
|
159
|
+
*
|
|
160
|
+
* Returns the complete client info object for the given session ID, or undefined
|
|
161
|
+
* if no client with that session ID is currently being tracked.
|
|
162
|
+
*
|
|
163
|
+
* @param sessionId - The unique session identifier to look up
|
|
164
|
+
* @returns ClientInfo object if found, undefined otherwise
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* const client = clientTrackerService.getClient('session-123');
|
|
168
|
+
* if (client) {
|
|
169
|
+
* console.log(`Client ${client.clientName} is connected`);
|
|
170
|
+
* }
|
|
171
|
+
*/
|
|
172
|
+
getClient(sessionId) {
|
|
173
|
+
return this.clients.get(sessionId);
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Cleans up stale client entries that haven't been seen recently.
|
|
177
|
+
*
|
|
178
|
+
* This private method is called periodically to remove clients that haven't
|
|
179
|
+
* sent any requests within the timeout period (5 minutes by default). When
|
|
180
|
+
* a client is removed, it publishes a 'client-disconnected' event to notify
|
|
181
|
+
* other services about the disconnection.
|
|
182
|
+
*
|
|
183
|
+
* This prevents memory leaks from accumulating disconnected clients and ensures
|
|
184
|
+
* that the client registry only contains active connections.
|
|
185
|
+
*
|
|
186
|
+
* @private
|
|
187
|
+
*/
|
|
188
|
+
cleanup() {
|
|
189
|
+
const now = Date.now();
|
|
190
|
+
for (const [id, info] of this.clients.entries()) {
|
|
191
|
+
if (now - info.lastSeen > this.TIMEOUT_MS) {
|
|
192
|
+
logger.debug(`Removing stale client: ${id}. Last seen ${formatDuration(now - info.lastSeen)} ago, timeout ${formatDuration(this.TIMEOUT_MS)}`);
|
|
193
|
+
this.clients.delete(id);
|
|
194
|
+
eventBus.publish('client-disconnected', {
|
|
195
|
+
timestamp: Date.now(),
|
|
196
|
+
clientId: id,
|
|
197
|
+
client: info
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
export const clientTrackerService = new ClientTrackerService();
|
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
2
|
+
import type { Tool } from '../../../shared/models/tool.model.js';
|
|
3
|
+
import type { Resource } from '../../../shared/models/resource.model.js';
|
|
4
|
+
import type { ServerConfig } from '../../config/config.schema.js';
|
|
5
|
+
import type { ServerInstanceConfig } from '../../config/config.schema.js';
|
|
6
|
+
import type { ServerStatus } from './types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Manages MCP (Model Context Protocol) server connections and provides a unified interface
|
|
9
|
+
* for tool and resource operations across multiple connected servers.
|
|
10
|
+
*
|
|
11
|
+
* This service handles the complete lifecycle of MCP server connections including:
|
|
12
|
+
* - Establishing connections via various transport protocols (stdio, SSE, HTTP)
|
|
13
|
+
* - Managing client instances and transport layers
|
|
14
|
+
* - Caching tools and resources for performance optimization
|
|
15
|
+
* - Providing both server ID-based and server name-based access patterns
|
|
16
|
+
* - Handling connection events and error recovery
|
|
17
|
+
* - Supporting bidirectional communication for tool execution
|
|
18
|
+
*
|
|
19
|
+
* The manager uses ToolCache for both server ID-level and server name-level
|
|
20
|
+
* operations to optimize different access patterns while ensuring data consistency.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* const manager = new McpConnectionManager();
|
|
25
|
+
* await manager.connect(serverConfig);
|
|
26
|
+
* const tools = await manager.getTools(serverId);
|
|
27
|
+
* const result = await manager.callTool(serverId, 'tool-name', { param: 'value' });
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare class McpConnectionManager {
|
|
31
|
+
private clients;
|
|
32
|
+
private transports;
|
|
33
|
+
private serverStatus;
|
|
34
|
+
private _toolCache;
|
|
35
|
+
private resourceCache;
|
|
36
|
+
constructor();
|
|
37
|
+
/**
|
|
38
|
+
* Establishes a connection to an MCP server using the specified configuration.
|
|
39
|
+
*
|
|
40
|
+
* This method handles the complete connection process including transport creation,
|
|
41
|
+
* client initialization, validation, and automatic tool/resource discovery.
|
|
42
|
+
* It supports multiple transport protocols (stdio, SSE, streamable-http, http)
|
|
43
|
+
* and provides comprehensive error handling with proper status tracking.
|
|
44
|
+
*
|
|
45
|
+
* For bidirectional transports (stdio, streamable-http, http), it automatically
|
|
46
|
+
* fetches and caches available tools and resources upon successful connection.
|
|
47
|
+
* SSE transports are unidirectional and skip this step for performance reasons.
|
|
48
|
+
*
|
|
49
|
+
* The method publishes SERVER_CONNECTED and SERVER_STATUS_CHANGE events upon
|
|
50
|
+
* successful connection, and SERVER_STATUS_CHANGE events with error details
|
|
51
|
+
* on failure.
|
|
52
|
+
*
|
|
53
|
+
* @param {ServerConfig & ServerInstanceConfig} server - Server configuration containing
|
|
54
|
+
* connection details, transport type, and instance-specific parameters
|
|
55
|
+
* @returns {Promise<boolean>} True if connection succeeds, false if it fails
|
|
56
|
+
* @throws {Error} If server ID is missing or required configuration is invalid
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const serverConfig = {
|
|
61
|
+
* id: 'my-server-1',
|
|
62
|
+
* type: 'stdio' as const,
|
|
63
|
+
* command: 'npx my-mcp-server',
|
|
64
|
+
* name: 'My MCP Server'
|
|
65
|
+
* };
|
|
66
|
+
* const success = await manager.connect(serverConfig);
|
|
67
|
+
* if (success) {
|
|
68
|
+
* console.log('Connected successfully');
|
|
69
|
+
* }
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
connect(server: ServerConfig & ServerInstanceConfig): Promise<boolean>;
|
|
73
|
+
/**
|
|
74
|
+
* Disconnects from an MCP server and cleans up all associated resources.
|
|
75
|
+
*
|
|
76
|
+
* This method performs a graceful shutdown by closing the client connection,
|
|
77
|
+
* closing the transport layer, and removing all cached data including tools,
|
|
78
|
+
* resources, and status information. It also updates the server name-level
|
|
79
|
+
* tool cache to maintain consistency across multiple instances of the same server.
|
|
80
|
+
*
|
|
81
|
+
* The method publishes SERVER_DISCONNECTED and SERVER_STATUS_CHANGE events
|
|
82
|
+
* upon completion and handles any errors during the disconnection process
|
|
83
|
+
* without throwing exceptions.
|
|
84
|
+
*
|
|
85
|
+
* @param {string} serverId - Unique identifier of the server instance to disconnect
|
|
86
|
+
* @returns {Promise<void>} Resolves when disconnection is complete
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* await manager.disconnect('my-server-1');
|
|
91
|
+
* console.log('Server disconnected');
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
disconnect(serverId: string): Promise<void>;
|
|
95
|
+
/**
|
|
96
|
+
* Disconnects from all currently connected MCP servers concurrently.
|
|
97
|
+
*
|
|
98
|
+
* This method iterates through all active client connections and calls
|
|
99
|
+
* disconnect() on each one, handling errors individually to ensure
|
|
100
|
+
* that failure to disconnect from one server doesn't prevent disconnection
|
|
101
|
+
* from others. All disconnections are performed in parallel for efficiency.
|
|
102
|
+
*
|
|
103
|
+
* @returns {Promise<void>} Resolves when all disconnection attempts complete
|
|
104
|
+
*
|
|
105
|
+
* @example
|
|
106
|
+
* ```typescript
|
|
107
|
+
* await manager.disconnectAll();
|
|
108
|
+
* console.log('All servers disconnected');
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
111
|
+
disconnectAll(): Promise<void>;
|
|
112
|
+
/**
|
|
113
|
+
* Refreshes the tool cache for a specific server by fetching the latest tool list.
|
|
114
|
+
*
|
|
115
|
+
* This method queries the connected MCP server for its current set of available tools,
|
|
116
|
+
* updates both the server ID-level and server name-level caches, and maintains
|
|
117
|
+
* accurate tool counts in the server status. It handles server name resolution
|
|
118
|
+
* to ensure proper caching across multiple instances of the same server.
|
|
119
|
+
*
|
|
120
|
+
* @param {string} serverId - Unique identifier of the server instance to refresh
|
|
121
|
+
* @returns {Promise<Tool[]>} Array of updated tools with server context
|
|
122
|
+
* @throws {Error} If the server is not connected or tool listing fails
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```typescript
|
|
126
|
+
* const tools = await manager.refreshTools('my-server-1');
|
|
127
|
+
* console.log(`Found ${tools.length} tools`);
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
refreshTools(serverId: string): Promise<Tool[]>;
|
|
131
|
+
/**
|
|
132
|
+
* Refreshes the resource cache for a specific server by fetching available resources.
|
|
133
|
+
*
|
|
134
|
+
* This method queries the connected MCP server for its current set of available resources,
|
|
135
|
+
* handling servers that don't support the resources functionality gracefully by returning
|
|
136
|
+
* an empty array. It updates the resource cache and maintains accurate resource counts
|
|
137
|
+
* in the server status.
|
|
138
|
+
*
|
|
139
|
+
* The method specifically handles "Method not found" errors (MCP error code -32601)
|
|
140
|
+
* which indicate that the server doesn't implement the resources protocol, treating
|
|
141
|
+
* this as a normal case rather than an error.
|
|
142
|
+
*
|
|
143
|
+
* @param {string} serverId - Unique identifier of the server instance to refresh
|
|
144
|
+
* @returns {Promise<Resource[]>} Array of available resources, empty if unsupported
|
|
145
|
+
* @throws {Error} If the server is not connected or resource listing fails unexpectedly
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```typescript
|
|
149
|
+
* const resources = await manager.refreshResources('my-server-1');
|
|
150
|
+
* console.log(`Found ${resources.length} resources`);
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
refreshResources(serverId: string): Promise<Resource[]>;
|
|
154
|
+
/**
|
|
155
|
+
* Retrieves the current connection status for a specific server instance.
|
|
156
|
+
*
|
|
157
|
+
* This method provides access to the server's operational state including connection
|
|
158
|
+
* status, error information, tool/resource counts, and process details.
|
|
159
|
+
*
|
|
160
|
+
* @param {string} serverId - Unique identifier of the server instance
|
|
161
|
+
* @returns {ServerStatus | undefined} Current status object or undefined if not found
|
|
162
|
+
*
|
|
163
|
+
* @example
|
|
164
|
+
* ```typescript
|
|
165
|
+
* const status = manager.getStatus('my-server-1');
|
|
166
|
+
* if (status?.connected) {
|
|
167
|
+
* console.log('Server is connected');
|
|
168
|
+
* }
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
171
|
+
getStatus(serverId: string): ServerStatus | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* Retrieves cached tools for a specific server instance.
|
|
174
|
+
*
|
|
175
|
+
* This method returns the currently cached tool list for the specified server,
|
|
176
|
+
* which may be empty if tools haven't been refreshed yet or if the server
|
|
177
|
+
* doesn't provide any tools. The method includes logging for debugging purposes.
|
|
178
|
+
*
|
|
179
|
+
* @param {string} serverId - Unique identifier of the server instance
|
|
180
|
+
* @returns {Tool[]} Array of cached tools, empty if none available
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```typescript
|
|
184
|
+
* const tools = manager.getTools('my-server-1');
|
|
185
|
+
* console.log(`Server has ${tools.length} tools`);
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
188
|
+
getTools(serverId: string): Tool[];
|
|
189
|
+
/**
|
|
190
|
+
* Retrieves cached resources for a specific server instance.
|
|
191
|
+
*
|
|
192
|
+
* This method returns the currently cached resource list for the specified server,
|
|
193
|
+
* which may be empty if resources haven't been refreshed yet, if the server doesn't
|
|
194
|
+
* support resources, or if the server doesn't provide any resources. The method
|
|
195
|
+
* includes logging for debugging purposes.
|
|
196
|
+
*
|
|
197
|
+
* @param {string} serverId - Unique identifier of the server instance
|
|
198
|
+
* @returns {Resource[]} Array of cached resources, empty if none available
|
|
199
|
+
*
|
|
200
|
+
* @example
|
|
201
|
+
* ```typescript
|
|
202
|
+
* const resources = manager.getResources('my-server-1');
|
|
203
|
+
* console.log(`Server has ${resources.length} resources`);
|
|
204
|
+
* ```
|
|
205
|
+
*/
|
|
206
|
+
getResources(serverId: string): Resource[];
|
|
207
|
+
/**
|
|
208
|
+
* Reads content from a specific resource URI on a connected MCP server.
|
|
209
|
+
*
|
|
210
|
+
* This method delegates the resource reading operation to the underlying MCP client,
|
|
211
|
+
* providing direct access to server-provided resources through their URIs.
|
|
212
|
+
*
|
|
213
|
+
* @param {string} serverId - Unique identifier of the connected server instance
|
|
214
|
+
* @param {string} uri - Resource URI to read (e.g., "file:///path/to/file")
|
|
215
|
+
* @returns {Promise<unknown>} Resource content as returned by the server
|
|
216
|
+
* @throws {Error} If the server is not connected or resource reading fails
|
|
217
|
+
*
|
|
218
|
+
* @example
|
|
219
|
+
* ```typescript
|
|
220
|
+
* const content = await manager.readResource('my-server-1', 'hub://config/settings.json');
|
|
221
|
+
* console.log('Resource content:', content);
|
|
222
|
+
* ```
|
|
223
|
+
*/
|
|
224
|
+
readResource(serverId: string, uri: string): Promise<unknown>;
|
|
225
|
+
/**
|
|
226
|
+
* Retrieves all cached tools from all connected server instances.
|
|
227
|
+
*
|
|
228
|
+
* This method aggregates tools from all server ID-level caches into a single array,
|
|
229
|
+
* providing a unified view of all available tools across all connected servers.
|
|
230
|
+
* The returned tools include server context information for proper identification.
|
|
231
|
+
*
|
|
232
|
+
* @returns {Tool[]} Array of all cached tools from all connected servers
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```typescript
|
|
236
|
+
* const allTools = manager.getAllTools();
|
|
237
|
+
* console.log(`Total tools available: ${allTools.length}`);
|
|
238
|
+
* ```
|
|
239
|
+
*/
|
|
240
|
+
getAllTools(): Tool[];
|
|
241
|
+
/**
|
|
242
|
+
* Retrieves all tool cache entries as server ID to tools mapping.
|
|
243
|
+
*
|
|
244
|
+
* This method returns the raw tool cache structure as an array of [serverId, tools] tuples,
|
|
245
|
+
* providing direct access to the internal caching mechanism for debugging or advanced use cases.
|
|
246
|
+
*
|
|
247
|
+
* @returns {[string, Tool[]][]} Array of [serverId, tools] tuples representing the cache
|
|
248
|
+
*
|
|
249
|
+
* @example
|
|
250
|
+
* ```typescript
|
|
251
|
+
* const cacheEntries = manager.getToolCacheEntries();
|
|
252
|
+
* cacheEntries.forEach(([serverId, tools]) => {
|
|
253
|
+
* console.log(`Server ${serverId} has ${tools.length} tools`);
|
|
254
|
+
* });
|
|
255
|
+
* ```
|
|
256
|
+
*/
|
|
257
|
+
getToolCacheEntries(): [string, Tool[]][];
|
|
258
|
+
/**
|
|
259
|
+
* Resolves a server name to its corresponding server instance ID.
|
|
260
|
+
*
|
|
261
|
+
* This method provides reverse lookup from server names (as defined in configuration)
|
|
262
|
+
* to the unique server instance IDs used internally for connection management.
|
|
263
|
+
* It's useful when you have a server name but need the instance ID for operations.
|
|
264
|
+
*
|
|
265
|
+
* @param {string} name - Server name as defined in the configuration
|
|
266
|
+
* @returns {string | undefined} Corresponding server instance ID or undefined if not found
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* ```typescript
|
|
270
|
+
* const serverId = manager.getServerIdByName('my-mcp-server');
|
|
271
|
+
* if (serverId) {
|
|
272
|
+
* const status = manager.getStatus(serverId);
|
|
273
|
+
* }
|
|
274
|
+
* ```
|
|
275
|
+
*/
|
|
276
|
+
getServerIdByName(name: string): string | undefined;
|
|
277
|
+
/**
|
|
278
|
+
* Retrieves the MCP client instance for a server by its name.
|
|
279
|
+
*
|
|
280
|
+
* This method resolves a server name to its instance ID and returns the corresponding
|
|
281
|
+
* MCP client instance, providing direct access to the underlying SDK client for
|
|
282
|
+
* advanced operations that aren't covered by the manager's high-level methods.
|
|
283
|
+
*
|
|
284
|
+
* @param {string} name - Server name as defined in the configuration
|
|
285
|
+
* @returns {Client | undefined} MCP client instance or undefined if not connected
|
|
286
|
+
*
|
|
287
|
+
* @example
|
|
288
|
+
* ```typescript
|
|
289
|
+
* const client = manager.getClientByName('my-mcp-server');
|
|
290
|
+
* if (client) {
|
|
291
|
+
* // Use direct client methods for advanced operations
|
|
292
|
+
* const result = await client.listPrompts();
|
|
293
|
+
* }
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
296
|
+
getClientByName(name: string): Client | undefined;
|
|
297
|
+
/**
|
|
298
|
+
* Calls a tool on a connected server using the server name instead of instance ID.
|
|
299
|
+
*
|
|
300
|
+
* This method provides a convenient way to execute tools when you have a server name
|
|
301
|
+
* rather than an instance ID. It resolves the server name to its instance ID and
|
|
302
|
+
* delegates to the callTool method for actual execution.
|
|
303
|
+
*
|
|
304
|
+
* The method is wrapped in OpenTelemetry tracing for observability and includes
|
|
305
|
+
* comprehensive error handling with proper logging.
|
|
306
|
+
*
|
|
307
|
+
* @param {string} name - Server name as defined in the configuration
|
|
308
|
+
* @param {string} toolName - Name of the tool to execute
|
|
309
|
+
* @param {Record<string, unknown>} args - Arguments to pass to the tool
|
|
310
|
+
* @returns {Promise<unknown>} Tool execution result as returned by the server
|
|
311
|
+
* @throws {Error} If server is not connected, not found, or tool execution fails
|
|
312
|
+
*
|
|
313
|
+
* @example
|
|
314
|
+
* ```typescript
|
|
315
|
+
* const result = await manager.callToolByName('my-mcp-server', 'list-files', {
|
|
316
|
+
* directory: '/home/user'
|
|
317
|
+
* });
|
|
318
|
+
* console.log('Tool result:', result);
|
|
319
|
+
* ```
|
|
320
|
+
*/
|
|
321
|
+
callToolByName(name: string, toolName: string, args: Record<string, unknown>): Promise<unknown>;
|
|
322
|
+
/**
|
|
323
|
+
* Retrieves the connection status for a server using its name instead of instance ID.
|
|
324
|
+
*
|
|
325
|
+
* This method resolves a server name to its instance ID and returns the corresponding
|
|
326
|
+
* server status, providing a convenient way to check server health when working with
|
|
327
|
+
* server names rather than instance IDs.
|
|
328
|
+
*
|
|
329
|
+
* @param {string} name - Server name as defined in the configuration
|
|
330
|
+
* @returns {ServerStatus | undefined} Current status object or undefined if not found/connected
|
|
331
|
+
*
|
|
332
|
+
* @example
|
|
333
|
+
* ```typescript
|
|
334
|
+
* const status = manager.getStatusByName('my-mcp-server');
|
|
335
|
+
* if (status?.connected) {
|
|
336
|
+
* console.log('Server is online');
|
|
337
|
+
* }
|
|
338
|
+
* ```
|
|
339
|
+
*/
|
|
340
|
+
getStatusByName(name: string): ServerStatus | undefined;
|
|
341
|
+
/**
|
|
342
|
+
* Retrieves cached tools for a server using its name instead of instance ID.
|
|
343
|
+
*
|
|
344
|
+
* This method resolves a server name to its instance ID and returns the corresponding
|
|
345
|
+
* cached tool list, providing a convenient way to access tools when working with
|
|
346
|
+
* server names rather than instance IDs.
|
|
347
|
+
*
|
|
348
|
+
* @param {string} name - Server name as defined in the configuration
|
|
349
|
+
* @returns {Tool[]} Array of cached tools, empty if none available or not connected
|
|
350
|
+
*
|
|
351
|
+
* @example
|
|
352
|
+
* ```typescript
|
|
353
|
+
* const tools = manager.getToolsByName('my-mcp-server');
|
|
354
|
+
* console.log(`Server has ${tools.length} tools`);
|
|
355
|
+
* ```
|
|
356
|
+
*/
|
|
357
|
+
getToolsByName(name: string): Tool[];
|
|
358
|
+
/**
|
|
359
|
+
* Retrieves cached resources for a server using its name instead of instance ID.
|
|
360
|
+
*
|
|
361
|
+
* This method resolves a server name to its instance ID and returns the corresponding
|
|
362
|
+
* cached resource list, providing a convenient way to access resources when working with
|
|
363
|
+
* server names rather than instance IDs.
|
|
364
|
+
*
|
|
365
|
+
* @param {string} name - Server name as defined in the configuration
|
|
366
|
+
* @returns {Resource[]} Array of cached resources, empty if none available or not connected
|
|
367
|
+
*
|
|
368
|
+
* @example
|
|
369
|
+
* ```typescript
|
|
370
|
+
* const resources = manager.getResourcesByName('my-mcp-server');
|
|
371
|
+
* console.log(`Server has ${resources.length} resources`);
|
|
372
|
+
* ```
|
|
373
|
+
*/
|
|
374
|
+
getResourcesByName(name: string): Resource[];
|
|
375
|
+
/**
|
|
376
|
+
* Retrieves a specific tool by name from a server's cached tools.
|
|
377
|
+
*
|
|
378
|
+
* This method searches the server name-level tool cache for a tool with the specified name,
|
|
379
|
+
* providing efficient lookup without needing to iterate through all tools manually.
|
|
380
|
+
*
|
|
381
|
+
* @param {string} serverName - Server name as defined in the configuration
|
|
382
|
+
* @param {string} toolName - Exact name of the tool to find
|
|
383
|
+
* @returns {Tool | undefined} Tool object if found, undefined otherwise
|
|
384
|
+
*
|
|
385
|
+
* @example
|
|
386
|
+
* ```typescript
|
|
387
|
+
* const tool = manager.getTool('my-mcp-server', 'list-files');
|
|
388
|
+
* if (tool) {
|
|
389
|
+
* console.log('Tool description:', tool.description);
|
|
390
|
+
* }
|
|
391
|
+
* ```
|
|
392
|
+
*/
|
|
393
|
+
getTool(serverName: string, toolName: string): Tool | undefined;
|
|
394
|
+
/**
|
|
395
|
+
* Retrieves all cached resources grouped by server name.
|
|
396
|
+
*
|
|
397
|
+
* This method aggregates resources from all server instances and groups them by their
|
|
398
|
+
* corresponding server names, providing a structured view of all available resources
|
|
399
|
+
* across the system organized by server origin.
|
|
400
|
+
*
|
|
401
|
+
* @returns {Record<string, Resource[]>} Object mapping server names to resource arrays
|
|
402
|
+
*
|
|
403
|
+
* @example
|
|
404
|
+
* ```typescript
|
|
405
|
+
* const allResources = manager.getAllResources();
|
|
406
|
+
* Object.entries(allResources).forEach(([serverName, resources]) => {
|
|
407
|
+
* console.log(`Server ${serverName} has ${resources.length} resources`);
|
|
408
|
+
* });
|
|
409
|
+
* ```
|
|
410
|
+
*/
|
|
411
|
+
getAllResources(): Record<string, Resource[]>;
|
|
412
|
+
/**
|
|
413
|
+
* Executes a tool on a connected MCP server using its instance ID.
|
|
414
|
+
*
|
|
415
|
+
* This is the primary method for executing tools on connected servers. It delegates
|
|
416
|
+
* the actual execution to the underlying MCP client and includes comprehensive
|
|
417
|
+
* error handling with proper logging. The method is wrapped in OpenTelemetry tracing
|
|
418
|
+
* for observability and monitoring.
|
|
419
|
+
*
|
|
420
|
+
* @param {string} serverId - Unique identifier of the connected server instance
|
|
421
|
+
* @param {string} toolName - Name of the tool to execute
|
|
422
|
+
* @param {Record<string, unknown>} args - Arguments to pass to the tool
|
|
423
|
+
* @returns {Promise<unknown>} Tool execution result as returned by the server
|
|
424
|
+
* @throws {Error} If server is not connected or tool execution fails
|
|
425
|
+
*
|
|
426
|
+
* @example
|
|
427
|
+
* ```typescript
|
|
428
|
+
* const result = await manager.callTool('my-server-1', 'list-files', {
|
|
429
|
+
* directory: '/home/user'
|
|
430
|
+
* });
|
|
431
|
+
* console.log('Tool result:', result);
|
|
432
|
+
* ```
|
|
433
|
+
*/
|
|
434
|
+
callTool(serverId: string, toolName: string, args: Record<string, unknown>): Promise<unknown>;
|
|
435
|
+
/**
|
|
436
|
+
* Retrieves cached tools for a specific server name from the server name-level cache.
|
|
437
|
+
*
|
|
438
|
+
* This method provides access to the server name-level tool cache, which aggregates
|
|
439
|
+
* tools from all instances of the same server name. It's optimized for scenarios
|
|
440
|
+
* where you need to work with server names rather than individual instance IDs.
|
|
441
|
+
*
|
|
442
|
+
* @param {string} serverName - Server name as defined in the configuration
|
|
443
|
+
* @returns {Tool[]} Array of cached tools for the specified server name
|
|
444
|
+
*
|
|
445
|
+
* @example
|
|
446
|
+
* ```typescript
|
|
447
|
+
* const tools = manager.getToolsByServerName('my-mcp-server');
|
|
448
|
+
* console.log(`Server has ${tools.length} tools across all instances`);
|
|
449
|
+
* ```
|
|
450
|
+
*/
|
|
451
|
+
getToolsByServerName(serverName: string): Tool[];
|
|
452
|
+
/**
|
|
453
|
+
* Retrieves all cached tools from all servers using the server name-level cache.
|
|
454
|
+
*
|
|
455
|
+
* This method aggregates tools from the server name-level cache, providing a unified
|
|
456
|
+
* view of all available tools optimized for search operations and scenarios where
|
|
457
|
+
* server name context is more relevant than individual instance IDs.
|
|
458
|
+
*
|
|
459
|
+
* @returns {Tool[]} Array of all cached tools from all servers
|
|
460
|
+
*
|
|
461
|
+
* @example
|
|
462
|
+
* ```typescript
|
|
463
|
+
* const allTools = manager.getAllToolsByServerName();
|
|
464
|
+
* console.log(`Total tools available: ${allTools.length}`);
|
|
465
|
+
* ```
|
|
466
|
+
*/
|
|
467
|
+
getAllToolsByServerName(): Tool[];
|
|
468
|
+
/**
|
|
469
|
+
* Backward compatibility: direct access to the underlying toolCache Map.
|
|
470
|
+
* This is maintained for backward compatibility with code that accesses
|
|
471
|
+
* mcpConnectionManager.toolCache directly.
|
|
472
|
+
*
|
|
473
|
+
* @deprecated Use the dedicated methods like getTools(), setTools(), etc. instead
|
|
474
|
+
*/
|
|
475
|
+
get toolCache(): Map<string, Tool[]>;
|
|
476
|
+
}
|
|
477
|
+
export declare const mcpConnectionManager: McpConnectionManager;
|
|
478
|
+
//# sourceMappingURL=connection-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../../../../src/services/connection/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAUnE,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAKjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,aAAa,CAAsC;;IAoB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACU,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAyPnF;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwDxD;;;;;;;;;;;;;;;OAeG;IACU,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB3C;;;;;;;;;;;;;;;;;OAiBG;IACU,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAwC5D;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAoFpE;;;;;;;;;;;;;;;;OAgBG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI5D;;;;;;;;;;;;;;;OAeG;IACI,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE;IAIzC;;;;;;;;;;;;;;;;OAgBG;IACI,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE;IAUjD;;;;;;;;;;;;;;;;OAgBG;IACU,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1E;;;;;;;;;;;;;;OAcG;IACI,WAAW,IAAI,IAAI,EAAE;IAI5B;;;;;;;;;;;;;;;OAeG;IACI,mBAAmB,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE;IAIhD;;;;;;;;;;;;;;;;;OAiBG;IACI,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI1D;;;;;;;;;;;;;;;;;;OAkBG;IACI,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAQxD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACU,cAAc,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC;IASnB;;;;;;;;;;;;;;;;;OAiBG;IACI,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAQ9D;;;;;;;;;;;;;;;OAeG;IACI,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE;IAQ3C;;;;;;;;;;;;;;;OAeG;IACI,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE;IAQnD;;;;;;;;;;;;;;;;;OAiBG;IACI,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAItE;;;;;;;;;;;;;;;;OAgBG;IACI,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;IAiBpD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACU,QAAQ,CACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC;IAsBnB;;;;;;;;;;;;;;;OAeG;IACI,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE;IAIvD;;;;;;;;;;;;;;OAcG;IACI,uBAAuB,IAAI,IAAI,EAAE;IAIxC;;;;;;OAMG;IACH,IAAI,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAEnC;CACF;AAED,eAAO,MAAM,oBAAoB,sBAA6B,CAAC"}
|