@1mcp/agent 0.13.1 → 0.14.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.
Files changed (74) hide show
  1. package/README.md +28 -20
  2. package/build/constants.d.ts +1 -1
  3. package/build/constants.js +1 -1
  4. package/build/core/client/clientManager.d.ts +55 -39
  5. package/build/core/client/clientManager.d.ts.map +1 -1
  6. package/build/core/client/clientManager.js +180 -171
  7. package/build/core/client/clientManager.js.map +1 -1
  8. package/build/core/server/agentConfig.d.ts +13 -0
  9. package/build/core/server/agentConfig.d.ts.map +1 -1
  10. package/build/core/server/agentConfig.js +16 -0
  11. package/build/core/server/agentConfig.js.map +1 -1
  12. package/build/core/server/serverManager.d.ts +11 -4
  13. package/build/core/server/serverManager.d.ts.map +1 -1
  14. package/build/core/server/serverManager.js +47 -23
  15. package/build/core/server/serverManager.js.map +1 -1
  16. package/build/core/types/server.d.ts +17 -0
  17. package/build/core/types/server.d.ts.map +1 -1
  18. package/build/core/types/server.js +14 -1
  19. package/build/core/types/server.js.map +1 -1
  20. package/build/handlers/notificationHandlers.d.ts +2 -2
  21. package/build/handlers/notificationHandlers.d.ts.map +1 -1
  22. package/build/handlers/notificationHandlers.js +15 -10
  23. package/build/handlers/notificationHandlers.js.map +1 -1
  24. package/build/handlers/requestHandlers.d.ts +1 -1
  25. package/build/handlers/requestHandlers.d.ts.map +1 -1
  26. package/build/handlers/requestHandlers.js +68 -67
  27. package/build/handlers/requestHandlers.js.map +1 -1
  28. package/build/index.js +7 -0
  29. package/build/index.js.map +1 -1
  30. package/build/logger/mcpLoggingEnhancer.d.ts.map +1 -1
  31. package/build/logger/mcpLoggingEnhancer.js +18 -1
  32. package/build/logger/mcpLoggingEnhancer.js.map +1 -1
  33. package/build/server.d.ts.map +1 -1
  34. package/build/server.js +3 -2
  35. package/build/server.js.map +1 -1
  36. package/build/services/configReloadService.d.ts.map +1 -1
  37. package/build/services/configReloadService.js +3 -2
  38. package/build/services/configReloadService.js.map +1 -1
  39. package/build/transport/http/middlewares/httpRequestLogger.d.ts +16 -0
  40. package/build/transport/http/middlewares/httpRequestLogger.d.ts.map +1 -0
  41. package/build/transport/http/middlewares/httpRequestLogger.js +41 -0
  42. package/build/transport/http/middlewares/httpRequestLogger.js.map +1 -0
  43. package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts.map +1 -1
  44. package/build/transport/http/middlewares/scopeAuthMiddleware.js +1 -0
  45. package/build/transport/http/middlewares/scopeAuthMiddleware.js.map +1 -1
  46. package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
  47. package/build/transport/http/routes/oauthRoutes.js +3 -3
  48. package/build/transport/http/routes/oauthRoutes.js.map +1 -1
  49. package/build/transport/http/routes/sseRoutes.d.ts +1 -2
  50. package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
  51. package/build/transport/http/routes/sseRoutes.js +12 -7
  52. package/build/transport/http/routes/sseRoutes.js.map +1 -1
  53. package/build/transport/http/routes/streamableHttpRoutes.d.ts +1 -2
  54. package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
  55. package/build/transport/http/routes/streamableHttpRoutes.js +12 -12
  56. package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
  57. package/build/transport/http/server.d.ts +1 -0
  58. package/build/transport/http/server.d.ts.map +1 -1
  59. package/build/transport/http/server.js +11 -5
  60. package/build/transport/http/server.js.map +1 -1
  61. package/build/transport/transportFactory.js +2 -2
  62. package/build/transport/transportFactory.js.map +1 -1
  63. package/build/utils/operationExecution.d.ts +10 -0
  64. package/build/utils/operationExecution.d.ts.map +1 -0
  65. package/build/utils/operationExecution.js +36 -0
  66. package/build/utils/operationExecution.js.map +1 -0
  67. package/build/utils/pagination.d.ts.map +1 -1
  68. package/build/utils/pagination.js +22 -13
  69. package/build/utils/pagination.js.map +1 -1
  70. package/package.json +1 -1
  71. package/build/core/client/clientFactory.d.ts +0 -25
  72. package/build/core/client/clientFactory.d.ts.map +0 -1
  73. package/build/core/client/clientFactory.js +0 -12
  74. package/build/core/client/clientFactory.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"clientManager.js","sourceRoot":"","sources":["../../../src/core/client/clientManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientManager.js","sourceRoot":"","sources":["../../../src/core/client/clientManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACxG,OAAO,EACL,YAAY,GAMb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,OAAO,aAAa;IAChB,MAAM,CAAC,QAAQ,CAAgB;IAC/B,aAAa,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC/C,UAAU,GAA0C,EAAE,CAAC;IACvD,mBAAmB,GAA+B,IAAI,GAAG,EAAE,CAAC;IAEpE,gBAAuB,CAAC;IAEjB,MAAM,CAAC,mBAAmB;QAC/B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAEM,MAAM,KAAK,OAAO;QACvB,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED,+CAA+C;IACxC,MAAM,CAAC,aAAa;QACzB,aAAa,CAAC,QAAQ,GAAG,SAAgB,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACK,YAAY;QAClB,OAAO,IAAI,MAAM,CACf;YACE,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,kBAAkB;SAC5B,EACD;YACE,YAAY,EAAE,uBAAuB;SACtC,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,oBAAoB;QACzB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa,CAAC,UAAiD;QAC1E,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAE3B,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3D,MAAM,CAAC,IAAI,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAEnC,2BAA2B;gBAC3B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBAE7E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;oBAC3B,IAAI;oBACJ,SAAS;oBACT,MAAM,EAAE,eAAe;oBACvB,MAAM,EAAE,YAAY,CAAC,SAAS;oBAC9B,aAAa,EAAE,IAAI,IAAI,EAAE;iBAC1B,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;gBAE1C,eAAe,CAAC,OAAO,GAAG,GAAG,EAAE;oBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAChD,IAAI,UAAU,EAAE,CAAC;wBACf,UAAU,CAAC,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC;oBAChD,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC,CAAC;gBAC7C,CAAC,CAAC;gBAEF,eAAe,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;oBAClC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,WAAW,KAAK,EAAE,CAAC,CAAC;gBACjD,CAAC,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;oBACxC,6DAA6D;oBAC7D,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;oBAExD,mDAAmD;oBACnD,IAAI,gBAAoC,CAAC;oBACzC,IAAI,CAAC;wBACH,qDAAqD;wBACrD,MAAM,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC;wBAC9C,IAAI,aAAa,IAAI,OAAO,aAAa,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;4BAC7E,gBAAgB,GAAG,aAAa,CAAC,mBAAmB,EAAE,CAAC;wBACzD,CAAC;oBACH,CAAC;oBAAC,OAAO,QAAQ,EAAE,CAAC;wBAClB,MAAM,CAAC,IAAI,CAAC,2CAA2C,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAC5E,CAAC;oBAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;wBAC3B,IAAI;wBACJ,SAAS;wBACT,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,MAAM,EAAE,YAAY,CAAC,aAAa;wBAClC,gBAAgB;wBAChB,cAAc,EAAE,IAAI,IAAI,EAAE;qBAC3B,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,+BAA+B,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;oBAC9D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;wBAC3B,IAAI;wBACJ,SAAS;wBACT,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE;wBAC3B,MAAM,EAAE,YAAY,CAAC,KAAK;wBAC1B,SAAS,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;qBACrE,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,gBAAgB,CAAC,MAAc,EAAE,SAAoB,EAAE,IAAY;QAC/E,IAAI,UAAU,GAAG,gBAAgB,CAAC,gBAAgB,CAAC;QACnD,IAAI,aAAa,GAAG,MAAM,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAEvC,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,gBAAgB,EAAE,CAAC;gBAClD,IAAI,EAAE,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;oBACjC,MAAM,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;gBAC7F,CAAC;gBAED,MAAM,CAAC,IAAI,CAAC,6BAA6B,IAAI,gBAAgB,EAAE,EAAE,IAAI,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;gBAChG,OAAO,aAAa,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,mDAAmD;gBACnD,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;oBACvC,MAAM,aAAa,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;oBACvD,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,WAAW,aAAa,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;oBAE5G,+CAA+C;oBAC/C,MAAM,IAAI,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBACpD,CAAC;gBACD,iCAAiC;qBAC5B,CAAC;oBACJ,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,MAAM,CAAC,KAAK,CAAC,wBAAwB,IAAI,KAAK,YAAY,EAAE,CAAC,CAAC;oBAE9D,IAAI,CAAC,GAAG,gBAAgB,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;wBAC1C,MAAM,CAAC,IAAI,CAAC,eAAe,UAAU,OAAO,CAAC,CAAC;wBAC9C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;wBAChE,UAAU,IAAI,CAAC,CAAC,CAAC,sBAAsB;wBAEvC,kEAAkE;wBAClE,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;oBACtC,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,qBAAqB,CAAC,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnG,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,MAAM,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,UAAkB;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACI,UAAU;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,sBAAsB,CACjC,UAAkB,EAClB,SAAyD,EACzD,UAA4B,EAAE,EAC9B,kBAAqC;QAErC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEhD,IAAI,YAAY,CAAC,MAAM,KAAK,YAAY,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACrF,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,kBAAkB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,gBAAgB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,UAAU,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAElC;IACA;IAFT,YACS,UAAkB,EAClB,MAAc;QAErB,KAAK,CAAC,oCAAoC,UAAU,EAAE,CAAC,CAAC;QAHjD,eAAU,GAAV,UAAU,CAAQ;QAClB,WAAM,GAAN,MAAM,CAAQ;QAGrB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF"}
@@ -7,6 +7,7 @@
7
7
  export interface AgentConfig {
8
8
  host: string;
9
9
  port: number;
10
+ externalUrl?: string;
10
11
  auth: {
11
12
  enabled: boolean;
12
13
  sessionTtlMinutes: number;
@@ -131,5 +132,17 @@ export declare class AgentConfigManager {
131
132
  * @returns True if enhanced security middleware is enabled, false otherwise
132
133
  */
133
134
  isEnhancedSecurityEnabled(): boolean;
135
+ /**
136
+ * Gets the external URL if configured.
137
+ *
138
+ * @returns The external URL or undefined if not set
139
+ */
140
+ getExternalUrl(): string | undefined;
141
+ /**
142
+ * Gets the server URL, preferring external URL if set, otherwise falling back to http://host:port.
143
+ *
144
+ * @returns The server URL to use for OAuth callbacks and public URLs
145
+ */
146
+ getUrl(): string;
134
147
  }
135
148
  //# sourceMappingURL=agentConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentConfig.d.ts","sourceRoot":"","sources":["../../../src/core/server/agentConfig.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,SAAS,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,QAAQ,EAAE;QACR,IAAI,EAAE,OAAO,CAAC;QACd,eAAe,EAAE,OAAO,CAAC;QACzB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,MAAM,CAAc;IAE5B;;;;;OAKG;IACH,OAAO;IAsBP;;;;;;;OAOG;WACW,WAAW,IAAI,kBAAkB;IAO/C;;;;;;;OAOG;IACI,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAaxD;;;;;;;OAOG;IACI,SAAS,IAAI,WAAW;IAI/B;;;;OAIG;IACI,aAAa,IAAI,OAAO;IAI/B;;;;OAIG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;;;OAIG;IACI,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAIlD;;;;OAIG;IACI,iBAAiB,IAAI,MAAM;IAIlC;;;;OAIG;IACI,kBAAkB,IAAI,MAAM;IAInC;;;;OAIG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;;;OAIG;IACI,eAAe,IAAI,MAAM;IAIhC;;;;OAIG;IACI,wBAAwB,IAAI,OAAO;IAI1C;;;;OAIG;IACI,yBAAyB,IAAI,OAAO;CAG5C"}
1
+ {"version":3,"file":"agentConfig.d.ts","sourceRoot":"","sources":["../../../src/core/server/agentConfig.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,SAAS,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,QAAQ,EAAE;QACR,IAAI,EAAE,OAAO,CAAC;QACd,eAAe,EAAE,OAAO,CAAC;QACzB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,CAAC;CACH;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,MAAM,CAAc;IAE5B;;;;;OAKG;IACH,OAAO;IAsBP;;;;;;;OAOG;WACW,WAAW,IAAI,kBAAkB;IAO/C;;;;;;;OAOG;IACI,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAaxD;;;;;;;OAOG;IACI,SAAS,IAAI,WAAW;IAI/B;;;;OAIG;IACI,aAAa,IAAI,OAAO;IAI/B;;;;OAIG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;;;OAIG;IACI,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAIlD;;;;OAIG;IACI,iBAAiB,IAAI,MAAM;IAIlC;;;;OAIG;IACI,kBAAkB,IAAI,MAAM;IAInC;;;;OAIG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;;;OAIG;IACI,eAAe,IAAI,MAAM;IAIhC;;;;OAIG;IACI,wBAAwB,IAAI,OAAO;IAI1C;;;;OAIG;IACI,yBAAyB,IAAI,OAAO;IAI3C;;;;OAIG;IACI,cAAc,IAAI,MAAM,GAAG,SAAS;IAI3C;;;;OAIG;IACI,MAAM,IAAI,MAAM;CAGxB"}
@@ -162,5 +162,21 @@ export class AgentConfigManager {
162
162
  isEnhancedSecurityEnabled() {
163
163
  return this.config.features.enhancedSecurity;
164
164
  }
165
+ /**
166
+ * Gets the external URL if configured.
167
+ *
168
+ * @returns The external URL or undefined if not set
169
+ */
170
+ getExternalUrl() {
171
+ return this.config.externalUrl;
172
+ }
173
+ /**
174
+ * Gets the server URL, preferring external URL if set, otherwise falling back to http://host:port.
175
+ *
176
+ * @returns The server URL to use for OAuth callbacks and public URLs
177
+ */
178
+ getUrl() {
179
+ return this.config.externalUrl || `http://${this.config.host}:${this.config.port}`;
180
+ }
165
181
  }
166
182
  //# sourceMappingURL=agentConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentConfig.js","sourceRoot":"","sources":["../../../src/core/server/agentConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentConfig.js","sourceRoot":"","sources":["../../../src/core/server/agentConfig.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
2
- import { OutboundConnections, InboundConnection, InboundConnectionConfig } from '../types/index.js';
2
+ import { OutboundConnections, InboundConnection, InboundConnectionConfig, OperationOptions } from '../types/index.js';
3
3
  import type { OutboundConnection } from '../types/client.js';
4
4
  export declare class ServerManager {
5
5
  private static instance;
6
- private servers;
6
+ private inboundConns;
7
7
  private serverConfig;
8
8
  private serverCapabilities;
9
- private clients;
9
+ private outboundConns;
10
10
  private transports;
11
11
  private connectionSemaphore;
12
12
  private disconnectingIds;
@@ -16,7 +16,7 @@ export declare class ServerManager {
16
16
  version: string;
17
17
  }, capabilities: {
18
18
  capabilities: Record<string, unknown>;
19
- }, clients: OutboundConnections, transports: Record<string, Transport>): ServerManager;
19
+ }, outboundConns: OutboundConnections, transports: Record<string, Transport>): ServerManager;
20
20
  static get current(): ServerManager;
21
21
  static resetInstance(): void;
22
22
  connectTransport(transport: Transport, sessionId: string, opts: InboundConnectionConfig): Promise<void>;
@@ -35,5 +35,12 @@ export declare class ServerManager {
35
35
  getActiveTransportsCount(): number;
36
36
  getServer(sessionId: string): InboundConnection | undefined;
37
37
  updateClientsAndTransports(newClients: OutboundConnections, newTransports: Record<string, Transport>): void;
38
+ /**
39
+ * Executes a server operation with error handling and retry logic
40
+ * @param inboundConn The inbound connection to execute the operation on
41
+ * @param operation The operation to execute
42
+ * @param options Operation options including timeout and retry settings
43
+ */
44
+ executeServerOperation<T>(inboundConn: InboundConnection, operation: (inboundConn: InboundConnection) => Promise<T>, options?: OperationOptions): Promise<T>;
38
45
  }
39
46
  //# sourceMappingURL=serverManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAK1E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACpG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,OAAO,CAA6C;IAC5D,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,kBAAkB,CAA4C;IAEtE,OAAO,CAAC,OAAO,CAA8D;IAC7E,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,mBAAmB,CAAyC;IACpE,OAAO,CAAC,gBAAgB,CAA0B;IAElD,OAAO;WAYO,mBAAmB,CAC/B,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EACzC,YAAY,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EACvD,OAAO,EAAE,mBAAmB,EAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GACpC,aAAa;IAOhB,WAAkB,OAAO,IAAI,aAAa,CAEzC;WAGa,aAAa,IAAI,IAAI;IAatB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;YA2BtG,iBAAiB;YAwBjB,SAAS;IA4BhB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,IAAI;IA8BzE,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAItD,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;IAUvC,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAIhD,UAAU,IAAI,mBAAmB;IAIxC;;;OAGG;IACI,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAI7D,wBAAwB,IAAI,MAAM;IAIlC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3D,0BAA0B,CAAC,UAAU,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;CAInH"}
1
+ {"version":3,"file":"serverManager.d.ts","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAK1E,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,YAAY,CAA6C;IACjE,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,kBAAkB,CAA4C;IAEtE,OAAO,CAAC,aAAa,CAA8D;IACnF,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,mBAAmB,CAAyC;IACpE,OAAO,CAAC,gBAAgB,CAA0B;IAElD,OAAO;WAYO,mBAAmB,CAC/B,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EACzC,YAAY,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EACvD,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GACpC,aAAa;IAOhB,WAAkB,OAAO,IAAI,aAAa,CAEzC;WAGa,aAAa,IAAI,IAAI;IAatB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;YA2BtG,iBAAiB;YA2BjB,SAAS;IAkChB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,IAAI;IAiCzE,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAItD,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;IAUvC,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAIhD,UAAU,IAAI,mBAAmB;IAIxC;;;OAGG;IACI,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAI7D,wBAAwB,IAAI,MAAM;IAIlC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI3D,0BAA0B,CAAC,UAAU,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAKlH;;;;;OAKG;IACU,sBAAsB,CAAC,CAAC,EACnC,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,CAAC,WAAW,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,EACzD,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,CAAC,CAAC;CAQd"}
@@ -3,24 +3,26 @@ import logger from '../../logger/logger.js';
3
3
  import configReloadService from '../../services/configReloadService.js';
4
4
  import { setupCapabilities } from '../../capabilities/capabilityManager.js';
5
5
  import { enhanceServerWithLogging } from '../../logger/mcpLoggingEnhancer.js';
6
+ import { ServerStatus, } from '../types/index.js';
7
+ import { executeOperation } from '../../utils/operationExecution.js';
6
8
  export class ServerManager {
7
9
  static instance;
8
- servers = new Map();
10
+ inboundConns = new Map();
9
11
  serverConfig;
10
12
  serverCapabilities;
11
- clients = new Map();
13
+ outboundConns = new Map();
12
14
  transports = {};
13
15
  connectionSemaphore = new Map();
14
16
  disconnectingIds = new Set();
15
- constructor(config, capabilities, clients, transports) {
17
+ constructor(config, capabilities, outboundConns, transports) {
16
18
  this.serverConfig = config;
17
19
  this.serverCapabilities = capabilities;
18
- this.clients = clients;
20
+ this.outboundConns = outboundConns;
19
21
  this.transports = transports;
20
22
  }
21
- static getOrCreateInstance(config, capabilities, clients, transports) {
23
+ static getOrCreateInstance(config, capabilities, outboundConns, transports) {
22
24
  if (!ServerManager.instance) {
23
- ServerManager.instance = new ServerManager(config, capabilities, clients, transports);
25
+ ServerManager.instance = new ServerManager(config, capabilities, outboundConns, transports);
24
26
  }
25
27
  return ServerManager.instance;
26
28
  }
@@ -31,10 +33,10 @@ export class ServerManager {
31
33
  static resetInstance() {
32
34
  if (ServerManager.instance) {
33
35
  // Clean up existing connections with forced close
34
- for (const [sessionId] of ServerManager.instance.servers) {
36
+ for (const [sessionId] of ServerManager.instance.inboundConns) {
35
37
  ServerManager.instance.disconnectTransport(sessionId, true);
36
38
  }
37
- ServerManager.instance.servers.clear();
39
+ ServerManager.instance.inboundConns.clear();
38
40
  ServerManager.instance.connectionSemaphore.clear();
39
41
  ServerManager.instance.disconnectingIds.clear();
40
42
  }
@@ -49,7 +51,7 @@ export class ServerManager {
49
51
  return;
50
52
  }
51
53
  // Check if transport is already connected
52
- if (this.servers.has(sessionId)) {
54
+ if (this.inboundConns.has(sessionId)) {
53
55
  logger.warn(`Transport already connected for session ${sessionId}`);
54
56
  return;
55
57
  }
@@ -74,9 +76,11 @@ export class ServerManager {
74
76
  await Promise.race([this.doConnect(transport, sessionId, opts), timeoutPromise]);
75
77
  }
76
78
  catch (error) {
77
- // Clean up partial connection on failure
78
- if (this.servers.has(sessionId)) {
79
- this.servers.delete(sessionId);
79
+ // Update status to Error if connection exists
80
+ const connection = this.inboundConns.get(sessionId);
81
+ if (connection) {
82
+ connection.status = ServerStatus.Error;
83
+ connection.lastError = error instanceof Error ? error : new Error(String(error));
80
84
  }
81
85
  logger.error(`Failed to connect transport for session ${sessionId}:`, error);
82
86
  throw error;
@@ -88,18 +92,23 @@ export class ServerManager {
88
92
  // Create server info object first
89
93
  const serverInfo = {
90
94
  server,
95
+ status: ServerStatus.Connecting,
96
+ connectedAt: new Date(),
91
97
  ...opts,
92
98
  };
93
99
  // Enhance server with logging middleware
94
100
  enhanceServerWithLogging(server);
95
101
  // Set up capabilities for this server instance
96
- await setupCapabilities(this.clients, serverInfo);
102
+ await setupCapabilities(this.outboundConns, serverInfo);
97
103
  // Update the configuration reload service with server info
98
104
  configReloadService.updateServerInfo(sessionId, serverInfo);
99
105
  // Store the server instance
100
- this.servers.set(sessionId, serverInfo);
106
+ this.inboundConns.set(sessionId, serverInfo);
101
107
  // Connect the transport to the new server instance
102
108
  await server.connect(transport);
109
+ // Update status to Connected after successful connection
110
+ serverInfo.status = ServerStatus.Connected;
111
+ serverInfo.lastConnected = new Date();
103
112
  logger.info(`Connected transport for session ${sessionId}`);
104
113
  }
105
114
  disconnectTransport(sessionId, forceClose = false) {
@@ -107,10 +116,12 @@ export class ServerManager {
107
116
  if (this.disconnectingIds.has(sessionId)) {
108
117
  return;
109
118
  }
110
- const server = this.servers.get(sessionId);
119
+ const server = this.inboundConns.get(sessionId);
111
120
  if (server) {
112
121
  this.disconnectingIds.add(sessionId);
113
122
  try {
123
+ // Update status to Disconnected
124
+ server.status = ServerStatus.Disconnected;
114
125
  // Only close the transport if explicitly requested (e.g., during shutdown)
115
126
  // Don't close if this is called from an onclose handler to avoid recursion
116
127
  if (forceClose && server.server.transport) {
@@ -121,7 +132,7 @@ export class ServerManager {
121
132
  logger.error(`Error closing transport for session ${sessionId}:`, error);
122
133
  }
123
134
  }
124
- this.servers.delete(sessionId);
135
+ this.inboundConns.delete(sessionId);
125
136
  configReloadService.removeServerInfo(sessionId);
126
137
  logger.info(`Disconnected transport for session ${sessionId}`);
127
138
  }
@@ -131,11 +142,11 @@ export class ServerManager {
131
142
  }
132
143
  }
133
144
  getTransport(sessionId) {
134
- return this.servers.get(sessionId)?.server.transport;
145
+ return this.inboundConns.get(sessionId)?.server.transport;
135
146
  }
136
147
  getTransports() {
137
148
  const transports = new Map();
138
- for (const [id, server] of this.servers.entries()) {
149
+ for (const [id, server] of this.inboundConns.entries()) {
139
150
  if (server.server.transport) {
140
151
  transports.set(id, server.server.transport);
141
152
  }
@@ -146,24 +157,37 @@ export class ServerManager {
146
157
  return this.transports;
147
158
  }
148
159
  getClients() {
149
- return this.clients;
160
+ return this.outboundConns;
150
161
  }
151
162
  /**
152
163
  * Safely get a client by name. Returns undefined if not found or not an own property.
153
164
  * Encapsulates access to prevent prototype pollution and accidental key collisions.
154
165
  */
155
166
  getClient(serverName) {
156
- return this.clients.get(serverName);
167
+ return this.outboundConns.get(serverName);
157
168
  }
158
169
  getActiveTransportsCount() {
159
- return this.servers.size;
170
+ return this.inboundConns.size;
160
171
  }
161
172
  getServer(sessionId) {
162
- return this.servers.get(sessionId);
173
+ return this.inboundConns.get(sessionId);
163
174
  }
164
175
  updateClientsAndTransports(newClients, newTransports) {
165
- this.clients = newClients;
176
+ this.outboundConns = newClients;
166
177
  this.transports = newTransports;
167
178
  }
179
+ /**
180
+ * Executes a server operation with error handling and retry logic
181
+ * @param inboundConn The inbound connection to execute the operation on
182
+ * @param operation The operation to execute
183
+ * @param options Operation options including timeout and retry settings
184
+ */
185
+ async executeServerOperation(inboundConn, operation, options = {}) {
186
+ // Check connection status before executing operation
187
+ if (inboundConn.status !== ServerStatus.Connected || !inboundConn.server.transport) {
188
+ throw new Error(`Cannot execute operation: server status is ${inboundConn.status}`);
189
+ }
190
+ return executeOperation(() => operation(inboundConn), 'server', options);
191
+ }
168
192
  }
169
193
  //# sourceMappingURL=serverManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverManager.js","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverManager.js","sourceRoot":"","sources":["../../../src/core/server/serverManager.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,18 @@
1
1
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
2
  import { ServerCapabilities } from '@modelcontextprotocol/sdk/types.js';
3
+ /**
4
+ * Enum representing possible server connection states
5
+ */
6
+ export declare enum ServerStatus {
7
+ /** Server is currently connecting */
8
+ Connecting = "connecting",
9
+ /** Server is successfully connected */
10
+ Connected = "connected",
11
+ /** Server is disconnected */
12
+ Disconnected = "disconnected",
13
+ /** Server encountered an error */
14
+ Error = "error"
15
+ }
3
16
  export interface InboundConnectionConfig {
4
17
  readonly tags?: string[];
5
18
  readonly enablePagination?: boolean;
@@ -9,6 +22,10 @@ export interface InboundConnectionConfig {
9
22
  */
10
23
  export interface InboundConnection extends InboundConnectionConfig {
11
24
  readonly server: Server;
25
+ status: ServerStatus;
26
+ lastError?: Error;
27
+ lastConnected?: Date;
28
+ connectedAt?: Date;
12
29
  }
13
30
  export type ServerCapability = keyof ServerCapabilities;
14
31
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAExE;;GAEG;AACH,oBAAY,YAAY;IACtB,qCAAqC;IACrC,UAAU,eAAe;IACzB,uCAAuC;IACvC,SAAS,cAAc;IACvB,6BAA6B;IAC7B,YAAY,iBAAiB;IAC7B,kCAAkC;IAClC,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,IAAI,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC"}
@@ -1,2 +1,15 @@
1
- export {};
1
+ /**
2
+ * Enum representing possible server connection states
3
+ */
4
+ export var ServerStatus;
5
+ (function (ServerStatus) {
6
+ /** Server is currently connecting */
7
+ ServerStatus["Connecting"] = "connecting";
8
+ /** Server is successfully connected */
9
+ ServerStatus["Connected"] = "connected";
10
+ /** Server is disconnected */
11
+ ServerStatus["Disconnected"] = "disconnected";
12
+ /** Server encountered an error */
13
+ ServerStatus["Error"] = "error";
14
+ })(ServerStatus || (ServerStatus = {}));
2
15
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAN,IAAY,YASX;AATD,WAAY,YAAY;IACtB,qCAAqC;IACrC,yCAAyB,CAAA;IACzB,uCAAuC;IACvC,uCAAuB,CAAA;IACvB,6BAA6B;IAC7B,6CAA6B,CAAA;IAC7B,kCAAkC;IAClC,+BAAe,CAAA;AACjB,CAAC,EATW,YAAY,KAAZ,YAAY,QASvB"}
@@ -4,11 +4,11 @@ import { OutboundConnections, InboundConnection } from '../core/types/index.js';
4
4
  * @param clients Record of client instances
5
5
  * @param serverInfo The MCP server instance
6
6
  */
7
- export declare function setupClientToServerNotifications(clients: OutboundConnections, serverInfo: InboundConnection): void;
7
+ export declare function setupClientToServerNotifications(outboundConns: OutboundConnections, inboundConn: InboundConnection): void;
8
8
  /**
9
9
  * Sets up server-to-client notification handlers
10
10
  * @param clients Record of client instances
11
11
  * @param serverInfo The MCP server instance
12
12
  */
13
- export declare function setupServerToClientNotifications(clients: OutboundConnections, serverInfo: InboundConnection): void;
13
+ export declare function setupServerToClientNotifications(outboundConns: OutboundConnections, inboundConn: InboundConnection): void;
14
14
  //# sourceMappingURL=notificationHandlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"notificationHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/notificationHandlers.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAC9F;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAwClH;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAyClH"}
1
+ {"version":3,"file":"notificationHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/notificationHandlers.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAA8B,MAAM,wBAAwB,CAAC;AAC5G;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,mBAAmB,EAClC,WAAW,EAAE,iBAAiB,GAC7B,IAAI,CA8CN;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,mBAAmB,EAClC,WAAW,EAAE,iBAAiB,GAC7B,IAAI,CAyCN"}
@@ -1,13 +1,13 @@
1
1
  import { CancelledNotificationSchema, ProgressNotificationSchema, LoggingMessageNotificationSchema, ResourceUpdatedNotificationSchema, ResourceListChangedNotificationSchema, ToolListChangedNotificationSchema, PromptListChangedNotificationSchema, InitializedNotificationSchema, RootsListChangedNotificationSchema, } from '@modelcontextprotocol/sdk/types.js';
2
2
  import logger from '../logger/logger.js';
3
3
  import { withErrorHandling } from '../utils/errorHandling.js';
4
- import { ClientStatus } from '../core/types/index.js';
4
+ import { ClientStatus, ServerStatus } from '../core/types/index.js';
5
5
  /**
6
6
  * Sets up client-to-server notification handlers
7
7
  * @param clients Record of client instances
8
8
  * @param serverInfo The MCP server instance
9
9
  */
10
- export function setupClientToServerNotifications(clients, serverInfo) {
10
+ export function setupClientToServerNotifications(outboundConns, inboundConn) {
11
11
  const clientNotificationSchemas = [
12
12
  CancelledNotificationSchema,
13
13
  ProgressNotificationSchema,
@@ -17,10 +17,15 @@ export function setupClientToServerNotifications(clients, serverInfo) {
17
17
  ToolListChangedNotificationSchema,
18
18
  PromptListChangedNotificationSchema,
19
19
  ];
20
- for (const [name, clientInfo] of clients.entries()) {
20
+ for (const [name, outboundConn] of outboundConns.entries()) {
21
21
  clientNotificationSchemas.forEach((schema) => {
22
- clientInfo.client.setNotificationHandler(schema, withErrorHandling(async (notification) => {
22
+ outboundConn.client.setNotificationHandler(schema, withErrorHandling(async (notification) => {
23
23
  logger.info(`Received notification in client: ${name} ${JSON.stringify(notification)}`);
24
+ // Check if client is connected before attempting to send
25
+ if (inboundConn.status !== ServerStatus.Connected || !inboundConn.server.transport) {
26
+ logger.warn(`Server transport not connected. Dropping notification from ${name}`);
27
+ return;
28
+ }
24
29
  // Try to send notification, catch connection errors gracefully
25
30
  try {
26
31
  // Preserve original message structure and only modify params
@@ -31,7 +36,7 @@ export function setupClientToServerNotifications(clients, serverInfo) {
31
36
  server: name,
32
37
  },
33
38
  };
34
- serverInfo.server.notification(forwardedNotification);
39
+ inboundConn.server.notification(forwardedNotification);
35
40
  }
36
41
  catch (error) {
37
42
  if (error instanceof Error && error.message.includes('Not connected')) {
@@ -50,18 +55,18 @@ export function setupClientToServerNotifications(clients, serverInfo) {
50
55
  * @param clients Record of client instances
51
56
  * @param serverInfo The MCP server instance
52
57
  */
53
- export function setupServerToClientNotifications(clients, serverInfo) {
58
+ export function setupServerToClientNotifications(outboundConns, inboundConn) {
54
59
  const serverNotificationSchemas = [
55
60
  CancelledNotificationSchema,
56
61
  ProgressNotificationSchema,
57
62
  InitializedNotificationSchema,
58
63
  RootsListChangedNotificationSchema,
59
64
  ];
60
- for (const [name, clientInfo] of clients.entries()) {
65
+ for (const [name, outboundConn] of outboundConns.entries()) {
61
66
  serverNotificationSchemas.forEach((schema) => {
62
- serverInfo.server.setNotificationHandler(schema, withErrorHandling(async (notification) => {
67
+ inboundConn.server.setNotificationHandler(schema, withErrorHandling(async (notification) => {
63
68
  logger.info(`Received notification in server: ${name} ${JSON.stringify(notification)}`);
64
- if (clientInfo.status !== ClientStatus.Connected) {
69
+ if (outboundConn.status !== ClientStatus.Connected || !outboundConn.client.transport) {
65
70
  logger.warn(`Client ${name} is not connected. Notification not sent.`);
66
71
  return;
67
72
  }
@@ -75,7 +80,7 @@ export function setupServerToClientNotifications(clients, serverInfo) {
75
80
  client: name,
76
81
  },
77
82
  };
78
- clientInfo.client.notification(forwardedNotification);
83
+ outboundConn.client.notification(forwardedNotification);
79
84
  }
80
85
  catch (error) {
81
86
  if (error instanceof Error && error.message.includes('Not connected')) {
@@ -1 +1 @@
1
- {"version":3,"file":"notificationHandlers.js","sourceRoot":"","sources":["../../src/handlers/notificationHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,EAChC,iCAAiC,EACjC,qCAAqC,EACrC,iCAAiC,EACjC,mCAAmC,EACnC,6BAA6B,EAC7B,kCAAkC,GACnC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAA0C,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC9F;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,OAA4B,EAAE,UAA6B;IAC1G,MAAM,yBAAyB,GAAG;QAChC,2BAA2B;QAC3B,0BAA0B;QAC1B,gCAAgC;QAChC,iCAAiC;QACjC,qCAAqC;QACrC,iCAAiC;QACjC,mCAAmC;KACpC,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACnD,yBAAyB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,UAAU,CAAC,MAAM,CAAC,sBAAsB,CACtC,MAAM,EACN,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;gBACvC,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBAExF,+DAA+D;gBAC/D,IAAI,CAAC;oBACH,6DAA6D;oBAC7D,MAAM,qBAAqB,GAAG;wBAC5B,MAAM,EAAE,YAAY,CAAC,MAAM;wBAC3B,MAAM,EAAE;4BACN,GAAG,YAAY,CAAC,MAAM;4BACtB,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC;oBACF,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wBACtE,MAAM,CAAC,IAAI,CAAC,8DAA8D,IAAI,EAAE,CAAC,CAAC;oBACpF,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;YACH,CAAC,EAAE,2CAA2C,IAAI,EAAE,CAAC,CACtD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,OAA4B,EAAE,UAA6B;IAC1G,MAAM,yBAAyB,GAAG;QAChC,2BAA2B;QAC3B,0BAA0B;QAC1B,6BAA6B;QAC7B,kCAAkC;KACnC,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACnD,yBAAyB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3C,UAAU,CAAC,MAAM,CAAC,sBAAsB,CACtC,MAAM,EACN,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;gBACvC,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBACxF,IAAI,UAAU,CAAC,MAAM,KAAK,YAAY,CAAC,SAAS,EAAE,CAAC;oBACjD,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,2CAA2C,CAAC,CAAC;oBACvE,OAAO;gBACT,CAAC;gBAED,+DAA+D;gBAC/D,IAAI,CAAC;oBACH,6DAA6D;oBAC7D,MAAM,qBAAqB,GAAG;wBAC5B,MAAM,EAAE,YAAY,CAAC,MAAM;wBAC3B,MAAM,EAAE;4BACN,GAAG,YAAY,CAAC,MAAM;4BACtB,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC;oBACF,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wBACtE,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,kDAAkD,CAAC,CAAC;oBAChF,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CAAC,kCAAkC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;oBACnE,CAAC;gBACH,CAAC;YACH,CAAC,EAAE,yCAAyC,IAAI,EAAE,CAAC,CACpD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"notificationHandlers.js","sourceRoot":"","sources":["../../src/handlers/notificationHandlers.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,5 @@ import { OutboundConnections, InboundConnection } from '../core/types/index.js';
6
6
  * @param capabilities The server capabilities
7
7
  * @param tags Array of tags to filter clients by
8
8
  */
9
- export declare function registerRequestHandlers(clients: OutboundConnections, serverInfo: InboundConnection): void;
9
+ export declare function registerRequestHandlers(outboundConns: OutboundConnections, inboundConn: InboundConnection): void;
10
10
  //# sourceMappingURL=requestHandlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"requestHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"AAgCA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAqD9F;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,iBAAiB,GAAG,IAAI,CA6CzG"}
1
+ {"version":3,"file":"requestHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAuD9F;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,iBAAiB,GAAG,IAAI,CA6ChH"}