@cyanheads/pubmed-mcp-server 2.10.10 → 2.10.12

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 (73) hide show
  1. package/AGENTS.md +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/README.md +10 -3
  4. package/dist/mcp-server/resources/definitions/database-info.resource.js +6 -6
  5. package/dist/mcp-server/resources/definitions/database-info.resource.js.map +1 -1
  6. package/dist/mcp-server/tools/definitions/_schemas.d.ts +16 -0
  7. package/dist/mcp-server/tools/definitions/_schemas.d.ts.map +1 -1
  8. package/dist/mcp-server/tools/definitions/_schemas.js +20 -0
  9. package/dist/mcp-server/tools/definitions/_schemas.js.map +1 -1
  10. package/dist/mcp-server/tools/definitions/convert-ids.tool.d.ts +6 -0
  11. package/dist/mcp-server/tools/definitions/convert-ids.tool.d.ts.map +1 -1
  12. package/dist/mcp-server/tools/definitions/convert-ids.tool.js +28 -3
  13. package/dist/mcp-server/tools/definitions/convert-ids.tool.js.map +1 -1
  14. package/dist/mcp-server/tools/definitions/fetch-articles.tool.d.ts +27 -0
  15. package/dist/mcp-server/tools/definitions/fetch-articles.tool.d.ts.map +1 -1
  16. package/dist/mcp-server/tools/definitions/fetch-articles.tool.js +166 -24
  17. package/dist/mcp-server/tools/definitions/fetch-articles.tool.js.map +1 -1
  18. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.d.ts +1 -0
  19. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.d.ts.map +1 -1
  20. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js +10 -6
  21. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js.map +1 -1
  22. package/dist/mcp-server/tools/definitions/find-related.tool.d.ts +4 -0
  23. package/dist/mcp-server/tools/definitions/find-related.tool.d.ts.map +1 -1
  24. package/dist/mcp-server/tools/definitions/find-related.tool.js +40 -4
  25. package/dist/mcp-server/tools/definitions/find-related.tool.js.map +1 -1
  26. package/dist/mcp-server/tools/definitions/format-citations.tool.d.ts.map +1 -1
  27. package/dist/mcp-server/tools/definitions/format-citations.tool.js +11 -13
  28. package/dist/mcp-server/tools/definitions/format-citations.tool.js.map +1 -1
  29. package/dist/mcp-server/tools/definitions/lookup-citation.tool.d.ts.map +1 -1
  30. package/dist/mcp-server/tools/definitions/lookup-citation.tool.js +42 -8
  31. package/dist/mcp-server/tools/definitions/lookup-citation.tool.js.map +1 -1
  32. package/dist/mcp-server/tools/definitions/search-articles.tool.d.ts +4 -0
  33. package/dist/mcp-server/tools/definitions/search-articles.tool.d.ts.map +1 -1
  34. package/dist/mcp-server/tools/definitions/search-articles.tool.js +37 -2
  35. package/dist/mcp-server/tools/definitions/search-articles.tool.js.map +1 -1
  36. package/dist/services/error-contracts.d.ts +17 -0
  37. package/dist/services/error-contracts.d.ts.map +1 -1
  38. package/dist/services/error-contracts.js +19 -0
  39. package/dist/services/error-contracts.js.map +1 -1
  40. package/dist/services/ncbi/formatting/citation-formatter.d.ts +4 -20
  41. package/dist/services/ncbi/formatting/citation-formatter.d.ts.map +1 -1
  42. package/dist/services/ncbi/formatting/citation-formatter.js +406 -31
  43. package/dist/services/ncbi/formatting/citation-formatter.js.map +1 -1
  44. package/dist/services/ncbi/ncbi-service.d.ts +3 -2
  45. package/dist/services/ncbi/ncbi-service.d.ts.map +1 -1
  46. package/dist/services/ncbi/ncbi-service.js +22 -10
  47. package/dist/services/ncbi/ncbi-service.js.map +1 -1
  48. package/dist/services/ncbi/parsing/article-parser.d.ts +45 -2
  49. package/dist/services/ncbi/parsing/article-parser.d.ts.map +1 -1
  50. package/dist/services/ncbi/parsing/article-parser.js +201 -2
  51. package/dist/services/ncbi/parsing/article-parser.js.map +1 -1
  52. package/dist/services/ncbi/parsing/esummary-parser.d.ts +11 -1
  53. package/dist/services/ncbi/parsing/esummary-parser.d.ts.map +1 -1
  54. package/dist/services/ncbi/parsing/esummary-parser.js +48 -8
  55. package/dist/services/ncbi/parsing/esummary-parser.js.map +1 -1
  56. package/dist/services/ncbi/parsing/pmc-article-parser.d.ts.map +1 -1
  57. package/dist/services/ncbi/parsing/pmc-article-parser.js +33 -4
  58. package/dist/services/ncbi/parsing/pmc-article-parser.js.map +1 -1
  59. package/dist/services/ncbi/parsing/pmc-xml-helpers.d.ts +19 -0
  60. package/dist/services/ncbi/parsing/pmc-xml-helpers.d.ts.map +1 -1
  61. package/dist/services/ncbi/parsing/pmc-xml-helpers.js +81 -2
  62. package/dist/services/ncbi/parsing/pmc-xml-helpers.js.map +1 -1
  63. package/dist/services/ncbi/parsing/xml-helpers.d.ts +29 -3
  64. package/dist/services/ncbi/parsing/xml-helpers.d.ts.map +1 -1
  65. package/dist/services/ncbi/parsing/xml-helpers.js +46 -0
  66. package/dist/services/ncbi/parsing/xml-helpers.js.map +1 -1
  67. package/dist/services/ncbi/response-handler.d.ts.map +1 -1
  68. package/dist/services/ncbi/response-handler.js +96 -28
  69. package/dist/services/ncbi/response-handler.js.map +1 -1
  70. package/dist/services/ncbi/types.d.ts +172 -2
  71. package/dist/services/ncbi/types.d.ts.map +1 -1
  72. package/package.json +1 -1
  73. package/server.json +3 -3
