@cyanheads/pubmed-mcp-server 1.3.5 → 1.4.1

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 (191) hide show
  1. package/README.md +21 -21
  2. package/dist/config/index.d.ts +9 -0
  3. package/dist/config/index.d.ts.map +1 -1
  4. package/dist/config/index.js +67 -11
  5. package/dist/config/index.js.map +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/mcp-server/core/managedMcpServer.d.ts +48 -0
  8. package/dist/mcp-server/core/managedMcpServer.d.ts.map +1 -0
  9. package/dist/mcp-server/core/managedMcpServer.js +58 -0
  10. package/dist/mcp-server/core/managedMcpServer.js.map +1 -0
  11. package/dist/mcp-server/server.d.ts.map +1 -1
  12. package/dist/mcp-server/server.js +11 -11
  13. package/dist/mcp-server/server.js.map +1 -1
  14. package/dist/mcp-server/tools/pubmedArticleConnections/index.d.ts +7 -0
  15. package/dist/mcp-server/tools/pubmedArticleConnections/index.d.ts.map +1 -0
  16. package/dist/mcp-server/tools/pubmedArticleConnections/index.js +7 -0
  17. package/dist/mcp-server/tools/pubmedArticleConnections/index.js.map +1 -0
  18. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.d.ts +10 -0
  19. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.d.ts.map +1 -0
  20. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/citationFormatter.js +2 -2
  21. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.js.map +1 -0
  22. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.d.ts +10 -0
  23. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.d.ts.map +1 -0
  24. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/elinkHandler.js +2 -2
  25. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.js.map +1 -0
  26. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/index.d.ts +9 -9
  27. package/dist/mcp-server/tools/pubmedArticleConnections/logic/index.d.ts.map +1 -0
  28. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/index.js +14 -14
  29. package/dist/mcp-server/tools/pubmedArticleConnections/logic/index.js.map +1 -0
  30. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/types.d.ts +4 -4
  31. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.d.ts.map +1 -0
  32. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.js +6 -0
  33. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.js.map +1 -0
  34. package/dist/mcp-server/tools/pubmedArticleConnections/registration.d.ts +12 -0
  35. package/dist/mcp-server/tools/pubmedArticleConnections/registration.d.ts.map +1 -0
  36. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/registration.js +11 -11
  37. package/dist/mcp-server/tools/pubmedArticleConnections/registration.js.map +1 -0
  38. package/dist/mcp-server/tools/pubmedFetchContents/index.d.ts +7 -0
  39. package/dist/mcp-server/tools/pubmedFetchContents/index.d.ts.map +1 -0
  40. package/dist/mcp-server/tools/pubmedFetchContents/index.js +7 -0
  41. package/dist/mcp-server/tools/pubmedFetchContents/index.js.map +1 -0
  42. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/logic.d.ts +6 -6
  43. package/dist/mcp-server/tools/pubmedFetchContents/logic.d.ts.map +1 -0
  44. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/logic.js +16 -16
  45. package/dist/mcp-server/tools/pubmedFetchContents/logic.js.map +1 -0
  46. package/dist/mcp-server/tools/pubmedFetchContents/registration.d.ts +11 -0
  47. package/dist/mcp-server/tools/pubmedFetchContents/registration.d.ts.map +1 -0
  48. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/registration.js +12 -12
  49. package/dist/mcp-server/tools/pubmedFetchContents/registration.js.map +1 -0
  50. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/index.d.ts +2 -2
  51. package/dist/mcp-server/tools/pubmedGenerateChart/index.d.ts.map +1 -0
  52. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/index.js +2 -2
  53. package/dist/mcp-server/tools/pubmedGenerateChart/index.js.map +1 -0
  54. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.d.ts +4 -4
  55. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.d.ts.map +1 -1
  56. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.js +14 -14
  57. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.js.map +1 -1
  58. package/dist/mcp-server/tools/pubmedGenerateChart/registration.d.ts +8 -0
  59. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/registration.d.ts.map +1 -1
  60. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/registration.js +9 -13
  61. package/dist/mcp-server/tools/pubmedGenerateChart/registration.js.map +1 -0
  62. package/dist/mcp-server/tools/pubmedSearchArticles/index.d.ts +7 -0
  63. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/index.d.ts.map +1 -1
  64. package/dist/mcp-server/tools/pubmedSearchArticles/index.js +7 -0
  65. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/index.js.map +1 -1
  66. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.d.ts +7 -7
  67. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.d.ts.map +1 -1
  68. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.js +11 -11
  69. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.js.map +1 -1
  70. package/dist/mcp-server/tools/pubmedSearchArticles/registration.d.ts +11 -0
  71. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/registration.d.ts.map +1 -1
  72. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/registration.js +12 -12
  73. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/registration.js.map +1 -1
  74. package/dist/mcp-server/transports/auth/index.d.ts +1 -1
  75. package/dist/mcp-server/transports/auth/index.d.ts.map +1 -1
  76. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -1
  77. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +4 -0
  78. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -1
  79. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -1
  80. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +5 -0
  81. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -1
  82. package/dist/mcp-server/transports/core/headerUtils.d.ts +20 -0
  83. package/dist/mcp-server/transports/core/headerUtils.d.ts.map +1 -0
  84. package/dist/mcp-server/transports/core/headerUtils.js +38 -0
  85. package/dist/mcp-server/transports/core/headerUtils.js.map +1 -0
  86. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts +60 -7
  87. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts.map +1 -1
  88. package/dist/mcp-server/transports/core/honoNodeBridge.js +99 -12
  89. package/dist/mcp-server/transports/core/honoNodeBridge.js.map +1 -1
  90. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts +53 -8
  91. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts.map +1 -1
  92. package/dist/mcp-server/transports/core/statefulTransportManager.js +180 -117
  93. package/dist/mcp-server/transports/core/statefulTransportManager.js.map +1 -1
  94. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts +44 -7
  95. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts.map +1 -1
  96. package/dist/mcp-server/transports/core/statelessTransportManager.js +84 -24
  97. package/dist/mcp-server/transports/core/statelessTransportManager.js.map +1 -1
  98. package/dist/mcp-server/transports/core/transportTypes.d.ts +58 -21
  99. package/dist/mcp-server/transports/core/transportTypes.d.ts.map +1 -1
  100. package/dist/mcp-server/transports/core/transportTypes.js +3 -1
  101. package/dist/mcp-server/transports/core/transportTypes.js.map +1 -1
  102. package/dist/mcp-server/transports/http/httpTransport.d.ts +3 -3
  103. package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -1
  104. package/dist/mcp-server/transports/http/httpTransport.js +51 -19
  105. package/dist/mcp-server/transports/http/httpTransport.js.map +1 -1
  106. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts +3 -2
  107. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts.map +1 -1
  108. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js +26 -24
  109. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js.map +1 -1
  110. package/dist/utils/index.d.ts +2 -0
  111. package/dist/utils/index.d.ts.map +1 -1
  112. package/dist/utils/index.js +2 -0
  113. package/dist/utils/index.js.map +1 -1
  114. package/dist/utils/internal/errorHandler.d.ts +0 -7
  115. package/dist/utils/internal/errorHandler.d.ts.map +1 -1
  116. package/dist/utils/internal/errorHandler.js +27 -11
  117. package/dist/utils/internal/errorHandler.js.map +1 -1
  118. package/dist/utils/internal/index.d.ts +1 -0
  119. package/dist/utils/internal/index.d.ts.map +1 -1
  120. package/dist/utils/internal/index.js +1 -0
  121. package/dist/utils/internal/index.js.map +1 -1
  122. package/dist/utils/internal/logger.d.ts.map +1 -1
  123. package/dist/utils/internal/logger.js +2 -0
  124. package/dist/utils/internal/logger.js.map +1 -1
  125. package/dist/utils/internal/performance.d.ts +22 -0
  126. package/dist/utils/internal/performance.d.ts.map +1 -0
  127. package/dist/utils/internal/performance.js +104 -0
  128. package/dist/utils/internal/performance.js.map +1 -0
  129. package/dist/utils/internal/requestContext.d.ts.map +1 -1
  130. package/dist/utils/internal/requestContext.js +10 -0
  131. package/dist/utils/internal/requestContext.js.map +1 -1
  132. package/dist/utils/network/fetchWithTimeout.d.ts.map +1 -1
  133. package/dist/utils/network/fetchWithTimeout.js +18 -0
  134. package/dist/utils/network/fetchWithTimeout.js.map +1 -1
  135. package/dist/utils/parsing/dateParser.d.ts +2 -3
  136. package/dist/utils/parsing/dateParser.d.ts.map +1 -1
  137. package/dist/utils/parsing/dateParser.js +2 -2
  138. package/dist/utils/parsing/dateParser.js.map +1 -1
  139. package/dist/utils/parsing/jsonParser.d.ts +1 -1
  140. package/dist/utils/parsing/jsonParser.d.ts.map +1 -1
  141. package/dist/utils/parsing/jsonParser.js +5 -4
  142. package/dist/utils/parsing/jsonParser.js.map +1 -1
  143. package/dist/utils/security/idGenerator.d.ts.map +1 -1
  144. package/dist/utils/security/idGenerator.js +5 -1
  145. package/dist/utils/security/idGenerator.js.map +1 -1
  146. package/dist/utils/security/rateLimiter.d.ts.map +1 -1
  147. package/dist/utils/security/rateLimiter.js +22 -6
  148. package/dist/utils/security/rateLimiter.js.map +1 -1
  149. package/dist/utils/telemetry/instrumentation.d.ts +8 -0
  150. package/dist/utils/telemetry/instrumentation.d.ts.map +1 -0
  151. package/dist/utils/telemetry/instrumentation.js +179 -0
  152. package/dist/utils/telemetry/instrumentation.js.map +1 -0
  153. package/dist/utils/telemetry/semconv.d.ts +16 -0
  154. package/dist/utils/telemetry/semconv.d.ts.map +1 -0
  155. package/dist/utils/telemetry/semconv.js +16 -0
  156. package/dist/utils/telemetry/semconv.js.map +1 -0
  157. package/package.json +31 -14
  158. package/dist/mcp-server/tools/fetchPubMedContent/index.d.ts +0 -7
  159. package/dist/mcp-server/tools/fetchPubMedContent/index.d.ts.map +0 -1
  160. package/dist/mcp-server/tools/fetchPubMedContent/index.js +0 -7
  161. package/dist/mcp-server/tools/fetchPubMedContent/index.js.map +0 -1
  162. package/dist/mcp-server/tools/fetchPubMedContent/logic.d.ts.map +0 -1
  163. package/dist/mcp-server/tools/fetchPubMedContent/logic.js.map +0 -1
  164. package/dist/mcp-server/tools/fetchPubMedContent/registration.d.ts +0 -11
  165. package/dist/mcp-server/tools/fetchPubMedContent/registration.d.ts.map +0 -1
  166. package/dist/mcp-server/tools/fetchPubMedContent/registration.js.map +0 -1
  167. package/dist/mcp-server/tools/generatePubMedChart/index.d.ts.map +0 -1
  168. package/dist/mcp-server/tools/generatePubMedChart/index.js.map +0 -1
  169. package/dist/mcp-server/tools/generatePubMedChart/registration.d.ts +0 -8
  170. package/dist/mcp-server/tools/generatePubMedChart/registration.js.map +0 -1
  171. package/dist/mcp-server/tools/getPubMedArticleConnections/index.d.ts +0 -7
  172. package/dist/mcp-server/tools/getPubMedArticleConnections/index.d.ts.map +0 -1
  173. package/dist/mcp-server/tools/getPubMedArticleConnections/index.js +0 -7
  174. package/dist/mcp-server/tools/getPubMedArticleConnections/index.js.map +0 -1
  175. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/citationFormatter.d.ts +0 -10
  176. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/citationFormatter.d.ts.map +0 -1
  177. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/citationFormatter.js.map +0 -1
  178. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/elinkHandler.d.ts +0 -10
  179. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/elinkHandler.d.ts.map +0 -1
  180. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/elinkHandler.js.map +0 -1
  181. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/index.d.ts.map +0 -1
  182. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/index.js.map +0 -1
  183. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/types.d.ts.map +0 -1
  184. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/types.js +0 -6
  185. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/types.js.map +0 -1
  186. package/dist/mcp-server/tools/getPubMedArticleConnections/registration.d.ts +0 -12
  187. package/dist/mcp-server/tools/getPubMedArticleConnections/registration.d.ts.map +0 -1
  188. package/dist/mcp-server/tools/getPubMedArticleConnections/registration.js.map +0 -1
  189. package/dist/mcp-server/tools/searchPubMedArticles/index.d.ts +0 -7
  190. package/dist/mcp-server/tools/searchPubMedArticles/index.js +0 -7
  191. package/dist/mcp-server/tools/searchPubMedArticles/registration.d.ts +0 -11
