@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,84 @@
|
|
|
1
|
+
export declare const CMDErrors: {
|
|
2
|
+
readonly SystemErrors: {
|
|
3
|
+
readonly DATABASE_CONNECTION_FAILED: 1001;
|
|
4
|
+
readonly MEMORY_INSUFFICIENT: 1002;
|
|
5
|
+
readonly NETWORK_UNREACHABLE: 1003;
|
|
6
|
+
readonly DISK_FULL: 1004;
|
|
7
|
+
readonly SERVICE_UNAVAILABLE: 1005;
|
|
8
|
+
readonly INTERNAL_SERVER_ERROR: 1500;
|
|
9
|
+
};
|
|
10
|
+
readonly SecurityErrors: {
|
|
11
|
+
readonly UNAUTHORIZED: 2001;
|
|
12
|
+
readonly FORBIDDEN: 2003;
|
|
13
|
+
readonly TOKEN_EXPIRED: 2004;
|
|
14
|
+
readonly INVALID_CREDENTIALS: 2005;
|
|
15
|
+
readonly ACCESS_DENIED: 2006;
|
|
16
|
+
readonly RATE_LIMIT_EXCEEDED: 2007;
|
|
17
|
+
};
|
|
18
|
+
readonly BusinessErrors: {
|
|
19
|
+
readonly VALIDATION_FAILED: 3001;
|
|
20
|
+
readonly RESOURCE_NOT_FOUND: 3004;
|
|
21
|
+
readonly RESOURCE_ALREADY_EXISTS: 3009;
|
|
22
|
+
readonly INVALID_OPERATION: 3009;
|
|
23
|
+
readonly GROUP_CONSTRAINT_VIOLATION: 3010;
|
|
24
|
+
readonly SERVER_STATUS_CONFLICT: 3011;
|
|
25
|
+
readonly CONFIGURATION_INVALID: 3012;
|
|
26
|
+
};
|
|
27
|
+
readonly APIErrors: {
|
|
28
|
+
readonly INVALID_REQUEST_FORMAT: 4000;
|
|
29
|
+
readonly MISSING_REQUIRED_PARAMETER: 4001;
|
|
30
|
+
readonly INVALID_PARAMETER_VALUE: 4002;
|
|
31
|
+
readonly UNSUPPORTED_MEDIA_TYPE: 4003;
|
|
32
|
+
readonly BAD_REQUEST: 4000;
|
|
33
|
+
};
|
|
34
|
+
readonly MCPProtocolErrors: {
|
|
35
|
+
readonly MCP_SERVER_UNREACHABLE: -32001;
|
|
36
|
+
readonly MCP_REQUEST_TIMEOUT: -32002;
|
|
37
|
+
readonly MCP_INVALID_RESPONSE: -32003;
|
|
38
|
+
readonly MCP_TOOL_NOT_FOUND: -32801;
|
|
39
|
+
readonly MCP_EXECUTION_FAILED: -32802;
|
|
40
|
+
readonly MCP_INITIALIZATION_FAILED: -32803;
|
|
41
|
+
readonly MCP_INVALID_CONFIGURATION: -32804;
|
|
42
|
+
readonly MCP_RATE_LIMIT_EXCEEDED: -32805;
|
|
43
|
+
readonly MCP_AUTHENTICATION_FAILED: -32806;
|
|
44
|
+
readonly MCP_AUTHORIZATION_FAILED: -32807;
|
|
45
|
+
readonly MCP_RESOURCE_EXHAUSTED: -32808;
|
|
46
|
+
readonly MCP_PRECONDITION_FAILED: -32809;
|
|
47
|
+
readonly MCP_CONTENT_MODIFIED: -32810;
|
|
48
|
+
readonly MCP_LOOP_DETECTED: -32811;
|
|
49
|
+
readonly MCP_NOT_IMPLEMENTED: -32812;
|
|
50
|
+
readonly MCP_NOT_SUPPORTED: -32813;
|
|
51
|
+
readonly MCP_TOO_BUSY: -32814;
|
|
52
|
+
readonly MCP_SERVER_SHUTDOWN: -32815;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
export type AllErrorCodes = (typeof CMDErrors.SystemErrors)[keyof typeof CMDErrors.SystemErrors] | (typeof CMDErrors.SecurityErrors)[keyof typeof CMDErrors.SecurityErrors] | (typeof CMDErrors.BusinessErrors)[keyof typeof CMDErrors.BusinessErrors] | (typeof CMDErrors.APIErrors)[keyof typeof CMDErrors.APIErrors] | (typeof CMDErrors.MCPProtocolErrors)[keyof typeof CMDErrors.MCPProtocolErrors] | 6000 | 6001 | 6002 | 6003 | 6004 | 6005;
|
|
56
|
+
export interface CMDBaseResponse<T = unknown> {
|
|
57
|
+
code: number;
|
|
58
|
+
message: string;
|
|
59
|
+
data?: T;
|
|
60
|
+
timestamp: string;
|
|
61
|
+
requestId?: string;
|
|
62
|
+
}
|
|
63
|
+
export type CMDSuccess<T = unknown> = {
|
|
64
|
+
code: 200 | 201 | 204;
|
|
65
|
+
message: string;
|
|
66
|
+
data: T;
|
|
67
|
+
timestamp: string;
|
|
68
|
+
requestId?: string;
|
|
69
|
+
};
|
|
70
|
+
export type CMDError = {
|
|
71
|
+
code: AllErrorCodes;
|
|
72
|
+
message: string;
|
|
73
|
+
data: null;
|
|
74
|
+
timestamp: string;
|
|
75
|
+
requestId?: string;
|
|
76
|
+
error?: {
|
|
77
|
+
category: 'SYSTEM' | 'SECURITY' | 'BUSINESS' | 'API' | 'MCP_PROTOCOL';
|
|
78
|
+
severity: 'FATAL' | 'ERROR' | 'WARN' | 'INFO';
|
|
79
|
+
stack?: string;
|
|
80
|
+
context?: Record<string, unknown>;
|
|
81
|
+
httpStatus?: number;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/models/types.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEZ,CAAC;AAGX,MAAM,MAAM,aAAa,GACrB,CAAC,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,YAAY,CAAC,GACpE,CAAC,OAAO,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,cAAc,CAAC,GACxE,CAAC,OAAO,SAAS,CAAC,cAAc,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,cAAc,CAAC,GACxE,CAAC,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,SAAS,CAAC,GAC9D,CAAC,OAAO,SAAS,CAAC,iBAAiB,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,iBAAiB,CAAC,GAC9E,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAGT,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,OAAO,IAAI;IACpC,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAGF,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QAEN,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,GAAG,cAAc,CAAC;QAEtE,QAAQ,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAE9C,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAElC,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// CMD error type hierarchy definition
|
|
2
|
+
export const CMDErrors = {
|
|
3
|
+
// === System-level errors (1000-1999) ===
|
|
4
|
+
// Infrastructure failures, runtime errors
|
|
5
|
+
SystemErrors: {
|
|
6
|
+
DATABASE_CONNECTION_FAILED: 1001,
|
|
7
|
+
MEMORY_INSUFFICIENT: 1002,
|
|
8
|
+
NETWORK_UNREACHABLE: 1003,
|
|
9
|
+
DISK_FULL: 1004,
|
|
10
|
+
SERVICE_UNAVAILABLE: 1005,
|
|
11
|
+
INTERNAL_SERVER_ERROR: 1500
|
|
12
|
+
},
|
|
13
|
+
// === Security errors (2000-2999) ===
|
|
14
|
+
// Authentication, authorization, security policy related
|
|
15
|
+
SecurityErrors: {
|
|
16
|
+
UNAUTHORIZED: 2001,
|
|
17
|
+
FORBIDDEN: 2003,
|
|
18
|
+
TOKEN_EXPIRED: 2004,
|
|
19
|
+
INVALID_CREDENTIALS: 2005,
|
|
20
|
+
ACCESS_DENIED: 2006,
|
|
21
|
+
RATE_LIMIT_EXCEEDED: 2007
|
|
22
|
+
},
|
|
23
|
+
// === Business logic errors (3000-3999) ===
|
|
24
|
+
// Business rule validation, resource status, etc.
|
|
25
|
+
BusinessErrors: {
|
|
26
|
+
VALIDATION_FAILED: 3001,
|
|
27
|
+
RESOURCE_NOT_FOUND: 3004,
|
|
28
|
+
RESOURCE_ALREADY_EXISTS: 3009,
|
|
29
|
+
INVALID_OPERATION: 3009,
|
|
30
|
+
GROUP_CONSTRAINT_VIOLATION: 3010,
|
|
31
|
+
SERVER_STATUS_CONFLICT: 3011,
|
|
32
|
+
CONFIGURATION_INVALID: 3012
|
|
33
|
+
},
|
|
34
|
+
// === API errors (4000-4999) ===
|
|
35
|
+
// Request format, parameter validation
|
|
36
|
+
APIErrors: {
|
|
37
|
+
INVALID_REQUEST_FORMAT: 4000,
|
|
38
|
+
MISSING_REQUIRED_PARAMETER: 4001,
|
|
39
|
+
INVALID_PARAMETER_VALUE: 4002,
|
|
40
|
+
UNSUPPORTED_MEDIA_TYPE: 4003,
|
|
41
|
+
BAD_REQUEST: 4000
|
|
42
|
+
},
|
|
43
|
+
// === MCP protocol errors (according to MCP standard specification) ===
|
|
44
|
+
// Error code definitions based on MCP protocol standard (https://modelcontextprotocol.io/specification/2025-11-25)
|
|
45
|
+
MCPProtocolErrors: {
|
|
46
|
+
// Standard JSON-RPC 2.0 error code range (-32099 to -32000)
|
|
47
|
+
MCP_SERVER_UNREACHABLE: -32001, // Service unreachable
|
|
48
|
+
MCP_REQUEST_TIMEOUT: -32002, // Request timeout
|
|
49
|
+
MCP_INVALID_RESPONSE: -32003, // Invalid response
|
|
50
|
+
// MCP specific error code range (-32899 to -32800)
|
|
51
|
+
MCP_TOOL_NOT_FOUND: -32801, // Tool not found (corresponds to toolNotFound in MCP specification)
|
|
52
|
+
MCP_EXECUTION_FAILED: -32802, // Execution failed
|
|
53
|
+
MCP_INITIALIZATION_FAILED: -32803, // Initialization failed
|
|
54
|
+
MCP_INVALID_CONFIGURATION: -32804, // Invalid configuration
|
|
55
|
+
MCP_RATE_LIMIT_EXCEEDED: -32805, // Rate limit exceeded
|
|
56
|
+
MCP_AUTHENTICATION_FAILED: -32806, // Authentication failed
|
|
57
|
+
MCP_AUTHORIZATION_FAILED: -32807, // Authorization failed
|
|
58
|
+
MCP_RESOURCE_EXHAUSTED: -32808, // Resource exhausted
|
|
59
|
+
MCP_PRECONDITION_FAILED: -32809, // Precondition failed
|
|
60
|
+
MCP_CONTENT_MODIFIED: -32810, // Content modified
|
|
61
|
+
MCP_LOOP_DETECTED: -32811, // Loop detected
|
|
62
|
+
MCP_NOT_IMPLEMENTED: -32812, // Not implemented
|
|
63
|
+
MCP_NOT_SUPPORTED: -32813, // Not supported
|
|
64
|
+
MCP_TOO_BUSY: -32814, // Overloaded
|
|
65
|
+
MCP_SERVER_SHUTDOWN: -32815 // Server shutdown
|
|
66
|
+
}
|
|
67
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PID file operation utilities
|
|
3
|
+
* Responsibility: Low-level PID file read/write/delete operations
|
|
4
|
+
*/
|
|
5
|
+
import type { PidFileOptions } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Get PID file path
|
|
8
|
+
*/
|
|
9
|
+
export declare function getPidFilePath(options?: PidFileOptions): string;
|
|
10
|
+
/**
|
|
11
|
+
* Write PID file
|
|
12
|
+
*/
|
|
13
|
+
export declare function writePidFile(pid: number, options?: PidFileOptions): void;
|
|
14
|
+
/**
|
|
15
|
+
* Read PID file
|
|
16
|
+
*/
|
|
17
|
+
export declare function readPidFile(options?: PidFileOptions): number | null;
|
|
18
|
+
/**
|
|
19
|
+
* Remove PID file
|
|
20
|
+
*/
|
|
21
|
+
export declare function removePidFile(options?: PidFileOptions): void;
|
|
22
|
+
/**
|
|
23
|
+
* Check if PID file exists
|
|
24
|
+
*/
|
|
25
|
+
export declare function pidFileExists(options?: PidFileOptions): boolean;
|
|
26
|
+
//# sourceMappingURL=file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/pid/file.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,CAI/D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI,CAUxE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAanE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI,CAS5D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAG/D"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PID file operation utilities
|
|
3
|
+
* Responsibility: Low-level PID file read/write/delete operations
|
|
4
|
+
*/
|
|
5
|
+
import fs from 'fs';
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import os from 'os';
|
|
8
|
+
// Config directory: Prefer using .mcp-hub-lite/config folder in user's home directory
|
|
9
|
+
const DEFAULT_CONFIG_DIR = path.join(os.homedir(), '.mcp-hub-lite', 'config');
|
|
10
|
+
const DEFAULT_PID_FILENAME = '.mcp-hub.pid';
|
|
11
|
+
/**
|
|
12
|
+
* Get PID file path
|
|
13
|
+
*/
|
|
14
|
+
export function getPidFilePath(options) {
|
|
15
|
+
const configDir = options?.configDir || DEFAULT_CONFIG_DIR;
|
|
16
|
+
const filename = options?.filename || DEFAULT_PID_FILENAME;
|
|
17
|
+
return path.join(configDir, filename);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Write PID file
|
|
21
|
+
*/
|
|
22
|
+
export function writePidFile(pid, options) {
|
|
23
|
+
const filePath = getPidFilePath(options);
|
|
24
|
+
const configDir = path.dirname(filePath);
|
|
25
|
+
// Ensure config directory exists
|
|
26
|
+
if (!fs.existsSync(configDir)) {
|
|
27
|
+
fs.mkdirSync(configDir, { recursive: true });
|
|
28
|
+
}
|
|
29
|
+
fs.writeFileSync(filePath, pid.toString(), 'utf8');
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Read PID file
|
|
33
|
+
*/
|
|
34
|
+
export function readPidFile(options) {
|
|
35
|
+
try {
|
|
36
|
+
const filePath = getPidFilePath(options);
|
|
37
|
+
if (!fs.existsSync(filePath)) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
const content = fs.readFileSync(filePath, 'utf8');
|
|
41
|
+
const pid = parseInt(content.trim(), 10);
|
|
42
|
+
return isNaN(pid) ? null : pid;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Remove PID file
|
|
50
|
+
*/
|
|
51
|
+
export function removePidFile(options) {
|
|
52
|
+
try {
|
|
53
|
+
const filePath = getPidFilePath(options);
|
|
54
|
+
if (fs.existsSync(filePath)) {
|
|
55
|
+
fs.unlinkSync(filePath);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// Ignore deletion errors
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Check if PID file exists
|
|
64
|
+
*/
|
|
65
|
+
export function pidFileExists(options) {
|
|
66
|
+
const filePath = getPidFilePath(options);
|
|
67
|
+
return fs.existsSync(filePath);
|
|
68
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { PidFileOptions } from './types.js';
|
|
2
|
+
export declare class PidManager {
|
|
3
|
+
/**
|
|
4
|
+
* Writes the current process PID to a PID file and registers cleanup hooks
|
|
5
|
+
* for graceful shutdown handling.
|
|
6
|
+
*
|
|
7
|
+
* This method should be called during service startup to create a PID file
|
|
8
|
+
* that tracks the running process. It automatically registers signal handlers
|
|
9
|
+
* for SIGINT, SIGTERM, and process exit events to ensure the PID file is
|
|
10
|
+
* properly cleaned up when the process terminates.
|
|
11
|
+
*
|
|
12
|
+
* @param options - Optional configuration for PID file location and behavior
|
|
13
|
+
* @throws Will log an error if PID file writing fails, but will not throw
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* // Basic usage with default PID file location
|
|
17
|
+
* PidManager.writePid();
|
|
18
|
+
*
|
|
19
|
+
* // Custom PID file location
|
|
20
|
+
* PidManager.writePid({ pidFilePath: '/custom/path/mcp-hub.pid' });
|
|
21
|
+
*/
|
|
22
|
+
static writePid(options?: PidFileOptions): void;
|
|
23
|
+
/**
|
|
24
|
+
* Removes the PID file from the filesystem.
|
|
25
|
+
*
|
|
26
|
+
* This method safely deletes the PID file, typically called during service
|
|
27
|
+
* shutdown or cleanup operations. It's automatically invoked by the signal
|
|
28
|
+
* handlers registered in `writePid()`.
|
|
29
|
+
*
|
|
30
|
+
* @param options - Optional configuration matching the options used when
|
|
31
|
+
* writing the PID file
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* // Remove PID file with default options
|
|
35
|
+
* PidManager.removePid();
|
|
36
|
+
*
|
|
37
|
+
* // Remove PID file with custom path
|
|
38
|
+
* PidManager.removePid({ pidFilePath: '/custom/path/mcp-hub.pid' });
|
|
39
|
+
*/
|
|
40
|
+
static removePid(options?: PidFileOptions): void;
|
|
41
|
+
/**
|
|
42
|
+
* Retrieves the PID stored in the PID file.
|
|
43
|
+
*
|
|
44
|
+
* Reads the PID file and returns the stored process ID if it exists and
|
|
45
|
+
* contains valid data. Returns null if the file doesn't exist, is empty,
|
|
46
|
+
* or contains invalid data.
|
|
47
|
+
*
|
|
48
|
+
* @param options - Optional configuration for PID file location
|
|
49
|
+
* @returns The stored process ID as a number, or null if no valid PID is found
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* const pid = PidManager.getPid();
|
|
53
|
+
* if (pid) {
|
|
54
|
+
* console.log(`Service is running with PID: ${pid}`);
|
|
55
|
+
* }
|
|
56
|
+
*/
|
|
57
|
+
static getPid(options?: PidFileOptions): number | null;
|
|
58
|
+
/**
|
|
59
|
+
* Checks whether the process associated with the stored PID is currently running.
|
|
60
|
+
*
|
|
61
|
+
* This method first retrieves the PID from the PID file, then uses the
|
|
62
|
+
* `process.kill(pid, 0)` system call to verify if a process with that PID
|
|
63
|
+
* is still active. This is a safe operation that only checks process existence
|
|
64
|
+
* without sending any actual signal to terminate the process.
|
|
65
|
+
*
|
|
66
|
+
* @param options - Optional configuration for PID file location
|
|
67
|
+
* @returns true if a process with the stored PID is running, false otherwise
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* if (PidManager.isRunning()) {
|
|
71
|
+
* console.log('MCP Hub Lite service is already running');
|
|
72
|
+
* process.exit(1);
|
|
73
|
+
* }
|
|
74
|
+
*/
|
|
75
|
+
static isRunning(options?: PidFileOptions): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Checks whether the PID file exists on the filesystem.
|
|
78
|
+
*
|
|
79
|
+
* This method verifies the existence of the PID file without attempting to
|
|
80
|
+
* read its contents or validate the stored PID. It's useful for determining
|
|
81
|
+
* if a previous instance may have created a PID file, regardless of whether
|
|
82
|
+
* that process is still running.
|
|
83
|
+
*
|
|
84
|
+
* @param options - Optional configuration for PID file location
|
|
85
|
+
* @returns true if the PID file exists, false otherwise
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* if (PidManager.pidFileExists()) {
|
|
89
|
+
* console.log('PID file exists, checking if process is running...');
|
|
90
|
+
* if (!PidManager.isRunning()) {
|
|
91
|
+
* console.log('Stale PID file detected, cleaning up...');
|
|
92
|
+
* PidManager.removePid();
|
|
93
|
+
* }
|
|
94
|
+
* }
|
|
95
|
+
*/
|
|
96
|
+
static pidFileExists(options?: PidFileOptions): boolean;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/pid/manager.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,qBAAa,UAAU;IACrB;;;;;;;;;;;;;;;;;;OAkBG;WACW,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IAmBtD;;;;;;;;;;;;;;;;OAgBG;WACW,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,IAAI;IAIvD;;;;;;;;;;;;;;;OAeG;WACW,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IAI7D;;;;;;;;;;;;;;;;OAgBG;WACW,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO;IAa1D;;;;;;;;;;;;;;;;;;;OAmBG;WACW,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO;CAG/D"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PID Manager for MCP Hub Lite service lifecycle management.
|
|
3
|
+
*
|
|
4
|
+
* This class provides a centralized interface for managing process ID (PID) files
|
|
5
|
+
* that track the running state of the MCP Hub Lite service. It handles writing,
|
|
6
|
+
* reading, and cleaning up PID files, as well as registering appropriate signal
|
|
7
|
+
* handlers to ensure proper cleanup during process termination.
|
|
8
|
+
*
|
|
9
|
+
* The PID manager is primarily used by the CLI entry point and server runner
|
|
10
|
+
* to maintain service state awareness and prevent multiple instances from
|
|
11
|
+
* running simultaneously.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // Write PID file at service startup
|
|
15
|
+
* PidManager.writePid();
|
|
16
|
+
*
|
|
17
|
+
* // Check if service is already running
|
|
18
|
+
* if (PidManager.isRunning()) {
|
|
19
|
+
* console.log('Service is already running');
|
|
20
|
+
* process.exit(1);
|
|
21
|
+
* }
|
|
22
|
+
*
|
|
23
|
+
* // Clean up PID file on shutdown
|
|
24
|
+
* PidManager.removePid();
|
|
25
|
+
*/
|
|
26
|
+
import { logger } from '../utils/logger.js';
|
|
27
|
+
import { writePidFile, readPidFile, removePidFile, pidFileExists } from './file.js';
|
|
28
|
+
export class PidManager {
|
|
29
|
+
/**
|
|
30
|
+
* Writes the current process PID to a PID file and registers cleanup hooks
|
|
31
|
+
* for graceful shutdown handling.
|
|
32
|
+
*
|
|
33
|
+
* This method should be called during service startup to create a PID file
|
|
34
|
+
* that tracks the running process. It automatically registers signal handlers
|
|
35
|
+
* for SIGINT, SIGTERM, and process exit events to ensure the PID file is
|
|
36
|
+
* properly cleaned up when the process terminates.
|
|
37
|
+
*
|
|
38
|
+
* @param options - Optional configuration for PID file location and behavior
|
|
39
|
+
* @throws Will log an error if PID file writing fails, but will not throw
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* // Basic usage with default PID file location
|
|
43
|
+
* PidManager.writePid();
|
|
44
|
+
*
|
|
45
|
+
* // Custom PID file location
|
|
46
|
+
* PidManager.writePid({ pidFilePath: '/custom/path/mcp-hub.pid' });
|
|
47
|
+
*/
|
|
48
|
+
static writePid(options) {
|
|
49
|
+
try {
|
|
50
|
+
writePidFile(process.pid, options);
|
|
51
|
+
// Register cleanup hooks for process exit
|
|
52
|
+
process.on('exit', () => this.removePid(options));
|
|
53
|
+
process.on('SIGINT', () => {
|
|
54
|
+
this.removePid(options);
|
|
55
|
+
process.exit();
|
|
56
|
+
});
|
|
57
|
+
process.on('SIGTERM', () => {
|
|
58
|
+
this.removePid(options);
|
|
59
|
+
process.exit();
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
logger.error('Failed to write PID file:', error);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Removes the PID file from the filesystem.
|
|
68
|
+
*
|
|
69
|
+
* This method safely deletes the PID file, typically called during service
|
|
70
|
+
* shutdown or cleanup operations. It's automatically invoked by the signal
|
|
71
|
+
* handlers registered in `writePid()`.
|
|
72
|
+
*
|
|
73
|
+
* @param options - Optional configuration matching the options used when
|
|
74
|
+
* writing the PID file
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* // Remove PID file with default options
|
|
78
|
+
* PidManager.removePid();
|
|
79
|
+
*
|
|
80
|
+
* // Remove PID file with custom path
|
|
81
|
+
* PidManager.removePid({ pidFilePath: '/custom/path/mcp-hub.pid' });
|
|
82
|
+
*/
|
|
83
|
+
static removePid(options) {
|
|
84
|
+
removePidFile(options);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Retrieves the PID stored in the PID file.
|
|
88
|
+
*
|
|
89
|
+
* Reads the PID file and returns the stored process ID if it exists and
|
|
90
|
+
* contains valid data. Returns null if the file doesn't exist, is empty,
|
|
91
|
+
* or contains invalid data.
|
|
92
|
+
*
|
|
93
|
+
* @param options - Optional configuration for PID file location
|
|
94
|
+
* @returns The stored process ID as a number, or null if no valid PID is found
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* const pid = PidManager.getPid();
|
|
98
|
+
* if (pid) {
|
|
99
|
+
* console.log(`Service is running with PID: ${pid}`);
|
|
100
|
+
* }
|
|
101
|
+
*/
|
|
102
|
+
static getPid(options) {
|
|
103
|
+
return readPidFile(options);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Checks whether the process associated with the stored PID is currently running.
|
|
107
|
+
*
|
|
108
|
+
* This method first retrieves the PID from the PID file, then uses the
|
|
109
|
+
* `process.kill(pid, 0)` system call to verify if a process with that PID
|
|
110
|
+
* is still active. This is a safe operation that only checks process existence
|
|
111
|
+
* without sending any actual signal to terminate the process.
|
|
112
|
+
*
|
|
113
|
+
* @param options - Optional configuration for PID file location
|
|
114
|
+
* @returns true if a process with the stored PID is running, false otherwise
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* if (PidManager.isRunning()) {
|
|
118
|
+
* console.log('MCP Hub Lite service is already running');
|
|
119
|
+
* process.exit(1);
|
|
120
|
+
* }
|
|
121
|
+
*/
|
|
122
|
+
static isRunning(options) {
|
|
123
|
+
const pid = this.getPid(options);
|
|
124
|
+
if (!pid)
|
|
125
|
+
return false;
|
|
126
|
+
try {
|
|
127
|
+
// process.kill(pid, 0) checks if process exists without actually killing it
|
|
128
|
+
process.kill(pid, 0);
|
|
129
|
+
return true;
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
return false;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Checks whether the PID file exists on the filesystem.
|
|
137
|
+
*
|
|
138
|
+
* This method verifies the existence of the PID file without attempting to
|
|
139
|
+
* read its contents or validate the stored PID. It's useful for determining
|
|
140
|
+
* if a previous instance may have created a PID file, regardless of whether
|
|
141
|
+
* that process is still running.
|
|
142
|
+
*
|
|
143
|
+
* @param options - Optional configuration for PID file location
|
|
144
|
+
* @returns true if the PID file exists, false otherwise
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* if (PidManager.pidFileExists()) {
|
|
148
|
+
* console.log('PID file exists, checking if process is running...');
|
|
149
|
+
* if (!PidManager.isRunning()) {
|
|
150
|
+
* console.log('Stale PID file detected, cleaning up...');
|
|
151
|
+
* PidManager.removePid();
|
|
152
|
+
* }
|
|
153
|
+
* }
|
|
154
|
+
*/
|
|
155
|
+
static pidFileExists(options) {
|
|
156
|
+
return pidFileExists(options);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PID management related type definitions
|
|
3
|
+
*/
|
|
4
|
+
export interface PidInfo {
|
|
5
|
+
pid: number;
|
|
6
|
+
timestamp: number;
|
|
7
|
+
port?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface PidFileOptions {
|
|
10
|
+
configDir?: string;
|
|
11
|
+
filename?: string;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/pid/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-server.d.ts","sourceRoot":"","sources":["../../../../src/server/dev-server.ts"],"names":[],"mappings":""}
|