Skip to the content
Agent Tools

Software end-of-life tools compared

Most end-of-life tools read the same open dataset, endoflife.date. They split into lookups, which answer for a version you name, and scanners, which find old versions in your images and SBOMs.

Checked by OpenKrill. 9 tools, one of them ours.

Short answer

  • Pick endoflife.date itself if you want the raw dataset, its API or calendar feeds.
  • Pick Trivy or xeol if a CI build should fail when an image or SBOM holds end-of-life software; Trivy checks the OS only.
  • Pick endoflife.ai MCP if you want a risk score and SBOM checks from an agent and can get a key for company use.
  • Pick Dev Facts Check if an agent asks about one product version at a time and you want a keyless remote server with dated answers.
  • Pick norwegianblue if a person wants the answer in a terminal.

The tools side by side

ToolNamed in 24 AI answersRight in our testRuns asKey or accountPrice
endoflife.date22 of 245 of 5Web app and APINoFree
endoflife.ai MCP11 of 245 of 5Remote MCPPaid key for company useFree, paid plans
EOL MCP Server (ducthinh993)8 of 24Not testedLocal MCPNoFree
EndOfLife MCP Server (brianprost)5 of 24Not testedLocal MCPNoFree
norwegianblue (eol CLI)3 of 24Not testedCLINoFree
xeol3 of 24Not testedLocal CLINoFree
Trivy2 of 24Not testedLocal CLINoFree
Grype2 of 24Not testedLocal CLINoFree
Dev Facts Check (ours)0 of 245 of 5Remote MCPNoFree

Answers from ChatGPT, Gemini, Perplexity, and Claude (API with web search), asked on and . A small sample: read it as a hint, not a ranking. Rows named in 0 answers were added by us, ours included.

The address or command to connect each tool is in Each tool in detail.

What each tool covers

ToolEOL datesSupport phase (LTS, active, security)Scans your stack, image or SBOMFails a CI build on EOLHTTP APIMCP server
endoflife.dateYesYesNoNoYesNo
endoflife.ai MCPYesPartlyYesNoYesYes
EOL MCP Server (ducthinh993)YesYesNoNoNoYes
EndOfLife MCP Server (brianprost)YesYesNoNoNoYes
norwegianblue (eol CLI)YesYesNoNoNoNo
xeolYesNoYesYesNoNo
TrivyPartlyNoYesYesNoPartly
GrypePartlyNoYesNoNoNo
Dev Facts Check (ours)YesYesPartlyNoNoYes

Our test

We asked every hosted tool we could call without an account, a key or an install the same question, with the same inputs. Where that left our tool with no rival, we also ran the rivals a person can use, in their web form, their chat app or their API. Each tested row says how it was run. We wrote down the official answer for each input first, then scored each tool against it on . The official source an answer comes from is not scored against itself, and an input outside a tool's job is not sent to it, so that tool is scored on the inputs in its scope.

The question: Is this product version past end of life today (2026-10-13), and on what date did or will support end? Correct when the past-EOL yes or no is right for 2026-10-13 and the end date matches the vendor page. Where the vendor gives a month only (Ubuntu), any date in that month or the first day after it counts.

  1. Node.js 20: Past EOL yes; support ended 2026-04-30. Official record: github.com.
  2. Python 3.10: Past EOL yes; end of life 2026-10-01 (12 days ago). Official record: devguide.python.org, peps.python.org.
  3. Ubuntu 22.04 LTS: Past EOL no; standard security maintenance runs to May 2027 (endoflife.date eolFrom 2027-06-01); Ubuntu Pro expanded maintenance to May 2032. Official record: ubuntu.com.
  4. PostgreSQL 14: Past EOL no; final release 2026-11-12 (30 days away). Official record: postgresql.org.
  5. Django 4.2 LTS: Past EOL yes; extended support ended 2026-04-07. Official record: djangoproject.com.
  • endoflife.date: 5 of 5 right, 5 answered, median 0.9 s. All 5 right; isEol and eolFrom answer both parts directly. How it was run: Public API GET https://endoflife.date/api/v1/products/<product>/releases/<cycle>.
  • endoflife.ai MCP: 5 of 5 right, 5 answered, median 1.2 s. All 5 right, each with the vendor page it checked; Ubuntu 22.04 shows 2027-05-31. How it was run: Remote MCP tools/call check_eol at https://mcp.endoflife.ai/, no key.
  • Dev Facts Check (ours): 5 of 5 right, 5 answered, median 5.7 s. All 5 right; for Ubuntu 22.04 it gives eolFrom 2027-06-01, the day after Canonical's May 2027 end. How it was run: Remote MCP tools/call get_eol_status at https://devfacts.openkrill.app/mcp.

