@cyanheads/pubmed-mcp-server 1.3.4 → 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 (335) hide show
  1. package/README.md +21 -21
  2. package/dist/config/index.d.ts +10 -0
  3. package/dist/config/index.d.ts.map +1 -0
  4. package/dist/config/index.js +69 -12
  5. package/dist/config/index.js.map +1 -0
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +2 -1
  9. package/dist/index.js.map +1 -0
  10. package/dist/mcp-server/core/managedMcpServer.d.ts +48 -0
  11. package/dist/mcp-server/core/managedMcpServer.d.ts.map +1 -0
  12. package/dist/mcp-server/core/managedMcpServer.js +58 -0
  13. package/dist/mcp-server/core/managedMcpServer.js.map +1 -0
  14. package/dist/mcp-server/server.d.ts +1 -0
  15. package/dist/mcp-server/server.d.ts.map +1 -0
  16. package/dist/mcp-server/server.js +12 -11
  17. package/dist/mcp-server/server.js.map +1 -0
  18. package/dist/mcp-server/tools/pubmedArticleConnections/index.d.ts +7 -0
  19. package/dist/mcp-server/tools/pubmedArticleConnections/index.d.ts.map +1 -0
  20. package/dist/mcp-server/tools/pubmedArticleConnections/index.js +7 -0
  21. package/dist/mcp-server/tools/pubmedArticleConnections/index.js.map +1 -0
  22. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.d.ts +10 -0
  23. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.d.ts.map +1 -0
  24. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/citationFormatter.js +3 -2
  25. package/dist/mcp-server/tools/pubmedArticleConnections/logic/citationFormatter.js.map +1 -0
  26. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.d.ts +10 -0
  27. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.d.ts.map +1 -0
  28. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/elinkHandler.js +3 -2
  29. package/dist/mcp-server/tools/pubmedArticleConnections/logic/elinkHandler.js.map +1 -0
  30. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/index.d.ts +10 -9
  31. package/dist/mcp-server/tools/pubmedArticleConnections/logic/index.d.ts.map +1 -0
  32. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/index.js +15 -14
  33. package/dist/mcp-server/tools/pubmedArticleConnections/logic/index.js.map +1 -0
  34. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/logic/types.d.ts +5 -4
  35. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.d.ts.map +1 -0
  36. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.js +6 -0
  37. package/dist/mcp-server/tools/pubmedArticleConnections/logic/types.js.map +1 -0
  38. package/dist/mcp-server/tools/pubmedArticleConnections/registration.d.ts +12 -0
  39. package/dist/mcp-server/tools/pubmedArticleConnections/registration.d.ts.map +1 -0
  40. package/dist/mcp-server/tools/{getPubMedArticleConnections → pubmedArticleConnections}/registration.js +12 -11
  41. package/dist/mcp-server/tools/pubmedArticleConnections/registration.js.map +1 -0
  42. package/dist/mcp-server/tools/pubmedFetchContents/index.d.ts +7 -0
  43. package/dist/mcp-server/tools/pubmedFetchContents/index.d.ts.map +1 -0
  44. package/dist/mcp-server/tools/pubmedFetchContents/index.js +7 -0
  45. package/dist/mcp-server/tools/pubmedFetchContents/index.js.map +1 -0
  46. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/logic.d.ts +7 -6
  47. package/dist/mcp-server/tools/pubmedFetchContents/logic.d.ts.map +1 -0
  48. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/logic.js +20 -19
  49. package/dist/mcp-server/tools/pubmedFetchContents/logic.js.map +1 -0
  50. package/dist/mcp-server/tools/pubmedFetchContents/registration.d.ts +11 -0
  51. package/dist/mcp-server/tools/pubmedFetchContents/registration.d.ts.map +1 -0
  52. package/dist/mcp-server/tools/{fetchPubMedContent → pubmedFetchContents}/registration.js +13 -12
  53. package/dist/mcp-server/tools/pubmedFetchContents/registration.js.map +1 -0
  54. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/index.d.ts +3 -2
  55. package/dist/mcp-server/tools/pubmedGenerateChart/index.d.ts.map +1 -0
  56. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/index.js +3 -2
  57. package/dist/mcp-server/tools/pubmedGenerateChart/index.js.map +1 -0
  58. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.d.ts +5 -4
  59. package/dist/mcp-server/tools/pubmedGenerateChart/logic.d.ts.map +1 -0
  60. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/logic.js +15 -14
  61. package/dist/mcp-server/tools/pubmedGenerateChart/logic.js.map +1 -0
  62. package/dist/mcp-server/tools/pubmedGenerateChart/registration.d.ts +8 -0
  63. package/dist/mcp-server/tools/pubmedGenerateChart/registration.d.ts.map +1 -0
  64. package/dist/mcp-server/tools/{generatePubMedChart → pubmedGenerateChart}/registration.js +10 -13
  65. package/dist/mcp-server/tools/pubmedGenerateChart/registration.js.map +1 -0
  66. package/dist/mcp-server/tools/pubmedResearchAgent/index.d.ts +1 -0
  67. package/dist/mcp-server/tools/pubmedResearchAgent/index.d.ts.map +1 -0
  68. package/dist/mcp-server/tools/pubmedResearchAgent/index.js +1 -0
  69. package/dist/mcp-server/tools/pubmedResearchAgent/index.js.map +1 -0
  70. package/dist/mcp-server/tools/pubmedResearchAgent/logic/index.d.ts +1 -0
  71. package/dist/mcp-server/tools/pubmedResearchAgent/logic/index.d.ts.map +1 -0
  72. package/dist/mcp-server/tools/pubmedResearchAgent/logic/index.js +1 -0
  73. package/dist/mcp-server/tools/pubmedResearchAgent/logic/index.js.map +1 -0
  74. package/dist/mcp-server/tools/pubmedResearchAgent/logic/inputSchema.d.ts +1 -0
  75. package/dist/mcp-server/tools/pubmedResearchAgent/logic/inputSchema.d.ts.map +1 -0
  76. package/dist/mcp-server/tools/pubmedResearchAgent/logic/inputSchema.js +1 -0
  77. package/dist/mcp-server/tools/pubmedResearchAgent/logic/inputSchema.js.map +1 -0
  78. package/dist/mcp-server/tools/pubmedResearchAgent/logic/outputTypes.d.ts +1 -0
  79. package/dist/mcp-server/tools/pubmedResearchAgent/logic/outputTypes.d.ts.map +1 -0
  80. package/dist/mcp-server/tools/pubmedResearchAgent/logic/outputTypes.js +1 -0
  81. package/dist/mcp-server/tools/pubmedResearchAgent/logic/outputTypes.js.map +1 -0
  82. package/dist/mcp-server/tools/pubmedResearchAgent/logic/planOrchestrator.d.ts +1 -0
  83. package/dist/mcp-server/tools/pubmedResearchAgent/logic/planOrchestrator.d.ts.map +1 -0
  84. package/dist/mcp-server/tools/pubmedResearchAgent/logic/planOrchestrator.js +1 -0
  85. package/dist/mcp-server/tools/pubmedResearchAgent/logic/planOrchestrator.js.map +1 -0
  86. package/dist/mcp-server/tools/pubmedResearchAgent/logic.d.ts +1 -0
  87. package/dist/mcp-server/tools/pubmedResearchAgent/logic.d.ts.map +1 -0
  88. package/dist/mcp-server/tools/pubmedResearchAgent/logic.js +1 -0
  89. package/dist/mcp-server/tools/pubmedResearchAgent/logic.js.map +1 -0
  90. package/dist/mcp-server/tools/pubmedResearchAgent/registration.d.ts +1 -0
  91. package/dist/mcp-server/tools/pubmedResearchAgent/registration.d.ts.map +1 -0
  92. package/dist/mcp-server/tools/pubmedResearchAgent/registration.js +1 -0
  93. package/dist/mcp-server/tools/pubmedResearchAgent/registration.js.map +1 -0
  94. package/dist/mcp-server/tools/pubmedSearchArticles/index.d.ts +7 -0
  95. package/dist/mcp-server/tools/pubmedSearchArticles/index.d.ts.map +1 -0
  96. package/dist/mcp-server/tools/pubmedSearchArticles/index.js +7 -0
  97. package/dist/mcp-server/tools/pubmedSearchArticles/index.js.map +1 -0
  98. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.d.ts +8 -7
  99. package/dist/mcp-server/tools/pubmedSearchArticles/logic.d.ts.map +1 -0
  100. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/logic.js +12 -11
  101. package/dist/mcp-server/tools/pubmedSearchArticles/logic.js.map +1 -0
  102. package/dist/mcp-server/tools/pubmedSearchArticles/registration.d.ts +11 -0
  103. package/dist/mcp-server/tools/pubmedSearchArticles/registration.d.ts.map +1 -0
  104. package/dist/mcp-server/tools/{searchPubMedArticles → pubmedSearchArticles}/registration.js +13 -12
  105. package/dist/mcp-server/tools/pubmedSearchArticles/registration.js.map +1 -0
  106. package/dist/mcp-server/transports/auth/authFactory.d.ts +1 -0
  107. package/dist/mcp-server/transports/auth/authFactory.d.ts.map +1 -0
  108. package/dist/mcp-server/transports/auth/authFactory.js +1 -0
  109. package/dist/mcp-server/transports/auth/authFactory.js.map +1 -0
  110. package/dist/mcp-server/transports/auth/authMiddleware.d.ts +1 -0
  111. package/dist/mcp-server/transports/auth/authMiddleware.d.ts.map +1 -0
  112. package/dist/mcp-server/transports/auth/authMiddleware.js +1 -0
  113. package/dist/mcp-server/transports/auth/authMiddleware.js.map +1 -0
  114. package/dist/mcp-server/transports/auth/index.d.ts +2 -1
  115. package/dist/mcp-server/transports/auth/index.d.ts.map +1 -0
  116. package/dist/mcp-server/transports/auth/index.js +1 -0
  117. package/dist/mcp-server/transports/auth/index.js.map +1 -0
  118. package/dist/mcp-server/transports/auth/lib/authContext.d.ts +1 -0
  119. package/dist/mcp-server/transports/auth/lib/authContext.d.ts.map +1 -0
  120. package/dist/mcp-server/transports/auth/lib/authContext.js +1 -0
  121. package/dist/mcp-server/transports/auth/lib/authContext.js.map +1 -0
  122. package/dist/mcp-server/transports/auth/lib/authTypes.d.ts +1 -0
  123. package/dist/mcp-server/transports/auth/lib/authTypes.d.ts.map +1 -0
  124. package/dist/mcp-server/transports/auth/lib/authTypes.js +1 -0
  125. package/dist/mcp-server/transports/auth/lib/authTypes.js.map +1 -0
  126. package/dist/mcp-server/transports/auth/lib/authUtils.d.ts +1 -0
  127. package/dist/mcp-server/transports/auth/lib/authUtils.d.ts.map +1 -0
  128. package/dist/mcp-server/transports/auth/lib/authUtils.js +1 -0
  129. package/dist/mcp-server/transports/auth/lib/authUtils.js.map +1 -0
  130. package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts +1 -0
  131. package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts.map +1 -0
  132. package/dist/mcp-server/transports/auth/strategies/authStrategy.js +1 -0
  133. package/dist/mcp-server/transports/auth/strategies/authStrategy.js.map +1 -0
  134. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts +1 -0
  135. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -0
  136. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +6 -0
  137. package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -0
  138. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts +1 -0
  139. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -0
  140. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +7 -0
  141. package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -0
  142. package/dist/mcp-server/transports/core/baseTransportManager.d.ts +1 -0
  143. package/dist/mcp-server/transports/core/baseTransportManager.d.ts.map +1 -0
  144. package/dist/mcp-server/transports/core/baseTransportManager.js +2 -0
  145. package/dist/mcp-server/transports/core/baseTransportManager.js.map +1 -0
  146. package/dist/mcp-server/transports/core/headerUtils.d.ts +20 -0
  147. package/dist/mcp-server/transports/core/headerUtils.d.ts.map +1 -0
  148. package/dist/mcp-server/transports/core/headerUtils.js +38 -0
  149. package/dist/mcp-server/transports/core/headerUtils.js.map +1 -0
  150. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts +61 -7
  151. package/dist/mcp-server/transports/core/honoNodeBridge.d.ts.map +1 -0
  152. package/dist/mcp-server/transports/core/honoNodeBridge.js +102 -14
  153. package/dist/mcp-server/transports/core/honoNodeBridge.js.map +1 -0
  154. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts +54 -8
  155. package/dist/mcp-server/transports/core/statefulTransportManager.d.ts.map +1 -0
  156. package/dist/mcp-server/transports/core/statefulTransportManager.js +185 -120
  157. package/dist/mcp-server/transports/core/statefulTransportManager.js.map +1 -0
  158. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts +45 -7
  159. package/dist/mcp-server/transports/core/statelessTransportManager.d.ts.map +1 -0
  160. package/dist/mcp-server/transports/core/statelessTransportManager.js +85 -24
  161. package/dist/mcp-server/transports/core/statelessTransportManager.js.map +1 -0
  162. package/dist/mcp-server/transports/core/transportTypes.d.ts +59 -21
  163. package/dist/mcp-server/transports/core/transportTypes.d.ts.map +1 -0
  164. package/dist/mcp-server/transports/core/transportTypes.js +4 -1
  165. package/dist/mcp-server/transports/core/transportTypes.js.map +1 -0
  166. package/dist/mcp-server/transports/http/httpErrorHandler.d.ts +1 -0
  167. package/dist/mcp-server/transports/http/httpErrorHandler.d.ts.map +1 -0
  168. package/dist/mcp-server/transports/http/httpErrorHandler.js +1 -0
  169. package/dist/mcp-server/transports/http/httpErrorHandler.js.map +1 -0
  170. package/dist/mcp-server/transports/http/httpTransport.d.ts +4 -3
  171. package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -0
  172. package/dist/mcp-server/transports/http/httpTransport.js +52 -16
  173. package/dist/mcp-server/transports/http/httpTransport.js.map +1 -0
  174. package/dist/mcp-server/transports/http/httpTypes.d.ts +1 -0
  175. package/dist/mcp-server/transports/http/httpTypes.d.ts.map +1 -0
  176. package/dist/mcp-server/transports/http/httpTypes.js +1 -0
  177. package/dist/mcp-server/transports/http/httpTypes.js.map +1 -0
  178. package/dist/mcp-server/transports/http/index.d.ts +1 -0
  179. package/dist/mcp-server/transports/http/index.d.ts.map +1 -0
  180. package/dist/mcp-server/transports/http/index.js +1 -0
  181. package/dist/mcp-server/transports/http/index.js.map +1 -0
  182. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts +4 -2
  183. package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts.map +1 -0
  184. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js +27 -24
  185. package/dist/mcp-server/transports/http/mcpTransportMiddleware.js.map +1 -0
  186. package/dist/mcp-server/transports/stdio/index.d.ts +1 -0
  187. package/dist/mcp-server/transports/stdio/index.d.ts.map +1 -0
  188. package/dist/mcp-server/transports/stdio/index.js +1 -0
  189. package/dist/mcp-server/transports/stdio/index.js.map +1 -0
  190. package/dist/mcp-server/transports/stdio/stdioTransport.d.ts +1 -0
  191. package/dist/mcp-server/transports/stdio/stdioTransport.d.ts.map +1 -0
  192. package/dist/mcp-server/transports/stdio/stdioTransport.js +1 -0
  193. package/dist/mcp-server/transports/stdio/stdioTransport.js.map +1 -0
  194. package/dist/services/NCBI/core/ncbiConstants.d.ts +1 -0
  195. package/dist/services/NCBI/core/ncbiConstants.d.ts.map +1 -0
  196. package/dist/services/NCBI/core/ncbiConstants.js +1 -0
  197. package/dist/services/NCBI/core/ncbiConstants.js.map +1 -0
  198. package/dist/services/NCBI/core/ncbiCoreApiClient.d.ts +1 -0
  199. package/dist/services/NCBI/core/ncbiCoreApiClient.d.ts.map +1 -0
  200. package/dist/services/NCBI/core/ncbiCoreApiClient.js +2 -0
  201. package/dist/services/NCBI/core/ncbiCoreApiClient.js.map +1 -0
  202. package/dist/services/NCBI/core/ncbiRequestQueueManager.d.ts +1 -1
  203. package/dist/services/NCBI/core/ncbiRequestQueueManager.d.ts.map +1 -0
  204. package/dist/services/NCBI/core/ncbiRequestQueueManager.js +5 -8
  205. package/dist/services/NCBI/core/ncbiRequestQueueManager.js.map +1 -0
  206. package/dist/services/NCBI/core/ncbiResponseHandler.d.ts +1 -0
  207. package/dist/services/NCBI/core/ncbiResponseHandler.d.ts.map +1 -0
  208. package/dist/services/NCBI/core/ncbiResponseHandler.js +3 -1
  209. package/dist/services/NCBI/core/ncbiResponseHandler.js.map +1 -0
  210. package/dist/services/NCBI/core/ncbiService.d.ts +1 -0
  211. package/dist/services/NCBI/core/ncbiService.d.ts.map +1 -0
  212. package/dist/services/NCBI/core/ncbiService.js +4 -0
  213. package/dist/services/NCBI/core/ncbiService.js.map +1 -0
  214. package/dist/services/NCBI/parsing/eSummaryResultParser.d.ts +1 -0
  215. package/dist/services/NCBI/parsing/eSummaryResultParser.d.ts.map +1 -0
  216. package/dist/services/NCBI/parsing/eSummaryResultParser.js +2 -0
  217. package/dist/services/NCBI/parsing/eSummaryResultParser.js.map +1 -0
  218. package/dist/services/NCBI/parsing/index.d.ts +1 -0
  219. package/dist/services/NCBI/parsing/index.d.ts.map +1 -0
  220. package/dist/services/NCBI/parsing/index.js +1 -0
  221. package/dist/services/NCBI/parsing/index.js.map +1 -0
  222. package/dist/services/NCBI/parsing/pubmedArticleStructureParser.d.ts +1 -0
  223. package/dist/services/NCBI/parsing/pubmedArticleStructureParser.d.ts.map +1 -0
  224. package/dist/services/NCBI/parsing/pubmedArticleStructureParser.js +1 -0
  225. package/dist/services/NCBI/parsing/pubmedArticleStructureParser.js.map +1 -0
  226. package/dist/services/NCBI/parsing/xmlGenericHelpers.d.ts +1 -0
  227. package/dist/services/NCBI/parsing/xmlGenericHelpers.d.ts.map +1 -0
  228. package/dist/services/NCBI/parsing/xmlGenericHelpers.js +1 -0
  229. package/dist/services/NCBI/parsing/xmlGenericHelpers.js.map +1 -0
  230. package/dist/types-global/errors.d.ts +1 -0
  231. package/dist/types-global/errors.d.ts.map +1 -0
  232. package/dist/types-global/errors.js +10 -0
  233. package/dist/types-global/errors.js.map +1 -0
  234. package/dist/types-global/pubmedXml.d.ts +1 -0
  235. package/dist/types-global/pubmedXml.d.ts.map +1 -0
  236. package/dist/types-global/pubmedXml.js +1 -0
  237. package/dist/types-global/pubmedXml.js.map +1 -0
  238. package/dist/utils/index.d.ts +3 -0
  239. package/dist/utils/index.d.ts.map +1 -0
  240. package/dist/utils/index.js +3 -0
  241. package/dist/utils/index.js.map +1 -0
  242. package/dist/utils/internal/errorHandler.d.ts +1 -7
  243. package/dist/utils/internal/errorHandler.d.ts.map +1 -0
  244. package/dist/utils/internal/errorHandler.js +28 -6
  245. package/dist/utils/internal/errorHandler.js.map +1 -0
  246. package/dist/utils/internal/index.d.ts +2 -0
  247. package/dist/utils/internal/index.d.ts.map +1 -0
  248. package/dist/utils/internal/index.js +2 -0
  249. package/dist/utils/internal/index.js.map +1 -0
  250. package/dist/utils/internal/logger.d.ts +1 -0
  251. package/dist/utils/internal/logger.d.ts.map +1 -0
  252. package/dist/utils/internal/logger.js +14 -8
  253. package/dist/utils/internal/logger.js.map +1 -0
  254. package/dist/utils/internal/performance.d.ts +22 -0
  255. package/dist/utils/internal/performance.d.ts.map +1 -0
  256. package/dist/utils/internal/performance.js +104 -0
  257. package/dist/utils/internal/performance.js.map +1 -0
  258. package/dist/utils/internal/requestContext.d.ts +1 -0
  259. package/dist/utils/internal/requestContext.d.ts.map +1 -0
  260. package/dist/utils/internal/requestContext.js +11 -0
  261. package/dist/utils/internal/requestContext.js.map +1 -0
  262. package/dist/utils/metrics/index.d.ts +1 -0
  263. package/dist/utils/metrics/index.d.ts.map +1 -0
  264. package/dist/utils/metrics/index.js +1 -0
  265. package/dist/utils/metrics/index.js.map +1 -0
  266. package/dist/utils/metrics/tokenCounter.d.ts +1 -0
  267. package/dist/utils/metrics/tokenCounter.d.ts.map +1 -0
  268. package/dist/utils/metrics/tokenCounter.js +1 -0
  269. package/dist/utils/metrics/tokenCounter.js.map +1 -0
  270. package/dist/utils/network/fetchWithTimeout.d.ts +1 -0
  271. package/dist/utils/network/fetchWithTimeout.d.ts.map +1 -0
  272. package/dist/utils/network/fetchWithTimeout.js +19 -0
  273. package/dist/utils/network/fetchWithTimeout.js.map +1 -0
  274. package/dist/utils/network/index.d.ts +1 -0
  275. package/dist/utils/network/index.d.ts.map +1 -0
  276. package/dist/utils/network/index.js +1 -0
  277. package/dist/utils/network/index.js.map +1 -0
  278. package/dist/utils/parsing/dateParser.d.ts +3 -3
  279. package/dist/utils/parsing/dateParser.d.ts.map +1 -0
  280. package/dist/utils/parsing/dateParser.js +3 -2
  281. package/dist/utils/parsing/dateParser.js.map +1 -0
  282. package/dist/utils/parsing/index.d.ts +1 -0
  283. package/dist/utils/parsing/index.d.ts.map +1 -0
  284. package/dist/utils/parsing/index.js +1 -0
  285. package/dist/utils/parsing/index.js.map +1 -0
  286. package/dist/utils/parsing/jsonParser.d.ts +2 -1
  287. package/dist/utils/parsing/jsonParser.d.ts.map +1 -0
  288. package/dist/utils/parsing/jsonParser.js +5 -3
  289. package/dist/utils/parsing/jsonParser.js.map +1 -0
  290. package/dist/utils/scheduling/index.d.ts +1 -0
  291. package/dist/utils/scheduling/index.d.ts.map +1 -0
  292. package/dist/utils/scheduling/index.js +1 -0
  293. package/dist/utils/scheduling/index.js.map +1 -0
  294. package/dist/utils/scheduling/scheduler.d.ts +1 -0
  295. package/dist/utils/scheduling/scheduler.d.ts.map +1 -0
  296. package/dist/utils/scheduling/scheduler.js +3 -1
  297. package/dist/utils/scheduling/scheduler.js.map +1 -0
  298. package/dist/utils/security/idGenerator.d.ts +1 -0
  299. package/dist/utils/security/idGenerator.d.ts.map +1 -0
  300. package/dist/utils/security/idGenerator.js +32 -27
  301. package/dist/utils/security/idGenerator.js.map +1 -0
  302. package/dist/utils/security/index.d.ts +1 -0
  303. package/dist/utils/security/index.d.ts.map +1 -0
  304. package/dist/utils/security/index.js +1 -0
  305. package/dist/utils/security/index.js.map +1 -0
  306. package/dist/utils/security/rateLimiter.d.ts +1 -0
  307. package/dist/utils/security/rateLimiter.d.ts.map +1 -0
  308. package/dist/utils/security/rateLimiter.js +45 -22
  309. package/dist/utils/security/rateLimiter.js.map +1 -0
  310. package/dist/utils/security/sanitization.d.ts +1 -0
  311. package/dist/utils/security/sanitization.d.ts.map +1 -0
  312. package/dist/utils/security/sanitization.js +65 -63
  313. package/dist/utils/security/sanitization.js.map +1 -0
  314. package/dist/utils/telemetry/instrumentation.d.ts +8 -0
  315. package/dist/utils/telemetry/instrumentation.d.ts.map +1 -0
  316. package/dist/utils/telemetry/instrumentation.js +179 -0
  317. package/dist/utils/telemetry/instrumentation.js.map +1 -0
  318. package/dist/utils/telemetry/semconv.d.ts +16 -0
  319. package/dist/utils/telemetry/semconv.d.ts.map +1 -0
  320. package/dist/utils/telemetry/semconv.js +16 -0
  321. package/dist/utils/telemetry/semconv.js.map +1 -0
  322. package/package.json +31 -14
  323. package/dist/mcp-server/tools/fetchPubMedContent/index.d.ts +0 -6
  324. package/dist/mcp-server/tools/fetchPubMedContent/index.js +0 -6
  325. package/dist/mcp-server/tools/fetchPubMedContent/registration.d.ts +0 -10
  326. package/dist/mcp-server/tools/generatePubMedChart/registration.d.ts +0 -7
  327. package/dist/mcp-server/tools/getPubMedArticleConnections/index.d.ts +0 -6
  328. package/dist/mcp-server/tools/getPubMedArticleConnections/index.js +0 -6
  329. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/citationFormatter.d.ts +0 -9
  330. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/elinkHandler.d.ts +0 -9
  331. package/dist/mcp-server/tools/getPubMedArticleConnections/logic/types.js +0 -5
  332. package/dist/mcp-server/tools/getPubMedArticleConnections/registration.d.ts +0 -11
  333. package/dist/mcp-server/tools/searchPubMedArticles/index.d.ts +0 -6
  334. package/dist/mcp-server/tools/searchPubMedArticles/index.js +0 -6
  335. package/dist/mcp-server/tools/searchPubMedArticles/registration.d.ts +0 -10
