Skip to content

v2.5.6

@cyanheads cyanheads tagged this 24 Apr 16:41
Correctness + ergonomics pass on pubmed_lookup_citation. Fixes the silent
wrong-PMID class of bug where ECitMatch's journal+volume+page weighting
returned a PMID whose author/year disagreed with the query.

- Closes cyanheads/pubmed-mcp-server#35 (silent wrong-PMID on author mismatch).
  Batched eSummary verification after ECitMatch; surname-to-surname comparison;
  structured `warnings: [{ code: 'author_mismatch', message }]`; PMID preserved.
- Closes cyanheads/pubmed-mcp-server#40 (same class of bug for year). Reuses
  the eSummary batch; adds `year_mismatch` warning code; stacks with author.
- Closes cyanheads/pubmed-mcp-server#25 (AMBIGUOUS candidate PMIDs). Service-layer
  parsing of `AMBIGUOUS <csv>` into `candidatePmids: string[]`; detail preserved;
  format() renders list + fetch_articles next-step.
- Adds `matchedFirstAuthor` for eyeball signal on clean matches and
  `totalWarnings` roll-up on top-level output.

422 tests passing (+13 new); devcheck green across 11 checks. Field-tested
end-to-end against real NCBI ECitMatch + eSummary.
Assets 2
Loading