@@ -78,6 +78,25 @@ export const NCBI_QUERY_INPUT_ERRORS = [
78
78
  retryable: false,
79
79
  },
80
80
  ];
81
+ /**
82
+ * Input failure the identifier-conversion path rejects before any call is made.
83
+ * Separate from {@link NCBI_QUERY_INPUT_ERRORS} for the same reason that array
84
+ * is separate from the service contracts: only a tool that takes caller-supplied
85
+ * identifiers can produce it.
86
+ *
87
+ * Thrown from a tool handler via `ctx.fail('malformed_id', …)`, so its recovery
88
+ * hint resolves through `ctx.recoveryFor` and it stays out of
89
+ * {@link ServiceErrorReason}.
90
+ */
91
+ export const NCBI_ID_INPUT_ERRORS = [
92
+ {
93
+ reason: 'malformed_id',
94
+ code: JsonRpcErrorCode.ValidationError,
95
+ when: 'An `ids` element does not match the declared `idType` — most often several identifiers packed into one element, which the comma-delimited upstream batch would split into extra records.',
96
+ recovery: 'Submit one identifier per `ids` element, in the declared idType format; the same packed value will be rejected again.',
97
+ retryable: false,
98
+ },
99
+ ];
81
100
  /**
82
101
  * Failure modes the Unpaywall service layer can surface. Tools that consume
83
102
  * `getUnpaywallService()` (currently `pubmed_fetch_fulltext`) should spread
@@ -1 +1 @@
1
- {"version":3,"file":"error-contracts.js","sourceRoot":"","sources":["../../src/services/error-contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;QACE,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE,gBAAgB,CAAC,WAAW;QAClC,IAAI,EAAE,0CAA0C;QAChD,QAAQ,EAAE,qEAAqE;QAC/E,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,kBAAkB;QAC1B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,2DAA2D;QACjE,QAAQ,EAAE,4EAA4E;QACtF,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,wBAAwB;QAChC,IAAI,EAAE,gBAAgB,CAAC,OAAO;QAC9B,IAAI,EAAE,iEAAiE;QACvE,QAAQ,EAAE,+DAA+D;QACzE,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,uBAAuB;QAC/B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,mEAAmE;QACzE,QAAQ,EAAE,iFAAiF;QAC3F,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,yBAAyB;QACjC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;QAC/B,IAAI,EAAE,uEAAuE;QAC7E,QAAQ,EACN,gGAAgG;QAClG,SAAS,EAAE,KAAK;KACjB;CACO,CAAC;AAEX;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC;QACE,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,gBAAgB,CAAC,eAAe;QACtC,IAAI,EAAE,yIAAyI;QAC/I,QAAQ,EACN,2GAA2G;QAC7G,SAAS,EAAE,KAAK;KACjB;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,MAAM,EAAE,uBAAuB;QAC/B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,qEAAqE;QAC3E,QAAQ,EACN,gGAAgG;QAClG,SAAS,EAAE,IAAI;KAChB;CACO,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC;QACE,MAAM,EAAE,sBAAsB;QAC9B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,oDAAoD;QAC1D,QAAQ,EACN,4FAA4F;QAC9F,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,2BAA2B;QACnC,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,mEAAmE;QACzE,QAAQ,EAAE,qFAAqF;QAC/F,SAAS,EAAE,IAAI;KAChB;CACO,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,MAAM,EAAE,uBAAuB;QAC/B,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,sDAAsD;QAC5D,QAAQ,EACN,iGAAiG;QACnG,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,4BAA4B;QACpC,IAAI,EAAE,gBAAgB,CAAC,kBAAkB;QACzC,IAAI,EAAE,4EAA4E;QAClF,QAAQ,EACN,uFAAuF;QACzF,SAAS,EAAE,IAAI;KAChB;IACD;QACE,MAAM,EAAE,yBAAyB;QACjC,IAAI,EAAE,gBAAgB,CAAC,eAAe;QACtC,IAAI,EAAE,+FAA+F;QACrG,QAAQ,EACN,8GAA8G;QAChH,SAAS,EAAE,KAAK;KACjB;CACO,CAAC;AAaX,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC;IACE,GAAG,mBAAmB;IACtB,GAAG,wBAAwB;IAC3B,GAAG,wBAAwB;IAC3B,GAAG,uBAAuB;CAC3B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CACjD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CAAC,MAA0B;IACpD,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,wDAAwD,MAAM,GAAG,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"error-contracts.js","sourceRoot":"","sources":["../../src/services/error-contracts.ts"],"names":[],"mappings":"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"}
@@ -14,16 +14,13 @@ export type CitationStyle = 'apa' | 'mla' | 'bibtex' | 'ris' | 'vancouver';
14
14
  * ```
15
15
  * Authors (Year). Title. *Journal*, *Volume*(Issue), Pages. https://doi.org/DOI
16
16
  * ```
17
- */
18
- export declare function formatApa(article: ParsedArticle): string;
19
- /**
20
- * Format a PubMed article as an MLA 9th edition citation.
21
- *
22
- * Pattern:
17
+ * With no author the title takes the author position (APA 7 §9.12):
23
18
  * ```
24
- * Last, First, et al. "Title." *Journal*, vol. 12, no. 3, 2024, pp. 45-67. DOI.
19
+ * Title. (Year). *Journal*, *Volume*(Issue), Pages. https://doi.org/DOI
25
20
  * ```
21
+ * A Bookshelf record routes to {@link formatApaBook}.
26
22
  */