@@ -1,15 +1,15 @@
1
1
  /**
2
- * @fileoverview Main logic handler for the 'get_pubmed_article_connections' MCP tool.
2
+ * @fileoverview Main logic handler for the 'pubmed_article_connections' MCP tool.
3
3
  * Orchestrates calls to ELink or citation formatting handlers.
4
- * @module src/mcp-server/tools/getPubMedArticleConnections/logic/index
4
+ * @module src/mcp-server/tools/pubmedArticleConnections/logic/index
5
5
  */
6
6
  import { z } from "zod";
7
7
  import { RequestContext } from "../../../../utils/index.js";
8
8
  import type { ToolOutputData } from "./types.js";
9
9
  /**
10
- * Zod schema for the input parameters of the 'get_pubmed_article_connections' tool.
10
+ * Zod schema for the input parameters of the 'pubmed_article_connections' tool.
11
11
  */
12
- export declare const GetPubMedArticleConnectionsInputSchema: z.ZodObject<{
12
+ export declare const PubMedArticleConnectionsInputSchema: z.ZodObject<{
13
13
  sourcePmid: z.ZodString;
14
14
  relationshipType: z.ZodDefault<z.ZodEnum<["pubmed_similar_articles", "pubmed_citedin", "pubmed_references", "citation_formats"]>>;
15
15
  maxRelatedResults: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
@@ -26,13 +26,14 @@ export declare const GetPubMedArticleConnectionsInputSchema: z.ZodObject<{
26
26
  citationStyles?: ("ris" | "bibtex" | "apa_string" | "mla_string")[] | undefined;
27
27
  }>;
28
28
  /**
29
- * Type alias for the validated input of the 'get_pubmed_article_connections' tool.
29
+ * Type alias for the validated input of the 'pubmed_article_connections' tool.
30
30
  */
31
- export type GetPubMedArticleConnectionsInput = z.infer<typeof GetPubMedArticleConnectionsInputSchema>;
31
+ export type PubMedArticleConnectionsInput = z.infer<typeof PubMedArticleConnectionsInputSchema>;
32
32
  /**
33
- * Main handler for the 'get_pubmed_article_connections' tool.
34
- * @param {GetPubMedArticleConnectionsInput} input - Validated input parameters.
33
+ * Main handler for the 'pubmed_article_connections' tool.
34
+ * @param {PubMedArticleConnectionsInput} input - Validated input parameters.
35
35
  * @param {RequestContext} context - The request context for this tool invocation.
36
36
  * @returns {Promise<ToolOutputData>} The result of the tool call.
37
37
  */
38
- export declare function handleGetPubMedArticleConnections(input: GetPubMedArticleConnectionsInput, context: RequestContext): Promise<ToolOutputData>;
38
+ export declare function handlePubMedArticleConnections(input: PubMedArticleConnectionsInput, context: RequestContext): Promise<ToolOutputData>;
39
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/tools/pubmedArticleConnections/logic/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAEL,cAAc,EAGf,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;EAmC9C,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CACjD,OAAO,mCAAmC,CAC3C,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,8BAA8B,CAClD,KAAK,EAAE,6BAA6B,EACpC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,cAAc,CAAC,CAsDzB"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * @fileoverview Main logic handler for the 'get_pubmed_article_connections' MCP tool.
2
+ * @fileoverview Main logic handler for the 'pubmed_article_connections' MCP tool.
3
3
  * Orchestrates calls to ELink or citation formatting handlers.
4
- * @module src/mcp-server/tools/getPubMedArticleConnections/logic/index
4
+ * @module src/mcp-server/tools/pubmedArticleConnections/logic/index
5
5
  */
6
6
  import { z } from "zod";
7
7
  import { BaseErrorCode, McpError } from "../../../../types-global/errors.js";
@@ -9,9 +9,9 @@ import { logger, requestContextService, sanitizeInputForLogging, } from "../../.
9
9
  import { handleCitationFormats } from "./citationFormatter.js";
10
10
  import { handleELinkRelationships } from "./elinkHandler.js";
11
11
  /**
12
- * Zod schema for the input parameters of the 'get_pubmed_article_connections' tool.
12
+ * Zod schema for the input parameters of the 'pubmed_article_connections' tool.
13
13
  */
14
- export const GetPubMedArticleConnectionsInputSchema = z.object({
14
+ export const PubMedArticleConnectionsInputSchema = z.object({
15
15
  sourcePmid: z
16
16
  .string()
17
17
  .regex(/^\d+$/)
@@ -24,7 +24,7 @@ export const GetPubMedArticleConnectionsInputSchema = z.object({
24
24
  "citation_formats",
25
25
  ])
26
26
  .default("pubmed_similar_articles")
27
- .describe("Specifies the type of connection or action: \n- 'pubmed_similar_articles': Finds articles similar to the source PMID (uses ELink `cmd=neighbor`). \n- 'pubmed_citedin': Finds articles in PubMed that cite the source PMID (uses ELink `linkname=pubmed_pubmed_citedin`). \n- 'pubmed_references': Finds articles in PubMed referenced by the source PMID (uses ELink `linkname=pubmed_pubmed_refs`). \n- 'citation_formats': Retrieves data for the source PMID and formats it into specified citation styles (RIS, BibTeX, APA, MLA via NCBI EFetch and server-side formatting)."),
27
+ .describe("Specifies the type of connection or action: 'pubmed_similar_articles' (finds similar articles), 'pubmed_citedin' (finds citing articles), 'pubmed_references' (finds referenced articles), or 'citation_formats' (retrieves formatted citations)."),
28
28
  maxRelatedResults: z
29
29
  .number()
30
30
  .int()
@@ -32,27 +32,27 @@ export const GetPubMedArticleConnectionsInputSchema = z.object({
32
32
  .max(50, "Maximum 50 related results can be requested.")
33
33
  .optional()
34
34
  .default(5)
35
- .describe("Maximum number of related articles to retrieve when 'relationshipType' is 'pubmed_similar_articles', 'pubmed_citedin', or 'pubmed_references'. ELink results from NCBI will be truncated by the server if they exceed this number. Default is 5, maximum is 50."),
35
+ .describe("Maximum number of related articles to retrieve for relationship-based searches. Default is 5, max is 50."),
36
36
  citationStyles: z
37
37
  .array(z.enum(["ris", "bibtex", "apa_string", "mla_string"]))
38
38
  .optional()
39
39
  .default(["ris"])
40
- .describe("An array of citation styles to format the source article into when 'relationshipType' is 'citation_formats'. Supported styles: 'ris', 'bibtex', 'apa_string', 'mla_string'. Default is ['ris']. Formatting is performed server-side based on data fetched via EFetch."),
40
+ .describe("An array of citation styles to format the source article into when 'relationshipType' is 'citation_formats'. Supported styles: 'ris', 'bibtex', 'apa_string', 'mla_string'. Default is ['ris']."),
41
41
  });
42
42
  /**
43
- * Main handler for the 'get_pubmed_article_connections' tool.
44
- * @param {GetPubMedArticleConnectionsInput} input - Validated input parameters.
43
+ * Main handler for the 'pubmed_article_connections' tool.
44
+ * @param {PubMedArticleConnectionsInput} input - Validated input parameters.
45
45
  * @param {RequestContext} context - The request context for this tool invocation.
46
46
  * @returns {Promise<ToolOutputData>} The result of the tool call.
47
47
  */
48
- export async function handleGetPubMedArticleConnections(input, context) {
48
+ export async function handlePubMedArticleConnections(input, context) {
49
49
  const toolLogicContext = requestContextService.createRequestContext({
50
50
  parentRequestId: context.requestId,
51
- operation: "handleGetPubMedArticleConnections",
52
- toolName: "get_pubmed_article_connections",
51
+ operation: "handlePubMedArticleConnections",
52
+ toolName: "pubmed_article_connections",
53
53
  input: sanitizeInputForLogging(input),
54
54
  });
55
- logger.info("Executing get_pubmed_article_connections tool", toolLogicContext);
55
+ logger.info("Executing pubmed_article_connections tool", toolLogicContext);
56
56
  const outputData = {
57
57
  sourcePmid: input.sourcePmid,
58
58
  relationshipType: input.relationshipType,
@@ -80,7 +80,7 @@ export async function handleGetPubMedArticleConnections(input, context) {
80
80
  Object.keys(outputData.citations).length === 0)) {
81
81
  outputData.message = "No results found for the given parameters.";
82
82
  }
83
- logger.notice("Successfully executed get_pubmed_article_connections tool.", {
83
+ logger.notice("Successfully executed pubmed_article_connections tool.", {
84
84
  ...toolLogicContext,
85
85
  relationshipType: input.relationshipType,
86
86
  retrievedCount: outputData.retrievedCount,
@@ -88,3 +88,4 @@ export async function handleGetPubMedArticleConnections(input, context) {
88
88
  });
89
89
  return outputData;
90
90
  }
91
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/mcp-server/tools/pubmedArticleConnections/logic/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * @fileoverview Shared type definitions for the getPubMedArticleConnections tool logic.
3
- * @module src/mcp-server/tools/getPubMedArticleConnections/logic/types
2
+ * @fileoverview Shared type definitions for the pubmedArticleConnections tool logic.
3
+ * @module src/mcp-server/tools/pubmedArticleConnections/logic/types
4
4
  */
5
- import type { GetPubMedArticleConnectionsInput } from "./index.js";
5
+ import type { PubMedArticleConnectionsInput } from "./index.js";
6
6
  export interface RelatedArticle {
7
7
  pmid: string;
8
8
  title?: string;
@@ -18,10 +18,11 @@ export interface CitationOutput {
18
18
  }
19
19
  export interface ToolOutputData {
20
20
  sourcePmid: string;
21
- relationshipType: GetPubMedArticleConnectionsInput["relationshipType"];
21
+ relationshipType: PubMedArticleConnectionsInput["relationshipType"];
22
22
  relatedArticles: RelatedArticle[];
23
23
  citations: CitationOutput;
24
24
  retrievedCount: number;
25
25
  eUtilityUrl?: string;
26
26
  message?: string;
27
27
  }
28
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/tools/pubmedArticleConnections/logic/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAGhE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,6BAA6B,CAAC,kBAAkB,CAAC,CAAC;IACpE,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,SAAS,EAAE,cAAc,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Shared type definitions for the pubmedArticleConnections tool logic.
3
+ * @module src/mcp-server/tools/pubmedArticleConnections/logic/types
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/mcp-server/tools/pubmedArticleConnections/logic/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @fileoverview Registers the 'pubmed_article_connections' tool with the MCP server.
3
+ * This tool finds articles related to a source PMID or retrieves citation formats.
4
+ * @module src/mcp-server/tools/pubmedArticleConnections/registration
5
+ */
6
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
7
+ /**
8
+ * Registers the 'pubmed_article_connections' tool with the given MCP server instance.
9
+ * @param {McpServer} server - The MCP server instance.
10
+ */
11
+ export declare function registerPubMedArticleConnectionsTool(server: McpServer): Promise<void>;
12
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedArticleConnections/registration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAezE;;;GAGG;AACH,wBAAsB,oCAAoC,CACxD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAmFf"}
@@ -1,30 +1,30 @@
1
1
  /**
2
- * @fileoverview Registers the 'get_pubmed_article_connections' tool with the MCP server.
2
+ * @fileoverview Registers the 'pubmed_article_connections' tool with the MCP server.
3
3
  * This tool finds articles related to a source PMID or retrieves citation formats.
4
- * @module src/mcp-server/tools/getPubMedArticleConnections/registration
4
+ * @module src/mcp-server/tools/pubmedArticleConnections/registration
5
5
  */
6
6
  import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
7
7
  import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
8
- import { GetPubMedArticleConnectionsInputSchema, handleGetPubMedArticleConnections, } from "./logic/index.js";
8
+ import { PubMedArticleConnectionsInputSchema, handlePubMedArticleConnections, } from "./logic/index.js";
9
9
  /**
10
- * Registers the 'get_pubmed_article_connections' tool with the given MCP server instance.
10
+ * Registers the 'pubmed_article_connections' tool with the given MCP server instance.
11
11
  * @param {McpServer} server - The MCP server instance.
12
12
  */
13
- export async function registerGetPubMedArticleConnectionsTool(server) {
14
- const operation = "registerGetPubMedArticleConnectionsTool";
15
- const toolName = "get_pubmed_article_connections";
13
+ export async function registerPubMedArticleConnectionsTool(server) {
14
+ const operation = "registerPubMedArticleConnectionsTool";
15
+ const toolName = "pubmed_article_connections";
16
16
  const toolDescription = "Finds articles related to a source PubMed ID (PMID) or retrieves formatted citations for it. Supports finding similar articles, articles that cite the source, articles referenced by the source (via NCBI ELink), or fetching data to generate citations in various styles (RIS, BibTeX, APA, MLA via NCBI EFetch and server-side formatting). Returns a JSON object detailing the connections or formatted citations.";
17
17
  const context = requestContextService.createRequestContext({ operation });
18
18
  await ErrorHandler.tryCatch(async () => {
19
- server.tool(toolName, toolDescription, GetPubMedArticleConnectionsInputSchema.shape, async (input, mcpProvidedContext) => {
19
+ server.tool(toolName, toolDescription, PubMedArticleConnectionsInputSchema.shape, async (input, mcpProvidedContext) => {
20
20
  const richContext = requestContextService.createRequestContext({
21
21
  parentRequestId: context.requestId,
22
- operation: "getPubMedArticleConnectionsToolHandler",
22
+ operation: "pubMedArticleConnectionsToolHandler",
23
23
  mcpToolContext: mcpProvidedContext,
24
24
  input,
25
25
  });
26
26
  try {
27
- const result = await handleGetPubMedArticleConnections(input, richContext);
27
+ const result = await handlePubMedArticleConnections(input, richContext);
28
28
  return {
29
29
  content: [
30
30
  { type: "text", text: JSON.stringify(result, null, 2) },
@@ -34,7 +34,7 @@ export async function registerGetPubMedArticleConnectionsTool(server) {
34
34
  }
35
35
  catch (error) {
36
36
  const handledError = ErrorHandler.handleError(error, {
37
- operation: "getPubMedArticleConnectionsToolHandler",
37
+ operation: "pubMedArticleConnectionsToolHandler",
38
38
  context: richContext,
39
39
  input,
40
40
  rethrow: false,
@@ -70,3 +70,4 @@ export async function registerGetPubMedArticleConnectionsTool(server) {
70
70
  critical: true,
71
71
  });
72
72
  }
73
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedArticleConnections/registration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;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,mCAAmC,EACnC,8BAA8B,GAC/B,MAAM,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oCAAoC,CACxD,MAAiB;IAEjB,MAAM,SAAS,GAAG,sCAAsC,CAAC;IACzD,MAAM,QAAQ,GAAG,4BAA4B,CAAC;IAC9C,MAAM,eAAe,GACnB,yZAAyZ,CAAC;IAC5Z,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,mCAAmC,CAAC,KAAK,EACzC,KAAK,EACH,KAAoC,EACpC,kBAAuB,EACE,EAAE;YAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,SAAS,EAAE,qCAAqC;gBAChD,cAAc,EAAE,kBAAkB;gBAClC,KAAK;aACN,CAAC,CAAC;YAEL,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,8BAA8B,CACjD,KAAK,EACL,WAAW,CACZ,CAAC;gBACF,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,qCAAqC;oBAChD,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,wEAAwE,EACxE;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 pubmed_fetch_contents tool.
3
+ * Exports the tool's registration function.
4
+ * @module src/mcp-server/tools/pubmedFetchContents/index
5
+ */
6
+ export { registerPubMedFetchContentsTool } from "./registration.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @fileoverview Barrel file for the pubmed_fetch_contents tool.
3
+ * Exports the tool's registration function.
4
+ * @module src/mcp-server/tools/pubmedFetchContents/index
5
+ */
6
+ export { registerPubMedFetchContentsTool } from "./registration.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,13 +1,13 @@
1
1
  /**
2
- * @fileoverview Logic for the fetch_pubmed_content MCP tool.
2
+ * @fileoverview Logic for the pubmed_fetch_contents MCP tool.
3
3
  * Handles EFetch queries for specific PMIDs and formats the results.
4
4
  * This tool can fetch various details from PubMed including abstracts, full XML,
5
5
  * MEDLINE text, and citation data.
6
- * @module src/mcp-server/tools/fetchPubMedContent/logic
6
+ * @module src/mcp-server/tools/pubmedFetchContents/logic
7
7
  */
8
8
  import { z } from "zod";
9
9
  import { RequestContext } from "../../../utils/index.js";
10
- export declare const FetchPubMedContentInputSchema: z.ZodEffects<z.ZodObject<{
10
+ export declare const PubMedFetchContentsInputSchema: z.ZodEffects<z.ZodObject<{
11
11
  pmids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
12
12
  queryKey: z.ZodOptional<z.ZodString>;
13
13
  webEnv: z.ZodOptional<z.ZodString>;
@@ -58,10 +58,11 @@ export declare const FetchPubMedContentInputSchema: z.ZodEffects<z.ZodObject<{
58
58
  includeGrantInfo?: boolean | undefined;
59
59
  outputFormat?: "json" | "raw_text" | undefined;
60
60
  }>;
61
- export type FetchPubMedContentInput = z.infer<typeof FetchPubMedContentInputSchema>;
62
- export type FetchPubMedContentOutput = {
61
+ export type PubMedFetchContentsInput = z.infer<typeof PubMedFetchContentsInputSchema>;
62
+ export type PubMedFetchContentsOutput = {
63
63
  content: string;
64
64
  articlesReturned: number;
65
65
  eFetchUrl: string;
66
66
  };
67
- export declare function fetchPubMedContentLogic(input: FetchPubMedContentInput, parentRequestContext: RequestContext): Promise<FetchPubMedContentOutput>;
67
+ export declare function pubMedFetchContentsLogic(input: PubMedFetchContentsInput, parentRequestContext: RequestContext): Promise<PubMedFetchContentsOutput>;
68
+ //# sourceMappingURL=logic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/logic.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,EAEL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAgBjC,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8GvC,CAAC;AAEL,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AA8GF,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,wBAAwB,EAC/B,oBAAoB,EAAE,cAAc,GACnC,OAAO,CAAC,yBAAyB,CAAC,CAwKpC"}
@@ -1,36 +1,36 @@
1
1
  /**
2
- * @fileoverview Logic for the fetch_pubmed_content MCP tool.
2
+ * @fileoverview Logic for the pubmed_fetch_contents MCP tool.
3
3
  * Handles EFetch queries for specific PMIDs and formats the results.
4
4
  * This tool can fetch various details from PubMed including abstracts, full XML,
5
5
  * MEDLINE text, and citation data.
6
- * @module src/mcp-server/tools/fetchPubMedContent/logic
6
+ * @module src/mcp-server/tools/pubmedFetchContents/logic
7
7
  */
8
8
  import { z } from "zod";
9
9
  import { getNcbiService } from "../../../services/NCBI/core/ncbiService.js";
10
10
  import { BaseErrorCode, McpError } from "../../../types-global/errors.js";
11
11
  import { logger, requestContextService, sanitizeInputForLogging, } from "../../../utils/index.js";
12
12
  import { ensureArray, extractAbstractText, extractArticleDates, extractAuthors, extractDoi, extractGrants, extractJournalInfo, extractKeywords, extractMeshTerms, extractPmid, extractPublicationTypes, getText, } from "../../../services/NCBI/parsing/index.js";
13
- export const FetchPubMedContentInputSchema = z
13
+ export const PubMedFetchContentsInputSchema = z
14
14
  .object({
15
15
  pmids: z
16
16
  .array(z.string().regex(/^\d+$/))
17
17
  .max(200, "Max 200 PMIDs per call if not using history.")
18
18
  .optional()
19
- .describe("An array of PubMed Unique Identifiers (PMIDs) for which to fetch content. Use this OR queryKey/webEnv."),
19
+ .describe("An array of PubMed Unique Identifiers (PMIDs) to fetch. Use this OR queryKey/webEnv."),
20
20
  queryKey: z
21
21
  .string()
22
22
  .optional()
23
- .describe("Query key from ESearch history server. If used, webEnv must also be provided. Use this OR pmids."),
23
+ .describe("Query key from ESearch history. Requires webEnv. Use this OR pmids."),
24
24
  webEnv: z
25
25
  .string()
26
26
  .optional()
27
- .describe("Web environment from ESearch history server. If used, queryKey must also be provided. Use this OR pmids."),
27
+ .describe("Web environment from ESearch history. Requires queryKey. Use this OR pmids."),
28
28
  retstart: z
29
29
  .number()
30
30
  .int()
31
31
  .min(0)
32
32
  .optional()
33
- .describe("Sequential index of the first record to retrieve (0-based). Used with queryKey/webEnv."),
33
+ .describe("0-based index of the first record to retrieve. Used with queryKey/webEnv."),
34
34
  retmax: z
35
35
  .number()
36
36
  .int()
@@ -41,22 +41,22 @@ export const FetchPubMedContentInputSchema = z
41
41
  .enum(["abstract_plus", "full_xml", "medline_text", "citation_data"])
42
42
  .optional()
43
43
  .default("abstract_plus")
44
- .describe("Specifies the level of detail for the fetched content. Options: 'abstract_plus' (parsed details including abstract, authors, journal, DOI, etc.), 'full_xml' (raw PubMedArticle XML), 'medline_text' (MEDLINE format), 'citation_data' (minimal parsed data for citations). Defaults to 'abstract_plus'."),
44
+ .describe("Specifies the level of detail for the fetched content. Options: 'abstract_plus' (parsed details), 'full_xml' (raw PubMedArticle XML), 'medline_text' (MEDLINE format), 'citation_data' (minimal citation data). Defaults to 'abstract_plus'."),
45
45
  includeMeshTerms: z
46
46
  .boolean()
47
47
  .optional()
48
48
  .default(true)
49
- .describe("Applies to 'abstract_plus' and 'citation_data' if parsed from XML."),
49
+ .describe("Include MeSH terms in 'abstract_plus' and 'citation_data' results. Default: true."),
50
50
  includeGrantInfo: z
51
51
  .boolean()
52
52
  .optional()
53
53
  .default(false)
54
- .describe("Applies to 'abstract_plus' if parsed from XML."),
54
+ .describe("Include grant info in 'abstract_plus' results. Default: false."),
55
55
  outputFormat: z
56
56
  .enum(["json", "raw_text"])
57
57
  .optional()
58
58
  .default("json")
59
- .describe("Specifies the final output format of the tool. \n- 'json' (default): Wraps the data in a standard JSON object. \n- 'raw_text': Returns raw text for 'medline_text' or 'full_xml' detailLevels. For other detailLevels, 'outputFormat' defaults to 'json'."),
59
+ .describe("Output format. 'json' (default) wraps data in a JSON object. 'raw_text' returns raw text for 'medline_text' or 'full_xml' detail levels."),
60
60
  })
61
61
  .superRefine((data, ctx) => {
62
62
  if (data.queryKey && !data.webEnv) {
@@ -168,22 +168,20 @@ function parsePubMedArticleSet(xmlData, input, parentContext) {
168
168
  }
169
169
  return articles;
170
170
  }
171
- export async function fetchPubMedContentLogic(input, parentRequestContext) {
171
+ export async function pubMedFetchContentsLogic(input, parentRequestContext) {
172
172
  const toolLogicContext = requestContextService.createRequestContext({
173
173
  parentRequestId: parentRequestContext.requestId,
174
- operation: "fetchPubMedContentLogic",
174
+ operation: "pubMedFetchContentsLogic",
175
175
  input: sanitizeInputForLogging(input),
176
176
  });
177
- const validationResult = FetchPubMedContentInputSchema.safeParse(input);
177
+ const validationResult = PubMedFetchContentsInputSchema.safeParse(input);
178
178
  if (!validationResult.success) {
179
179
  throw new McpError(BaseErrorCode.VALIDATION_ERROR, validationResult.error.errors[0]?.message || "Invalid input", { ...toolLogicContext, details: validationResult.error.flatten() });
180
180
  }
181
181
  const ncbiService = getNcbiService();
182
- logger.info("Executing fetch_pubmed_content tool", toolLogicContext);
182
+ logger.info("Executing pubmed_fetch_contents tool", toolLogicContext);
183
183
  const eFetchParams = { db: "pubmed" };
184
- let usingHistory = false;
185
184
  if (input.queryKey && input.webEnv) {
186
- usingHistory = true;
187
185
  eFetchParams.query_key = input.queryKey;
188
186
  eFetchParams.WebEnv = input.webEnv;
189
187
  if (input.retstart !== undefined)
@@ -225,7 +223,9 @@ export async function fetchPubMedContentLogic(input, parentRequestContext) {
225
223
  const pmidRegex = /^PMID- (\d+)/gm;
226
224
  let match;
227
225
  while ((match = pmidRegex.exec(medlineText)) !== null) {
228
- foundPmidsInMedline.add(match[1]);
226
+ if (match[1]) {
227
+ foundPmidsInMedline.add(match[1]);
228
+ }
229
229
  }
230
230
  articlesCount = foundPmidsInMedline.size;
231
231
  if (input.outputFormat === "raw_text") {
@@ -299,7 +299,7 @@ export async function fetchPubMedContentLogic(input, parentRequestContext) {
299
299
  eFetchDetails: { urls: [eFetchUrl] },
300
300
  });
301
301
  }
302
- logger.notice("Successfully executed fetch_pubmed_content tool.", {
302
+ logger.notice("Successfully executed pubmed_fetch_contents tool.", {
303
303
  ...toolLogicContext,
304
304
  articlesReturned: articlesCount,
305
305
  });
@@ -309,3 +309,4 @@ export async function fetchPubMedContentLogic(input, parentRequestContext) {
309
309
  eFetchUrl,
310
310
  };
311
311
  }
312
+ //# sourceMappingURL=logic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/logic.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAM1E,OAAO,EACL,MAAM,EAEN,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,uBAAuB,EACvB,OAAO,GACR,MAAM,yCAAyC,CAAC;AAEjD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC;KAC5C,MAAM,CAAC;IACN,KAAK,EAAE,CAAC;SACL,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SAChC,GAAG,CAAC,GAAG,EAAE,8CAA8C,CAAC;SACxD,QAAQ,EAAE;SACV,QAAQ,CACP,sFAAsF,CACvF;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,qEAAqE,CACtE;IACH,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,6EAA6E,CAC9E;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,2EAA2E,CAC5E;IACH,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,mEAAmE,CACpE;IACH,WAAW,EAAE,CAAC;SACX,IAAI,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;SACpE,QAAQ,EAAE;SACV,OAAO,CAAC,eAAe,CAAC;SACxB,QAAQ,CACP,8OAA8O,CAC/O;IACH,gBAAgB,EAAE,CAAC;SAChB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,mFAAmF,CACpF;IACH,gBAAgB,EAAE,CAAC;SAChB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,gEAAgE,CACjE;IACH,YAAY,EAAE,CAAC;SACZ,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;SAC1B,QAAQ,EAAE;SACV,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CACP,0IAA0I,CAC3I;CACJ,CAAC;KACD,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACzB,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAClC,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,6CAA6C;YACtD,IAAI,EAAE,CAAC,QAAQ,CAAC;SACjB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAClC,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,6CAA6C;YACtD,IAAI,EAAE,CAAC,UAAU,CAAC;SACnB,CAAC,CAAC;IACL,CAAC;IACD,IACE,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,EAC/B,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EACL,8EAA8E;YAChF,IAAI,EAAE,CAAC,OAAO,CAAC;SAChB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EACL,gFAAgF;YAClF,IAAI,EAAE,CAAC,OAAO,CAAC;SAChB,CAAC,CAAC;IACL,CAAC;IACD,IACE,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;QAC1D,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,EAC/B,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,4DAA4D;YACrE,IAAI,EAAE,CAAC,UAAU,CAAC;SACnB,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAwBL,SAAS,qBAAqB,CAC5B,OAAgB,EAChB,KAA+B,EAC/B,aAA6B;IAE7B,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;QAClE,eAAe,EAAE,aAAa,CAAC,SAAS;QACxC,SAAS,EAAE,uBAAuB;KACnC,CAAC,CAAC;IAEH,IACE,CAAC,OAAO;QACR,OAAO,OAAO,KAAK,QAAQ;QAC3B,CAAC,CAAC,kBAAkB,IAAI,OAAO,CAAC,EAChC,CAAC;QACD,MAAM,IAAI,QAAQ,CAChB,aAAa,CAAC,aAAa,EAC3B,uEAAuE,EACvE;YACE,GAAG,gBAAgB;YACnB,WAAW,EAAE,OAAO,OAAO;YAC3B,cAAc,EAAE,uBAAuB,CACrC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAC1C;SACF,CACF,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,OAAqD,CAAC;IAC3E,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC;IAEjD,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QAC7C,MAAM,CAAC,OAAO,CACZ,2EAA2E,EAC3E,gBAAgB,CACjB,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAEhE,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;YAAE,SAAS;QAE5D,MAAM,eAAe,GACnB,UAAU,CAAC,eAAe,CAAC;QAC7B,IAAI,CAAC,eAAe;YAAE,SAAS;QAE/B,MAAM,IAAI,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC;QAC5C,MAAM,aAAa,GAAkB;YACnC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,WAAW,EAAE,YAAY;gBAC9B,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC;gBACnC,CAAC,CAAC,SAAS;YACb,YAAY,EAAE,WAAW,EAAE,QAAQ;gBACjC,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC;gBAC3C,CAAC,CAAC,SAAS;YACb,OAAO,EAAE,WAAW,EAAE,UAAU;gBAC9B,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC;gBACxC,CAAC,CAAC,SAAS;YACb,WAAW,EAAE,WAAW,EAAE,OAAO;gBAC/B,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC;gBAC1D,CAAC,CAAC,SAAS;YACb,gBAAgB,EAAE,WAAW,EAAE,mBAAmB;gBAChD,CAAC,CAAC,uBAAuB,CAAC,WAAW,CAAC,mBAAmB,CAAC;gBAC1D,CAAC,CAAC,SAAS;YACb,QAAQ,EAAE,WAAW,EAAE,WAAW;gBAChC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC1C,CAAC,CAAC,SAAS;YACb,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YACtD,YAAY,EAAE,WAAW,EAAE,WAAW;gBACpC,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC;gBAClC,CAAC,CAAC,SAAS;SACd,CAAC;QAEF,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,aAAa,CAAC,SAAS,GAAG,eAAe,CAAC,eAAe;gBACvD,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,eAAe,CAAC;gBACnD,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;QAED,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,aAAa,CAAC,SAAS,GAAG,WAAW,EAAE,SAAS;gBAC9C,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAC;gBACtC,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAA+B,EAC/B,oBAAoC;IAEpC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;QAClE,eAAe,EAAE,oBAAoB,CAAC,SAAS;QAC/C,SAAS,EAAE,0BAA0B;QACrC,KAAK,EAAE,uBAAuB,CAAC,KAAK,CAAC;KACtC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,QAAQ,CAChB,aAAa,CAAC,gBAAgB,EAC9B,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,EAC5D,EAAE,GAAG,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CACnE,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,gBAAgB,CAAC,CAAC;IAEtE,MAAM,YAAY,GAAwB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;IAE3D,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACnC,YAAY,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QACxC,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QACnC,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAC9B,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7E,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,YAAY,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,cAAc,GAAmB,KAAK,CAAC;IAC3C,IAAI,OAA2B,CAAC;IAEhC,QAAQ,KAAK,CAAC,WAAW,EAAE,CAAC;QAC1B,KAAK,UAAU;YACb,cAAc,GAAG,KAAK,CAAC;YACvB,MAAM;QACR,KAAK,cAAc;YACjB,cAAc,GAAG,MAAM,CAAC;YACxB,OAAO,GAAG,SAAS,CAAC;YACpB,MAAM;QACR,KAAK,eAAe,CAAC;QACrB,KAAK,eAAe;YAClB,cAAc,GAAG,KAAK,CAAC;YACvB,MAAM;IACV,CAAC;IACD,YAAY,CAAC,OAAO,GAAG,cAAc,CAAC;IACtC,IAAI,OAAO;QAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;IAE5C,MAAM,UAAU,GACd,2DAA2D,CAAC;IAC9D,MAAM,iBAAiB,GAAG,IAAI,eAAe,CAC3C,YAAsC,CACvC,CAAC,QAAQ,EAAE,CAAC;IACb,MAAM,SAAS,GAAG,GAAG,UAAU,IAAI,iBAAiB,EAAE,CAAC;IAEvD,MAAM,kBAAkB,GACtB,KAAK,CAAC,WAAW,KAAK,UAAU,IAAI,KAAK,CAAC,YAAY,KAAK,UAAU,CAAC;IAExE,MAAM,kBAAkB,GAAG,MAAM,WAAW,CAAC,MAAM,CACjD,YAAY,EACZ,gBAAgB,EAChB,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,CACvE,CAAC;IAEF,IAAI,eAAuB,CAAC;IAC5B,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,IAAI,KAAK,CAAC,WAAW,KAAK,cAAc,EAAE,CAAC;QACzC,MAAM,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC/C,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9C,MAAM,SAAS,GAAG,gBAAgB,CAAC;QACnC,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACtD,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACb,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QACD,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC;QAEzC,IAAI,KAAK,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACtC,eAAe,GAAG,WAAW,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,MAAM,aAAa,GACjB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACtE,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,cAAc,EAAE,KAAK,CAAC,KAAK,IAAI,qBAAqB;gBACpD,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC;gBAC3B,aAAa;gBACb,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE;aACrC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,WAAW,CAC5B,kBAA0B,EAAE,gBAAgB,EAAE,aAAa,IAAI,EAAE,CACnE,CAAC;QACF,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC;QACnC,IAAI,KAAK,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACtC,kFAAkF;YAClF,6EAA6E;YAC7E,eAAe,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;YAC1C,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBACrD,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,cAAc,CAAC;gBACvE,IAAI,IAAI,KAAK,cAAc;oBAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACvD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;YAC9C,CAAC,CAAC,CAAC;YACH,MAAM,aAAa,GACjB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAClE,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,cAAc,EAAE,KAAK,CAAC,KAAK,IAAI,qBAAqB;gBACpD,QAAQ,EAAE,eAAe;gBACzB,aAAa;gBACb,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE;aACrC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,cAAc,GAAG,qBAAqB,CAC1C,kBAAyC,EACzC,KAAK,EACL,gBAAgB,CACjB,CAAC;QACF,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,MAAM,aAAa,GACjB,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAE7D,IAAI,gBAAgB,GAAQ,cAAc,CAAC;QAC3C,IAAI,KAAK,CAAC,WAAW,KAAK,eAAe,EAAE,CAAC;YAC1C,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAClD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpC,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;iBACrB,CAAC,CAAC;gBACH,WAAW,EAAE;oBACX,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK;oBACjC,eAAe,EAAE,OAAO,CAAC,WAAW,EAAE,eAAe;oBACrD,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM;oBACnC,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK;oBACjC,KAAK,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK;oBACjC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI;iBACjD;gBACD,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,GAAG,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;aAChE,CAAC,CAAC,CAAC;QACN,CAAC;QACD,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;YAC/B,cAAc,EAAE,KAAK,CAAC,KAAK,IAAI,qBAAqB;YACpD,QAAQ,EAAE,gBAAgB;YAC1B,aAAa;YACb,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE;SACrC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,mDAAmD,EAAE;QACjE,GAAG,gBAAgB;QACnB,gBAAgB,EAAE,aAAa;KAChC,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,gBAAgB,EAAE,aAAa;QAC/B,SAAS;KACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview Registration for the pubmed_fetch_contents MCP tool.
3
+ * @module src/mcp-server/tools/pubmedFetchContents/registration
4
+ */
5
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
6
+ /**
7
+ * Registers the pubmed_fetch_contents tool with the MCP server.
8
+ * @param server - The McpServer instance.
9
+ */
10
+ export declare function registerPubMedFetchContentsTool(server: McpServer): Promise<void>;
11
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAepE;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CAgFf"}
@@ -1,29 +1,29 @@
1
1
  /**
2
- * @fileoverview Registration for the fetch_pubmed_content MCP tool.
3
- * @module src/mcp-server/tools/fetchPubMedContent/registration
2
+ * @fileoverview Registration for the pubmed_fetch_contents MCP tool.
3
+ * @module src/mcp-server/tools/pubmedFetchContents/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 { FetchPubMedContentInputSchema, fetchPubMedContentLogic, } from "./logic.js";
7
+ import { PubMedFetchContentsInputSchema, pubMedFetchContentsLogic, } from "./logic.js";
8
8
  /**
9
- * Registers the fetch_pubmed_content tool with the MCP server.
9
+ * Registers the pubmed_fetch_contents tool with the MCP server.
10
10
  * @param server - The McpServer instance.
11
11
  */
12
- export async function registerFetchPubMedContentTool(server) {
13
- const operation = "registerFetchPubMedContentTool";
14
- const toolName = "fetch_pubmed_content";
15
- const toolDescription = "Fetches detailed information from PubMed using NCBI EFetch. Can be used with a direct list of PMIDs or with queryKey/webEnv from an ESearch history entry. Supports pagination (retstart, retmax) when using history. Available 'detailLevel' options: 'abstract_plus' (parsed title, abstract, authors, journal, keywords, DOI, optional MeSH/grant info), 'full_xml' (JSON representation of the PubMedArticle XML structure), 'medline_text' (MEDLINE format), or 'citation_data' (minimal data for citations). Returns a JSON object containing results, any PMIDs not found (if applicable), and EFetch details.";
12
+ export async function registerPubMedFetchContentsTool(server) {
13
+ const operation = "registerPubMedFetchContentsTool";
14
+ const toolName = "pubmed_fetch_contents";
15
+ const toolDescription = "Fetches detailed information from PubMed using NCBI EFetch. Can be used with a direct list of PMIDs or with queryKey/webEnv from an ESearch history entry. Supports pagination (retstart, retmax) when using history. Available 'detailLevel' options: 'abstract_plus' (parsed details), 'full_xml' (raw PubMedArticle XML), 'medline_text' (MEDLINE format), or 'citation_data' (minimal citation data). Returns a JSON object containing results, any PMIDs not found (if applicable), and EFetch details.";
16
16
  const context = requestContextService.createRequestContext({ operation });
17
17
  await ErrorHandler.tryCatch(async () => {
18
- server.tool(toolName, toolDescription, FetchPubMedContentInputSchema._def.schema.shape, async (input, toolContext) => {
18
+ server.tool(toolName, toolDescription, PubMedFetchContentsInputSchema._def.schema.shape, async (input, toolContext) => {
19
19
  const richContext = requestContextService.createRequestContext({
20
20
  parentRequestId: context.requestId,
21
- operation: "fetchPubMedContentToolHandler",
21
+ operation: "pubMedFetchContentsToolHandler",
22
22
  mcpToolContext: toolContext,
23
23
  input,
24
24
  });
25
25
  try {
26
- const result = await fetchPubMedContentLogic(input, richContext);
26
+ const result = await pubMedFetchContentsLogic(input, richContext);
27
27
  return {
28
28
  content: [{ type: "text", text: result.content }],
29
29
  isError: false,
@@ -31,7 +31,7 @@ export async function registerFetchPubMedContentTool(server) {
31
31
  }
32
32
  catch (error) {
33
33
  const handledError = ErrorHandler.handleError(error, {
34
- operation: "fetchPubMedContentToolHandler",
34
+ operation: "pubMedFetchContentsToolHandler",
35
35
  context: richContext,
36
36
  input,
37
37
  rethrow: false,
@@ -67,3 +67,4 @@ export async function registerFetchPubMedContentTool(server) {
67
67
  critical: true,
68
68
  });
69
69
  }
70
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedFetchContents/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,8BAA8B,EAC9B,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAiB;IAEjB,MAAM,SAAS,GAAG,iCAAiC,CAAC;IACpD,MAAM,QAAQ,GAAG,uBAAuB,CAAC;IACzC,MAAM,eAAe,GACnB,8eAA8e,CAAC;IAEjf,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,IAAI,CAAC,MAAM,CAAC,KAAK,EAChD,KAAK,EACH,KAA+B,EAC/B,WAAgB,EACS,EAAE;YAC3B,MAAM,WAAW,GACf,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,eAAe,EAAE,OAAO,CAAC,SAAS;gBAClC,SAAS,EAAE,gCAAgC;gBAC3C,cAAc,EAAE,WAAW;gBAC3B,KAAK;aACN,CAAC,CAAC;YAEL,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjD,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,6DAA6D,EAC7D;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;QAEF,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,7 +1,8 @@
1
1
  /**
2
- * @fileoverview Barrel export for the 'generatePubMedChart' tool.
2
+ * @fileoverview Barrel export for the 'pubmed_generate_chart' tool.
3
3
  * This file re-exports the registration function for the tool,
4
4
  * making it easier to import and register with the MCP server.
5
- * @module src/mcp-server/tools/generatePubMedChart/index
5
+ * @module src/mcp-server/tools/pubmedGenerateChart/index
6
6
  */
7
7
  export * from "./registration.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,mBAAmB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  /**
2
- * @fileoverview Barrel export for the 'generatePubMedChart' tool.
2
+ * @fileoverview Barrel export for the 'pubmed_generate_chart' tool.
3
3
  * This file re-exports the registration function for the tool,
4
4
  * making it easier to import and register with the MCP server.
5
- * @module src/mcp-server/tools/generatePubMedChart/index
5
+ * @module src/mcp-server/tools/pubmedGenerateChart/index
6
6
  */
7
7
  export * from "./registration.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { RequestContext } from "../../../utils/index.js";
3
- export declare const GeneratePubMedChartInputSchema: z.ZodObject<{
3
+ export declare const PubMedGenerateChartInputSchema: z.ZodObject<{
4
4
  chartType: z.ZodEnum<["bar", "line", "scatter", "pie", "doughnut", "bubble", "radar", "polarArea"]>;
5
5
  title: z.ZodOptional<z.ZodString>;
6
6
  width: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
@@ -34,10 +34,11 @@ export declare const GeneratePubMedChartInputSchema: z.ZodObject<{
34
34
  seriesField?: string | undefined;
35
35
  sizeField?: string | undefined;
36
36
  }>;
37
- export type GeneratePubMedChartInput = z.infer<typeof GeneratePubMedChartInputSchema>;
38
- export type GeneratePubMedChartOutput = {
37
+ export type PubMedGenerateChartInput = z.infer<typeof PubMedGenerateChartInputSchema>;
38
+ export type PubMedGenerateChartOutput = {
39
39
  base64Data: string;
40
40
  chartType: string;
41
41
  dataPoints: number;
42
42
  };
43
- export declare function generatePubMedChartLogic(input: GeneratePubMedChartInput, parentRequestContext: RequestContext): Promise<GeneratePubMedChartOutput>;
43
+ export declare function pubmedGenerateChartLogic(input: PubMedGenerateChartInput, parentRequestContext: RequestContext): Promise<PubMedGenerateChartOutput>;
44
+ //# sourceMappingURL=logic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/pubmedGenerateChart/logic.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAEL,cAAc,EAGf,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyDzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAoBF,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,wBAAwB,EAC/B,oBAAoB,EAAE,cAAc,GACnC,OAAO,CAAC,yBAAyB,CAAC,CAkKpC"}