Skip to content

Releases: AM-Digital-Research-Environment/amira-mcp-server

v1.11.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 31 Jul 17:38

Full Changelog: v1.10.0...v1.11.0

v1.10.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 29 Jul 14:46

⚠️ Requires Node.js 20 or newer

This release raises the runtime floor from Node 18 to Node 20. If Claude Desktop
runs the extension on Node 18, it will fail to load after upgrading. Check with
node --version and update if you are below 20.

This is not our choice: the MCP TypeScript SDK v2, which this release migrates to,
requires Node 20+. Staying on Node 18 means staying on v1.9.2.

What's new

The server now speaks MCP 2026-07-28, the stateless revision ratified on 28 July.

  • server/discover advertises ["2026-07-28"]
  • Results carry resultType, and cacheable results carry real ttlMs / cacheScope
    (1 h public on tools/list, resources/list and server/discover; 24 h on
    resources/read) instead of the SDK's conservative { ttlMs: 0, private } default
  • Both transports are covered — the bundled stdio entry and the remote Streamable
    HTTP endpoint

Existing clients keep working. Anything pinned to 2025-11-25 or earlier — including
the ChatGPT connector — negotiates exactly as it did before, answered by a fresh server
instance per request. No configuration change is needed.

Nothing changed in the data, the tools, or the citation contract: the same 26 tools on
stdio (28 over HTTP, with the OpenAI-compatible search/fetch), the same amira_url
on every record.

Under the hood

Migrated from the frozen @modelcontextprotocol/sdk v1 monolith to the scoped v2
packages (@modelcontextprotocol/server, /node, /client). Two gates were not
obvious and are worth recording for anyone doing the same migration: the modern era is
opt-in via supportedProtocolVersions, and the era is owned by the entry point
(serveStdio / createMcpHandler), not by the transport — a hand-connected transport
serves the 2025 era only, with server/discover answering -32601.

Verified on the wire on both transports with a raw JSON-RPC probe rather than the SDK
client. 48 unit tests, 10 live API tests, both smoke suites green.

See ROADMAP.md
for the full write-up.

Install

Download amira-mcp-server.mcpb below and open it with Claude Desktop. The extension
bundles a complete data snapshot, so it works offline; enable live refresh in the
extension settings to pull newer records from the public Omeka S API.

amira-mcp-skill.zip is the optional companion skill — unzip it into ~/.claude/skills/.

Full Changelog: v1.9.2...v1.10.0

v1.9.2 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 27 Jul 12:03

Full Changelog: v1.9.1...v1.9.2

v1.9.1 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 27 Jul 08:45

Full Changelog: v1.9.0...v1.9.1

v1.9.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 27 Jul 08:41

Full Changelog: v1.8.0...v1.9.0

v1.8.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 27 Jul 08:31

Full Changelog: v1.7.1...v1.8.0

v1.7.0 — AMIRA MCP server

Choose a tag to compare

@github-actions github-actions released this 27 Jul 08:00

Full Changelog: v1.6.0...v1.7.0

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.

v1.4.5 - AMIRA MCP server

Choose a tag to compare

@fmadore fmadore released this 20 Jun 16:22

AMIRA MCP server v1.4.5

This patch release corrects AMIRA/AMRC wording in the public package metadata and documentation.

  • Clarifies that the Africa Multiple Research Centres are Universite Joseph Ki-Zerbo, Rhodes University, the University of Lagos, and Moi University.
  • Clarifies that Federal University of Bahia is a privileged partner, not an AMRC.
  • Updates the MCPB manifest long description, README, runtime MCP instructions, project tool description, and companion skill docs.
  • Keeps the AMIRA project university field documented as a metadata/source facet rather than a formal AMRC list.

Verified with npm exec -- mcpb validate manifest.json, npm run prepack-mcpb, npm run test:live, git diff --check, and npm exec -- mcpb pack . amira-mcp-server.mcpb.

v1.4.4 - AMIRA MCP server

Choose a tag to compare

@fmadore fmadore released this 20 Jun 11:27

AMIRA MCP server v1.4.4

  • Update the Node/npm dependency stack to current stable releases, including Node 26, TypeScript 6, Zod 4, Node 26 types, and the latest esbuild patch.
  • Make /healthz readiness-aware and include snapshot counts for a clearer HTTP status signal.
  • Use the lockfile-backed local mcpb packer in CI and release workflows.
  • Verified with npm run prepack-mcpb, npm run test:live, and npm run pack-mcpb.