Skip to content

v1.6.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 05 Jul 16:38

Highlights

  • Publication full text is now searchable. Open-access publications carry the extracted text of their PDF (53 of 277 in the current snapshot, ~72k–121k characters each). search_publications reaches into it — a full-text-only hit is flagged matched_in: "fulltext" with a fulltext_snippet — and get_publication exposes it opt-in and paged (include_fulltext, fulltext_offset/fulltext_max_chars), the same discipline the server already used for podcast/video transcripts. The ChatGPT search/fetch tools get the same reach and params.
  • New tool: list_journals (26th tool). Lists the 87 journals in the cluster bibliography's venue authority, ranked by publication count, with ISSN, country, and a website link. Journal articles' venue now links to this record (venue_omeka_id / venue_amira_url / venue_issn) instead of being a bare string.
  • get_publication gained new fields: peer-review status, funders[], places_of_publication[], and whether the open-access PDF is attached (has_media / thumbnail).
  • find_related now includes publications. Pivoting on a subject or person also returns matched_publications and up to 10 related_publications from the bibliography, not just research items.
  • New experimental setting: AMIRA_EXPOSURE. Set to minimal | descriptive | structured | full to restrict which metadata the tools expose — useful for controlled evaluation of LLM behavior against graded metadata visibility. Defaults to full (unchanged behavior for all existing users). Restricted levels return structured errors (exposure_restricted, text_access_disabled) rather than silently omitting data.

Fixes

  • search_podcasts' description no longer claims transcripts don't exist — all 43 episodes have carried transcripts since June.

Under the hood

  • Snapshot schema bumped to v4 (adds the journals corpus and the new publication fields).
  • Transcript and full-text opt-in/paging logic is now a single shared implementation behind get_video, get_podcast, get_publication, and the ChatGPT fetch tool, so the two can no longer drift out of sync.
  • search/fetch (the ChatGPT-compatible tools) now declare an outputSchema, per the current MCP spec (2025-11-25).
  • Test suite gained a fixture-snapshot harness that drives the real, bundled server in-process (test/unit/tools.test.mjs, 15 tests) plus snapshot-lifecycle invariant tests (test/unit/snapshot.test.mjs, 6 tests) — 34 unit tests total, all offline and deterministic. Live and smoke tests extended to cover full text and journals.

Upgrade notes

  • No action needed for existing installs — AMIRA_LIVE_REFRESH will pick up the new snapshot shape automatically, and the bundled snapshot in this release already includes full text and journals.
  • If you run the hosted HTTP endpoint or a ChatGPT connector against it, redeploy from this tag and reconnect the connector so it drops any cached pre-1.6.0 tool schemas.