Not tested:

  • EOL MCP Server (ducthinh993): Local install only.
  • EndOfLife MCP Server (brianprost): Local install only.
  • norwegianblue (eol CLI): Local install only.
  • xeol: Local install only.
  • Trivy: Local install only.
  • Grype: Local install only; it warns on EOL distro packages but prints no date.

Every input, official answer and result is in the test data as JSON.

Each tool in detail

endoflife.date

The open dataset most other tools here read. Use it directly when you want raw dates, its API or a calendar feed; it does not scan your stack.

Good at: Free open dataset for 484 products, with a keyless API and iCal feeds.

Limit: A dataset and API, not a scanner: it does not find which versions run in your stack.

How to run the check: curl -s https://endoflife.date/api/v1/products/nodejs/releases/20 | jq -r .result.isEol prints true once that cycle is past end of life, so a CI step can fail the job on true.

Data: community contributions citing vendor lifecycle pages

License: MIT

Repo: endoflife-date/endoflife.date, 3,396 stars, last commit 2026-10-13

endoflife.ai MCP

Good at: Adds a 0 to 100 risk score, CISA KEV join and SBOM checks.

Limit: Company, scheduled or production use needs a paid key; anonymous use stops at 50 requests a day and 3 components per SBOM call.

Data: vendor lifecycle pages, endoflife.date, CISA Known Exploited Vulnerabilities

License: MIT. MCP tools: 10

Repo: endoflife-ai/endoflife-mcp, 0 stars, last commit 2026-09-24

Connect: https://mcp.endoflife.ai/

EOL MCP Server (ducthinh993)

A local server that adds version comparison and upgrade advice on top of end-of-life dates. It has had no commits since January 2025.

Good at: Adds version comparison and upgrade advice on top of EOL dates.

Limit: No commits since January 2025; README examples still use 2024 dates.

Data: endoflife.date API

License: MIT. MCP tools: 5

Repo: ducthinh993/mcp-server-endoflife, 8 stars, last commit 2025-01-25

Connect: git clone https://github.com/ducthinh993/mcp-server-endoflife && npm install

EndOfLife MCP Server (brianprost)

A thin local wrapper over the endoflife.date API. The repo is archived, so build it yourself and expect no fixes.

Good at: Thin, simple wrapper over the endoflife.date v1 API.

Limit: Repo is archived; you build and run it yourself from source.

Data: endoflife.date API v1

License: None stated (no LICENSE file). MCP tools: 7

Repo: brianprost/endoflife-mcp, 0 stars, last commit 2025-06-22

Connect: git clone https://github.com/brianprost/endoflife-mcp && npm install && npm run build

norwegianblue (eol CLI)

Good at: Maintained terminal tool; prints Markdown, JSON, CSV, HTML and more.

Limit: A terminal tool, not an MCP server; it looks up named products and does not scan your stack.

Data: endoflife.date API

License: MIT

Repo: hugovk/norwegianblue, 144 stars, last commit 2026-10-06

Connect: pip install norwegianblue

xeol