@@ -2,7 +2,7 @@ import { ChartJSNodeCanvas } from "chartjs-node-canvas";
2
2
  import { z } from "zod";
3
3
  import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
4
4
  import { logger, requestContextService, sanitizeInputForLogging, } from "../../../utils/index.js";
5
- export const GeneratePubMedChartInputSchema = z.object({
5
+ export const PubMedGenerateChartInputSchema = z.object({
6
6
  chartType: z
7
7
  .enum([
8
8
  "bar",
@@ -14,47 +14,47 @@ export const GeneratePubMedChartInputSchema = z.object({
14
14
  "radar",
15
15
  "polarArea",
16
16
  ])
17
- .describe("Required. Specifies the type of chart to generate. Options: 'bar', 'line', 'scatter', 'pie', 'doughnut', 'bubble', 'radar', 'polarArea'."),
17
+ .describe("Specifies the type of chart to generate."),
18
18
  title: z
19
19
  .string()
20
20
  .optional()
21
- .describe("Optional. The main title displayed above the chart. If omitted, no title is shown."),
21
+ .describe("The main title displayed above the chart."),
22
22
  width: z
23
23
  .number()
24
24
  .int()
25
25
  .positive()
26
26
  .optional()
27
27
  .default(800)
28
- .describe("Optional. The width of the chart canvas in pixels. Must be a positive integer. Default: 800."),
28
+ .describe("The width of the chart canvas in pixels."),
29
29
  height: z
30
30
  .number()
31
31
  .int()
32
32
  .positive()
33
33
  .optional()
34
34
  .default(600)
35
- .describe("Optional. The height of the chart canvas in pixels. Must be a positive integer. Default: 600."),
35
+ .describe("The height of the chart canvas in pixels."),
36
36
  dataValues: z
37
37
  .array(z.record(z.string(), z.any()))
38
38
  .min(1)
39
- .describe("Required. An array of data objects used to plot the chart. Each object represents a data point or bar, structured as key-value pairs (e.g., [{ 'year': '2020', 'articles': 150 }, { 'year': '2021', 'articles': 180 }]). Must contain at least one data object."),
39
+ .describe("An array of data objects to plot the chart (e.g., [{ 'year': '2020', 'articles': 150 }])."),
40
40
  outputFormat: z
41
41
  .enum(["png"])
42
42
  .default("png")
43
- .describe("Specifies the output format for the chart. Currently, only 'png' (Portable Network Graphics) is supported and is the default."),
43
+ .describe("Specifies the output format for the chart."),
44
44
  xField: z
45
45
  .string()
46
- .describe("Required. The name of the field in `dataValues` to be used for the X-axis (horizontal). This field determines the categories or values along the bottom of the chart (e.g., 'year', 'geneName', 'publicationCount')."),
46
+ .describe("The field name from `dataValues` for the X-axis."),
47
47
  yField: z
48
48
  .string()
49
- .describe("Required. The name of the field in `dataValues` to be used for the Y-axis (vertical). This field determines the values plotted upwards on the chart (e.g., 'articles', 'expressionLevel', 'citationCount')."),
49
+ .describe("The field name from `dataValues` for the Y-axis."),
50
50
  seriesField: z
51
51
  .string()
52
52
  .optional()
53
- .describe("Optional. The name of the field in `dataValues` used to create multiple distinct lines or bar groups (series) on the same chart. Each unique value in this field will correspond to a separate dataset."),
53
+ .describe("The field name for creating multiple data series on the same chart."),
54
54
  sizeField: z
55
55
  .string()
56
56
  .optional()
57
- .describe("Optional. For bubble charts. The name of the field in `dataValues` to use for encoding the size of the bubbles. Larger values in this field will result in larger bubbles (e.g., 'sampleSize', 'effectMagnitude')."),
57
+ .describe("For bubble charts, the field name for encoding bubble size."),
58
58
  });
59
59
  // Helper to group data by a series field
60
60
  function groupDataBySeries(data, xField, yField, seriesField) {
@@ -68,13 +68,13 @@ function groupDataBySeries(data, xField, yField, seriesField) {
68
68
  }
69
69
  return series;
70
70
  }
71
- export async function generatePubMedChartLogic(input, parentRequestContext) {
71
+ export async function pubmedGenerateChartLogic(input, parentRequestContext) {
72
72
  const operationContext = requestContextService.createRequestContext({
73
73
  parentRequestId: parentRequestContext.requestId,
74
- operation: "generatePubMedChartLogicExecution",
74
+ operation: "pubmedGenerateChartLogicExecution",
75
75
  input: sanitizeInputForLogging(input),
76
76
  });
77
- logger.info(`Executing 'generate_pubmed_chart' with Chart.js. Chart type: ${input.chartType}`, operationContext);
77
+ logger.info(`Executing 'pubmed_generate_chart' with Chart.js. Chart type: ${input.chartType}`, operationContext);
78
78
  const { width, height, chartType, dataValues, xField, yField, title, seriesField, sizeField, } = input;
79
79
  const chartJSNodeCanvas = new ChartJSNodeCanvas({
80
80
  width,
@@ -1 +1 @@
1
- {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/generatePubMedChart/logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/logic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @fileoverview Registers the 'pubmed_generate_chart' tool with the MCP server.
3
+ * This tool now accepts parameterized input for generating charts.
4
+ * @module src/mcp-server/tools/pubmedGenerateChart/registration
5
+ */
6
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
7
+ export declare function registerPubMedGenerateChartTool(server: McpServer): Promise<void>;
8
+ //# sourceMappingURL=registration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/generatePubMedChart/registration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAwFf"}
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/registration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAoFf"}
@@ -1,25 +1,21 @@
1
1
  import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
2
2
  import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
3
- import { GeneratePubMedChartInputSchema, generatePubMedChartLogic, } from "./logic.js";
4
- export async function registerGeneratePubMedChartTool(server) {
5
- const operation = "registerGeneratePubMedChartTool";
6
- const toolName = "generate_pubmed_chart";
7
- const toolDescription = "Generates a customizable chart (PNG) from structured data. " +
8
- "Supports 'bar', 'line', 'scatter', 'pie', 'doughnut', 'bubble', 'radar', and 'polarArea' plots. " +
9
- "Requires data values and field mappings for axes. " +
10
- "Optional parameters allow for titles and dimensions. " +
11
- "Internally uses Chart.js and chartjs-node-canvas to produce a Base64-encoded PNG image.";
3
+ import { PubMedGenerateChartInputSchema, pubmedGenerateChartLogic, } from "./logic.js";
4
+ export async function registerPubMedGenerateChartTool(server) {
5
+ const operation = "registerPubMedGenerateChartTool";
6
+ const toolName = "pubmed_generate_chart";
7
+ const toolDescription = "Generates a customizable chart (PNG) from structured data. Supports various plot types and requires data values and field mappings for axes. Returns a Base64-encoded PNG image.";
12
8
  const context = requestContextService.createRequestContext({ operation });
13
9
  await ErrorHandler.tryCatch(async () => {
14
- server.tool(toolName, toolDescription, GeneratePubMedChartInputSchema.shape, async (input, mcpProvidedContext) => {
10
+ server.tool(toolName, toolDescription, PubMedGenerateChartInputSchema.shape, async (input, mcpProvidedContext) => {
15
11
  const richContext = requestContextService.createRequestContext({
16
12
  parentRequestId: context.requestId,
17
- operation: "generatePubMedChartToolHandler",
13
+ operation: "pubmedGenerateChartToolHandler",
18
14
  mcpToolContext: mcpProvidedContext,
19
15
  input,
20
16
  });
21
17
  try {
22
- const result = await generatePubMedChartLogic(input, richContext);
18
+ const result = await pubmedGenerateChartLogic(input, richContext);
23
19
  return {
24
20
  content: [
25
21
  {
@@ -33,7 +29,7 @@ export async function registerGeneratePubMedChartTool(server) {
33
29
  }
34
30
  catch (error) {
35
31
  const handledError = ErrorHandler.handleError(error, {
36
- operation: "generatePubMedChartToolHandler",
32
+ operation: "pubmedGenerateChartToolHandler",
37
33
  context: richContext,
38
34
  input,
39
35
  rethrow: false,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/registration.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,8BAA8B,EAC9B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAiB;IAEjB,MAAM,SAAS,GAAG,iCAAiC,CAAC;IACpD,MAAM,QAAQ,GAAG,uBAAuB,CAAC;IACzC,MAAM,eAAe,GACnB,kLAAkL,CAAC;IACrL,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,YAAY,CAAC,QAAQ,CACzB,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,eAAe,EACf,8BAA8B,CAAC,KAAK,EACpC,KAAK,EACH,KAA+B,EAC/B,kBAAuB,EACE,EAAE;YAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,SAAS,EAAE,gCAAgC;gBAC3C,cAAc,EAAE,kBAAkB;gBAClC,KAAK;aACN,CAAC,CAAC;YAEL,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,MAAM,CAAC,UAAU;4BACvB,QAAQ,EAAE,WAAW;yBACtB;qBACF;oBACD,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;oBACnD,SAAS,EAAE,gCAAgC;oBAC3C,OAAO,EAAE,WAAW;oBACpB,KAAK;oBACL,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,MAAM,QAAQ,GACZ,YAAY,YAAY,QAAQ;oBAC9B,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,IAAI,QAAQ,CACV,aAAa,CAAC,cAAc,EAC5B,0DAA0D,EAC1D;wBACE,iBAAiB,EAAE,YAAY,CAAC,IAAI;wBACpC,oBAAoB,EAAE,YAAY,CAAC,OAAO;qBAC3C,CACF,CAAC;gBAER,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oCACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iCAC1B;6BACF,CAAC;yBACH;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC,EACD;QACE,SAAS;QACT,OAAO;QACP,SAAS,EAAE,aAAa,CAAC,qBAAqB;QAC9C,QAAQ,EAAE,IAAI;KACf,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @fileoverview Barrel file for the pubmedSearchArticles tool.
3
+ * Exports the tool's registration function.
4
+ * @module src/mcp-server/tools/pubmedSearchArticles/index
5
+ */
6
+ export { registerPubMedSearchArticlesTool } from "./registration.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @fileoverview Barrel file for the pubmedSearchArticles tool.
3
+ * Exports the tool's registration function.
4
+ * @module src/mcp-server/tools/pubmedSearchArticles/index
5
+ */
6
+ export { registerPubMedSearchArticlesTool } from "./registration.js";
7
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,13 +1,13 @@
1
1
  /**
2
- * @fileoverview Logic for the searchPubMedArticles MCP tool.
2
+ * @fileoverview Logic for the pubmed_search_articles MCP tool.
3
3
  * Handles constructing ESearch and ESummary queries, interacting with
4
4
  * the NcbiService, and formatting the results.
5
- * @module src/mcp-server/tools/searchPubMedArticles/logic
5
+ * @module src/mcp-server/tools/pubmedSearchArticles/logic
6
6
  */
7
7
  import { z } from "zod";
8
8
  import { ParsedBriefSummary } from "../../../types-global/pubmedXml.js";
9
9
  import { RequestContext } from "../../../utils/index.js";
10
- export declare const SearchPubMedArticlesInputSchema: z.ZodObject<{
10
+ export declare const PubMedSearchArticlesInputSchema: z.ZodObject<{
11
11
  queryTerm: z.ZodString;
12
12
  maxResults: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
13
13
  sortBy: z.ZodDefault<z.ZodOptional<z.ZodEnum<["relevance", "pub_date", "author", "journal_name"]>>>;
@@ -49,9 +49,9 @@ export declare const SearchPubMedArticlesInputSchema: z.ZodObject<{
49
49
  filterByPublicationTypes?: string[] | undefined;
50
50
  fetchBriefSummaries?: number | undefined;
51
51
  }>;
52
- export type SearchPubMedArticlesInput = z.infer<typeof SearchPubMedArticlesInputSchema>;
53
- export type SearchPubMedArticlesOutput = {
54
- searchParameters: SearchPubMedArticlesInput;
52
+ export type PubMedSearchArticlesInput = z.infer<typeof PubMedSearchArticlesInputSchema>;
53
+ export type PubMedSearchArticlesOutput = {
54
+ searchParameters: PubMedSearchArticlesInput;
55
55
  effectiveESearchTerm: string;
56
56
  totalFound: number;
57
57
  retrievedPmidCount: number;
@@ -60,5 +60,5 @@ export type SearchPubMedArticlesOutput = {
60
60
  eSearchUrl: string;
61
61
  eSummaryUrl?: string;
62
62
  };
63
- export declare function searchPubMedArticlesLogic(input: SearchPubMedArticlesInput, parentRequestContext: RequestContext): Promise<SearchPubMedArticlesOutput>;
63
+ export declare function pubmedSearchArticlesLogic(input: PubMedSearchArticlesInput, parentRequestContext: RequestContext): Promise<PubMedSearchArticlesOutput>;
64
64
  //# sourceMappingURL=logic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/logic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAIjC,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0E1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAgBF,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,yBAAyB,EAChC,oBAAoB,EAAE,cAAc,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAsJrC"}
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/logic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,kBAAkB,EACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAIjC,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwE1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAgBF,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,yBAAyB,EAChC,oBAAoB,EAAE,cAAc,GACnC,OAAO,CAAC,0BAA0B,CAAC,CAsJrC"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * @fileoverview Logic for the searchPubMedArticles MCP tool.
2
+ * @fileoverview Logic for the pubmed_search_articles MCP tool.
3
3
  * Handles constructing ESearch and ESummary queries, interacting with
4
4
  * the NcbiService, and formatting the results.
5
- * @module src/mcp-server/tools/searchPubMedArticles/logic
5
+ * @module src/mcp-server/tools/pubmedSearchArticles/logic
6
6
  */
7
7
  import { z } from "zod";
8
8
  import { getNcbiService } from "../../../services/NCBI/core/ncbiService.js";
@@ -10,7 +10,7 @@ import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
10
10
  import { logger, requestContextService, sanitizeInputForLogging, } from "../../../utils/index.js";
11
11
  import { extractBriefSummaries } from "../../../services/NCBI/parsing/index.js";
12
12
  import { sanitization } from "../../../utils/security/sanitization.js";
13
- export const SearchPubMedArticlesInputSchema = z.object({
13
+ export const PubMedSearchArticlesInputSchema = z.object({
14
14
  queryTerm: z
15
15
  .string()
16
16
  .min(3, "Query term must be at least 3 characters")
@@ -27,7 +27,7 @@ export const SearchPubMedArticlesInputSchema = z.object({
27
27
  .enum(["relevance", "pub_date", "author", "journal_name"])
28
28
  .optional()
29
29
  .default("relevance")
30
- .describe("Sorting criteria for results. Options: 'relevance' (default), 'pub_date', 'author', 'journal_name'. Note: Other sorting (e.g., last_author, title) may require client-side implementation or be future server enhancements."),
30
+ .describe("Sorting criteria for results. Options: 'relevance' (default), 'pub_date', 'author', 'journal_name'."),
31
31
  dateRange: z
32
32
  .object({
33
33
  minDate: z
@@ -47,11 +47,11 @@ export const SearchPubMedArticlesInputSchema = z.object({
47
47
  .describe("The type of date to filter by: 'pdat' (Publication Date), 'mdat' (Modification Date), 'edat' (Entrez Date). Default is 'pdat'."),
48
48
  })
49
49
  .optional()
50
- .describe("Defines an optional date range for the search, including min/max dates and the type of date field to use."),
50
+ .describe("Defines an optional date range for the search."),
51
51
  filterByPublicationTypes: z
52
52
  .array(z.string())
53
53
  .optional()
54
- .describe('An array of publication types to filter by (e.g., ["Review", "Clinical Trial"]). The server maps these to the appropriate Entrez query syntax (e.g., "Review"[Publication Type]).'),
54
+ .describe('An array of publication types to filter by (e.g., ["Review", "Clinical Trial"]).'),
55
55
  fetchBriefSummaries: z
56
56
  .number()
57
57
  .int()
@@ -59,16 +59,16 @@ export const SearchPubMedArticlesInputSchema = z.object({
59
59
  .max(50)
60
60
  .optional()
61
61
  .default(0)
62
- .describe("Number of top PMIDs for which to fetch brief summaries using ESummary v2.0. Set to 0 to disable. Maximum is 50 for this tool. Default is 0."),
62
+ .describe("Number of top PMIDs for which to fetch brief summaries using ESummary. Set to 0 to disable. Max 50. Default 0."),
63
63
  });
64
- export async function searchPubMedArticlesLogic(input, parentRequestContext) {
64
+ export async function pubmedSearchArticlesLogic(input, parentRequestContext) {
65
65
  const ncbiService = getNcbiService();
66
66
  const toolLogicContext = requestContextService.createRequestContext({
67
67
  parentRequestId: parentRequestContext.requestId,
68
- operation: "searchPubMedArticlesLogic",
68
+ operation: "pubmedSearchArticlesLogic",
69
69
  input: sanitizeInputForLogging(input),
70
70
  });
71
- logger.info("Executing searchPubMedArticles tool", toolLogicContext);
71
+ logger.info("Executing pubmed_search_articles tool", toolLogicContext);
72
72
  let effectiveQuery = sanitization.sanitizeString(input.queryTerm, {
73
73
  context: "text",
74
74
  });
@@ -157,7 +157,7 @@ export async function searchPubMedArticlesLogic(input, parentRequestContext) {
157
157
  });
158
158
  }
159
159
  }
160
- logger.notice("Successfully executed searchPubMedArticles tool.", {
160
+ logger.notice("Successfully executed pubmed_search_articles tool.", {
161
161
  ...toolLogicContext,
162
162
  totalFound,
163
163
  retrievedPmidCount,
@@ -1 +1 @@
1
- {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/logic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview Registration for the pubmed_search_articles MCP tool.
3
+ * @module src/mcp-server/tools/pubmedSearchArticles/registration
4
+ */
5
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
6
+ /**
7
+ * Registers the pubmed_search_articles tool with the MCP server.
8
+ * @param server - The McpServer instance.
9
+ */
10
+ export declare function registerPubMedSearchArticlesTool(server: McpServer): Promise<void>;
11
+ //# sourceMappingURL=registration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE;;;GAGG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAgFf"}
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE;;;GAGG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAgFf"}
@@ -1,29 +1,29 @@
1
1
  /**
2
- * @fileoverview Registration for the searchPubMedArticles MCP tool.
3
- * @module src/mcp-server/tools/searchPubMedArticles/registration
2
+ * @fileoverview Registration for the pubmed_search_articles MCP tool.
3
+ * @module src/mcp-server/tools/pubmedSearchArticles/registration
4
4
  */
5
5
  import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
6
6
  import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
7
- import { SearchPubMedArticlesInputSchema, searchPubMedArticlesLogic, } from "./logic.js";
7
+ import { PubMedSearchArticlesInputSchema, pubmedSearchArticlesLogic, } from "./logic.js";
8
8
  /**
9
- * Registers the searchPubMedArticles tool with the MCP server.
9
+ * Registers the pubmed_search_articles tool with the MCP server.
10
10
  * @param server - The McpServer instance.
11
11
  */
12
- export async function registerSearchPubMedArticlesTool(server) {
13
- const operation = "registerSearchPubMedArticlesTool";
14
- const toolName = "search_pubmed_articles";
15
- const toolDescription = "Searches PubMed for articles using a query term and optional filters (max results, sort, date range, publication types). Uses NCBI ESearch to find PMIDs and ESummary (optional) for brief summaries. Returns a JSON object with search parameters, ESearch term, result counts, PMIDs, optional summaries (PMID, title, authors, source, dates), and E-utility URLs.";
12
+ export async function registerPubMedSearchArticlesTool(server) {
13
+ const operation = "registerPubMedSearchArticlesTool";
14
+ const toolName = "pubmed_search_articles";
15
+ const toolDescription = "Searches PubMed for articles using a query term and optional filters (max results, sort, date range, publication types). Uses NCBI ESearch to find PMIDs and ESummary (optional) for brief summaries. Returns a JSON object with search parameters, ESearch term, result counts, PMIDs, optional summaries, and E-utility URLs.";
16
16
  const context = requestContextService.createRequestContext({ operation });
17
17
  await ErrorHandler.tryCatch(async () => {
18
- server.tool(toolName, toolDescription, SearchPubMedArticlesInputSchema.shape, async (input, mcpProvidedContext) => {
18
+ server.tool(toolName, toolDescription, PubMedSearchArticlesInputSchema.shape, async (input, mcpProvidedContext) => {
19
19
  const richContext = requestContextService.createRequestContext({
20
20
  parentRequestId: context.requestId,
21
- operation: "searchPubMedArticlesToolHandler",
21
+ operation: "pubmedSearchArticlesToolHandler",
22
22
  mcpToolContext: mcpProvidedContext,
23
23
  input,
24
24
  });
25
25
  try {
26
- const result = await searchPubMedArticlesLogic(input, richContext);
26
+ const result = await pubmedSearchArticlesLogic(input, richContext);
27
27
  return {
28
28
  content: [
29
29
  { type: "text", text: JSON.stringify(result, null, 2) },
@@ -33,7 +33,7 @@ export async function registerSearchPubMedArticlesTool(server) {
33
33
  }
34
34
  catch (error) {
35
35
  const handledError = ErrorHandler.handleError(error, {
36
- operation: "searchPubMedArticlesToolHandler",
36
+ operation: "pubmedSearchArticlesToolHandler",
37
37
  context: richContext,
38
38
  input,
39
39
  rethrow: false,
@@ -1 +1 @@
1
- {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/searchPubMedArticles/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAiB;IAEjB,MAAM,SAAS,GAAG,kCAAkC,CAAC;IACrD,MAAM,QAAQ,GAAG,wBAAwB,CAAC;IAC1C,MAAM,eAAe,GACnB,uWAAuW,CAAC;IAC1W,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,YAAY,CAAC,QAAQ,CACzB,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,eAAe,EACf,+BAA+B,CAAC,KAAK,EACrC,KAAK,EACH,KAAgC,EAChC,kBAAuB,EACE,EAAE;YAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,SAAS,EAAE,iCAAiC;gBAC5C,cAAc,EAAE,kBAAkB;gBAClC,KAAK;aACN,CAAC,CAAC;YAEL,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACnE,OAAO;oBACL,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;qBACxD;oBACD,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;oBACnD,SAAS,EAAE,iCAAiC;oBAC5C,OAAO,EAAE,WAAW;oBACpB,KAAK;oBACL,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,MAAM,QAAQ,GACZ,YAAY,YAAY,QAAQ;oBAC9B,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,IAAI,QAAQ,CACV,aAAa,CAAC,cAAc,EAC5B,+DAA+D,EAC/D;wBACE,iBAAiB,EAAE,YAAY,CAAC,IAAI;wBACpC,oBAAoB,EAAE,YAAY,CAAC,OAAO;qBAC3C,CACF,CAAC;gBAER,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oCACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iCAC1B;6BACF,CAAC;yBACH;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC,EACD;QACE,SAAS;QACT,OAAO;QACP,SAAS,EAAE,aAAa,CAAC,qBAAqB;QAC9C,QAAQ,EAAE,IAAI;KACf,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedSearchArticles/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAiB;IAEjB,MAAM,SAAS,GAAG,kCAAkC,CAAC;IACrD,MAAM,QAAQ,GAAG,wBAAwB,CAAC;IAC1C,MAAM,eAAe,GACnB,iUAAiU,CAAC;IACpU,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,YAAY,CAAC,QAAQ,CACzB,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,eAAe,EACf,+BAA+B,CAAC,KAAK,EACrC,KAAK,EACH,KAAgC,EAChC,kBAAuB,EACE,EAAE;YAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,SAAS,EAAE,iCAAiC;gBAC5C,cAAc,EAAE,kBAAkB;gBAClC,KAAK;aACN,CAAC,CAAC;YAEL,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACnE,OAAO;oBACL,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;qBACxD;oBACD,OAAO,EAAE,KAAK;iBACf,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;oBACnD,SAAS,EAAE,iCAAiC;oBAC5C,OAAO,EAAE,WAAW;oBACpB,KAAK;oBACL,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,MAAM,QAAQ,GACZ,YAAY,YAAY,QAAQ;oBAC9B,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,IAAI,QAAQ,CACV,aAAa,CAAC,cAAc,EAC5B,+DAA+D,EAC/D;wBACE,iBAAiB,EAAE,YAAY,CAAC,IAAI;wBACpC,oBAAoB,EAAE,YAAY,CAAC,OAAO;qBAC3C,CACF,CAAC;gBAER,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE;oCACL,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oCACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iCAC1B;6BACF,CAAC;yBACH;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,SAAS,QAAQ,eAAe,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC,EACD;QACE,SAAS;QACT,OAAO;QACP,SAAS,EAAE,aAAa,CAAC,qBAAqB;QAC9C,QAAQ,EAAE,IAAI;KACf,CACF,CAAC;AACJ,CAAC"}
@@ -8,7 +8,7 @@ export { withRequiredScopes } from "./lib/authUtils.js";
8
8
  export type { AuthInfo } from "./lib/authTypes.js";
9
9
  export { createAuthStrategy } from "./authFactory.js";
10
10
  export { createAuthMiddleware } from "./authMiddleware.js";
11
- export { AuthStrategy } from "./strategies/authStrategy.js";
11
+ export type { AuthStrategy } from "./strategies/authStrategy.js";
12
12
  export { JwtStrategy } from "./strategies/jwtStrategy.js";
13
13
  export { OauthStrategy } from "./strategies/oauthStrategy.js";
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/transports/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/transports/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"jwtStrategy.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/jwtStrategy.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;;IAkCxC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CA6G/C"}
1
+ {"version":3,"file":"jwtStrategy.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/jwtStrategy.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;;IAkCxC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAkH/C"}
@@ -94,6 +94,10 @@ export class JwtStrategy {
94
94
  return authInfo;
95
95
  }
96
96
  catch (error) {
97
+ // If the error is already a structured McpError, re-throw it directly.
98
+ if (error instanceof McpError) {
99
+ throw error;
100
+ }
97
101
  const message = error instanceof Error && error.name === "JWTExpired"
98
102
  ? "Token has expired."
99
103
  : "Token verification failed.";
@@ -1 +1 @@
1
- {"version":3,"file":"jwtStrategy.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/jwtStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jwtStrategy.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/jwtStrategy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauthStrategy.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/oauthStrategy.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwC;;IAoDvD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CA0E/C"}
1
+ {"version":3,"file":"oauthStrategy.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/oauthStrategy.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwC;;IAoDvD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAgF/C"}
@@ -83,6 +83,10 @@ export class OauthStrategy {
83
83
  return authInfo;
84
84
  }
85
85
  catch (error) {
86
+ // If the error is already a structured McpError, re-throw it directly.
87
+ if (error instanceof McpError) {
88
+ throw error;
89
+ }
86
90
  const message = error instanceof Error && error.name === "JWTExpired"
87
91
  ? "Token has expired."
88
92
  : "OAuth token verification failed.";
@@ -90,6 +94,7 @@ export class OauthStrategy {
90
94
  ...context,
91
95
  errorName: error instanceof Error ? error.name : "Unknown",
92
96
  });
97
+ // For all other errors, use the ErrorHandler to wrap them.
93
98
  throw ErrorHandler.handleError(error, {
94
99
  operation: "OauthStrategy.verify",
95
100
  context,
@@ -1 +1 @@
1
- {"version":3,"file":"oauthStrategy.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/oauthStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauthStrategy.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/auth/strategies/oauthStrategy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @fileoverview Provides a utility for converting HTTP headers between Node.js
3
+ * and Web Standards formats, ensuring compliance and correctness.
4
+ * @module src/mcp-server/transports/core/headerUtils
5
+ */
6
+ import type { OutgoingHttpHeaders } from "http";
7
+ /**
8
+ * Converts Node.js-style OutgoingHttpHeaders to a Web-standard Headers object.
9
+ *
10
+ * This function is critical for interoperability between Node.js's `http` module
11
+ * and Web APIs like Fetch and Hono. It correctly handles multi-value headers
12
+ * (e.g., `Set-Cookie`), which Node.js represents as an array of strings, by
13
+ * using the `Headers.append()` method. Standard single-value headers are set
14
+ * using `Headers.set()`.
15
+ *
16
+ * @param nodeHeaders - The Node.js-style headers object to convert.
17
+ * @returns A Web-standard Headers object.
18
+ */
19
+ export declare function convertNodeHeadersToWebHeaders(nodeHeaders: OutgoingHttpHeaders): Headers;
20
+ //# sourceMappingURL=headerUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headerUtils.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/transports/core/headerUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,mBAAmB,GAC/B,OAAO,CAmBT"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @fileoverview Provides a utility for converting HTTP headers between Node.js
3
+ * and Web Standards formats, ensuring compliance and correctness.
4
+ * @module src/mcp-server/transports/core/headerUtils
5
+ */
6
+ /**
7
+ * Converts Node.js-style OutgoingHttpHeaders to a Web-standard Headers object.
8
+ *
9
+ * This function is critical for interoperability between Node.js's `http` module
10
+ * and Web APIs like Fetch and Hono. It correctly handles multi-value headers
11
+ * (e.g., `Set-Cookie`), which Node.js represents as an array of strings, by
12
+ * using the `Headers.append()` method. Standard single-value headers are set
13
+ * using `Headers.set()`.
14
+ *
15
+ * @param nodeHeaders - The Node.js-style headers object to convert.
16
+ * @returns A Web-standard Headers object.
17
+ */
18
+ export function convertNodeHeadersToWebHeaders(nodeHeaders) {
19
+ const webHeaders = new Headers();
20
+ for (const [key, value] of Object.entries(nodeHeaders)) {
21
+ // Skip undefined headers, which are valid in Node.js but not in Web Headers.
22
+ if (value === undefined) {
23
+ continue;
24
+ }
25
+ if (Array.isArray(value)) {
26
+ // For arrays, append each value to support multi-value headers.
27
+ for (const v of value) {
28
+ webHeaders.append(key, String(v));
29
+ }
30
+ }
31
+ else {
32
+ // For single values, set the header, overwriting any existing value.
33
+ webHeaders.set(key, String(value));
34
+ }
35
+ }
36
+ return webHeaders;
37
+ }
38
+ //# sourceMappingURL=headerUtils.js.map