Skip to content

v2.3.11

@cyanheads cyanheads tagged this 20 Apr 20:49
Resolves three findings from field-testing pubmed_fetch_articles
against live PubMed data (PMIDs 13054692, 17960126, 36813558).

Fixed (#26)
- format() now renders every field in the output schema in content[],
  the only field most LLM clients forward to the model. Previously
  dropped: articleDates, author firstName, ORCID, per-author
  affiliationIndices, journal ISSN/eIssn, publication month/day,
  medlineDate, raw pmcId, grant acronym, and authors beyond the
  third (collapsed to "et al."). Authors render as a bulleted list
  with firstName lastName, 1-based affiliation markers into a
  numbered Affiliations section, and an inline ORCID suffix. Full
  publication date rendered (or medlineDate). New Article Dates line
  surfaces electronic/received/revised dates. Grants show acronym
  alongside ID. Empty-result responses include a hint pointing
  callers at pubmed_search_articles.

Changed (#27)
- Actionable PMID validation error message applied across every tool
  accepting PMIDs (fetch_articles, fetch_fulltext, find_related,
  format_citations). The new message names the domain concept, shows
  an example, and lists common pitfalls (whitespace, commas,
  non-digit characters).

Changed (#28)
- parseFullArticle omits empty arrays for absent optional fields
  (publicationTypes, keywords, articleDates, meshTerms, grantList)
  instead of returning []. Output schema already marked them
  optional; runtime now matches.

Quality
- 20+ new tests covering format content completeness, validation
  message quality, and parser empty-array omission. 387 tests pass;
  bun run devcheck clean. Field-tested end-to-end over HTTP.
Assets 2
Loading