23
+ export declare function formatApa(article: ParsedArticle): string;
27
24
  export declare function formatMla(article: ParsedArticle): string;
28
25
  /**
29
26
  * Format a PubMed article as a BibTeX entry.
@@ -46,19 +43,6 @@ export declare function formatBibtex(article: ParsedArticle): string;
46
43
  * Record ends with `ER - ` (trailing spaces per spec).
47
44
  */
48
45
  export declare function formatRis(article: ParsedArticle): string;
49
- /**
50
- * Format a PubMed article as a Vancouver (ICMJE/NLM) reference — the numbered
51
- * style used by NEJM, Lancet, JAMA, BMJ, and most biomedical journals.
52
- *
53
- * Pattern (the leading list number is the consumer's responsibility — entries
54
- * are formatted independently, so this returns the unnumbered reference body):
55
- * ```
56
- * Surname AB, Surname CD, et al. Article title. Abbrev J Name. Year;Vol(Issue):Pages. doi: 10.x/y
57
- * ```
58
- * Journal name uses the NLM/ISO abbreviation when available; pages are used as
59
- * PubMed supplies them (often elided, e.g. "583-9"); the DOI carries no trailing
60
- * period so it stays copy-pasteable.
61
- */
62
46
  export declare function formatVancouver(article: ParsedArticle): string;
63
47
  /**
64
48
  * Format a single article in the requested citation style.
@@ -1 +1 @@
1
- {"version":3,"file":"citation-formatter.d.ts","sourceRoot":"","sources":["../../../../src/services/ncbi/formatting/citation-formatter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,aAAa,CAAC;AAEtE,yCAAyC;AACzC,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,WAAW,CAAC;AAgM3E;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA6CxD;AAMD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAkDxD;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAkF3D;AAMD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA4FxD;AA4CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAuC9D;AAMD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAanF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,EAAE,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxB"}
1
+ {"version":3,"file":"citation-formatter.d.ts","sourceRoot":"","sources":["../../../../src/services/ncbi/formatting/citation-formatter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,aAAa,CAAC;AAErB,yCAAyC;AACzC,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,GAAG,WAAW,CAAC;AAoX3E;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAwDxD;AA6DD,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAwDxD;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAuH3D;AAMD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CA2HxD;AAmGD,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAiD9D;AAMD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAanF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,EAAE,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxB"}