Good at: Finds EOL software in container images, folders and SBOMs, and --fail-on-eol-found fails a CI build; a GitHub Action is available.

Limit: The main branch last changed in March 2025, and the latest release, v0.10.8, is from 2025-03-05.

Data: endoflife.date, package registries, vendor lifecycle data

License: Apache-2.0

Repo: xeol-io/xeol, 449 stars, last commit 2025-03-18

Connect: brew tap xeol-io/xeol && brew install xeol

Trivy

Good at: Widely used scanner that flags an end-of-life OS in images, VMs, SBOMs and root filesystems; --exit-on-eol fails a CI build.

Limit: Its EOL check covers the operating system only, not language runtimes or app packages.

Data: OS vendor lifecycle data built into Trivy

License: Apache-2.0

Repo: aquasecurity/trivy, 38,387 stars, last commit 2026-10-13

Connect: brew install trivy

Grype

Good at: Widely used open source scanner for images, folders and SBOMs; since v0.106.0 it warns when packages come from an end-of-life OS distro.

Limit: Its EOL check covers the OS distro only, as a warning with no date; the release notes add no exit code for it, only a switch to turn it off.

Data: Grype vulnerability database, OS distro release data

License: Apache-2.0

Repo: anchore/grype, 13,017 stars, last commit 2026-10-12

Connect: brew install grype

Dev Facts Check (ours)

Good at: Keyless EOL date, LTS flag and support phase for a product version; check_runtime_eol reads pin files like .nvmrc, Dockerfile and go.mod and flags EOL runtimes.

Limit: Closed source from one small vendor, no SLA stated; endoflife.date data, reads runtime pin files only, no SBOM or image scan, cannot fail a CI build.

Data: endoflife.date

License: Closed source. MCP tools: 6

Repo: n/a (no public repo)

Connect: https://devfacts.openkrill.app/mcp

Can I use and the MDN MCP server come up when people ask about version support, but they answer browser support, not end-of-life dates, so this page does not compare them.

How we compared

On we asked ChatGPT, Gemini, Perplexity, and Claude (API with web search) six questions about software end-of-life tools, three "what is the best tool" questions and three "which MCP server should I use" questions:

  1. What is the best tool to look up end-of-life dates and supported versions of software like Node.js or Python?
  2. Which tool should I use to check software end-of-life dates, licenses and browser support? Give me your top 3.
  3. What are the best software end-of-life and version lookup tools right now?
  4. Which end-of-life or software version MCP server should I use with my AI agent?
  5. What is the best MCP server for software end-of-life dates and release facts for Claude or ChatGPT?
  6. I want my coding agent to check end-of-life dates, licenses and browser support. Which MCP should I install?

24 answers came back with text we could read. "Named in AI answers" counts the answers that named the tool in their text or linked to it; pages an app read but did not cite do not count. The rows are the tools those answers named most, plus tools a reader would expect that the answers missed.

"Right in our test" comes from the measured test above. Every other fact comes from the tool's own page, docs or GitHub repo on the same day. Stars and commit dates change every week, so check the repo before you decide.

OpenKrill makes one of the tools on this page. Its row is sorted by the same count, tested with the same inputs and its limits are listed the same way.

Frequently asked questions

Where does end-of-life data come from?

Mostly from endoflife.date, an open project that copies each vendor's lifecycle page into one dataset. Check the vendor page for a date that matters to a contract or audit.

Is there an MCP server for endoflife.date?

Several. Dev Facts Check and endoflife.ai are remote servers. The brianprost and ducthinh993 servers run locally, but the first is archived and the second has had no commits since January 2025.

Can a tool stop a deploy that ships end-of-life software?

Yes. Trivy and xeol scan images and SBOMs and can fail a CI build. Lookup tools such as endoflife.date answer for a version you name and do not scan anything.

Other comparisons

OpenKrill builds live-data tools for AI agents, with a human check on the result.