Skip to main content
Glama

UK Data: Software end-of-life dates

Server Details

Release, support and end-of-life dates for about 490 languages, OSes, databases and frameworks

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

Score is being calculated.

Available Tools

6 tools
eol_latest_releaseA
Read-onlyIdempotent
Inspect

What is the latest version of a product right now? Returns the newest release cycle, its latest patch version and date, release date, support status and end-of-life date. Live data avoids out-of-date answers about "the latest Python/Node/PostgreSQL". Source: endoflife.date (community-maintained, typically refreshed daily); preview or beta releases are not included. (cost: 1 credit)

NameRequiredDescriptionDefault
productNostring, required, endoflife.date product slug (e.g. python, nodejs, postgresql)

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/openWorld/non-destructive, so the bar is lower, and the description still adds real context: the data source (endoflife.date), that it is community-maintained and typically refreshed daily, that preview/beta releases are filtered out, and that a call costs 1 credit. It does not say what happens when the product slug is unknown or not found, which is the main behavioral gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with the user-facing question, then the return payload, then caveats (source, freshness, beta exclusion, cost). Every sentence carries information, though the parenthetical cost and source notes could be tightened and the phrase 'release cycle, its latest patch version and date, release date' is slightly repetitive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully enumerates the returned fields and states data provenance and freshness, which is what an agent needs to trust and cite the answer. The remaining gap is error/edge-case behavior (invalid slug, missing product) and whether historical cycles are ever included, but for a one-parameter read tool this is close to complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single 'product' parameter already documents the required slug with examples (python, nodejs, postgresql). The description only refers to 'a product' generically and adds no format guidance, aliasing advice, or example slugs beyond the schema. Baseline 3 is correct when the schema carries the parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific question-form verb+resource ('What is the latest version of a product right now?') and then enumerates exactly what is returned: newest release cycle, latest patch version and date, release date, support status, EOL date. This is concrete enough to separate it from sibling EOL tools like eol_unsupported_releases or eol_product_search, though it never names those siblings explicitly to sharpen the contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies when to use it — whenever a user asks about 'the latest Python/Node/PostgreSQL' and stale training data is a risk — and notes that preview/beta releases are excluded. However, it gives no explicit when-not guidance and never routes the agent to eol_product_search or eol_unsupported_releases for the cases this tool does not cover (unsupported versions, browsing products).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eol_products_by_categoryA
Read-onlyIdempotent
Inspect

List the products endoflife.date tracks in one category: operating systems, databases, programming languages, frameworks, server applications, cloud services, applications, devices or standards. Returns each product slug, name, aliases and tags so you can then look up release dates. Source: endoflife.date; coverage is about 490 products and is not a full software inventory. (cost: 1 credit)

NameRequiredDescriptionDefault
limitNointeger, optional, products to return, 1-100, default 25
offsetNointeger, optional, skip this many products for paging, default 0
categoryNostring, required, one of app, database, device, framework, lang, os, server-app, service, standard

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the bar is lower. The description still adds real context the annotations cannot: named source (endoflate.date), a coverage caveat (~490 products, not a full inventory) and a cost of 1 credit, which prevents the agent over-trusting absence from results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, then return fields, then caveat and cost — a sensible priority order. The category enumeration is long but earns its place; the only slightly redundant element is the parenthetical cost note, which could sit anywhere.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter read tool with no output schema, the description covers source, scope, returned fields and cost, which is enough to call it correctly. It stops short of explaining paging behavior or what the returned "tags" and "aliases" are good for, leaving a small gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so limit/offset/category are already documented and the baseline is 3. The description adds modest value by spelling the categories out in prose and, in effect, mapping friendly names ("cloud services", "programming languages") onto the slug values in the schema, though it never states that mapping explicitly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource ("List the products endoflife.date tracks in one category") with the full category set enumerated, so an agent knows exactly what comes back. It does not name any sibling (e.g. eol_products_by_vendor_tag or eol_product_search) to draw the boundary, which keeps it short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"so you can then look up release dates" implies the downstream workflow and the natural follow-up call, but there is no explicit when-to-use-this-vs-alternatives guidance and no stated exclusion condition against eol_product_search or eol_products_by_vendor_tag.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eol_products_by_vendor_tagA
Read-onlyIdempotent
Inspect

List the products endoflife.date tracks under one tag, usually a vendor (microsoft, amazon, google, oracle, red-hat), a family (linux-distribution) or a runtime (php-runtime, javascript-runtime). Answers "which Microsoft products have end-of-life dates" before you look up each one. Source: endoflife.date; tags are the project's own grouping (see eol_tags) and a vendor's list may be incomplete. (cost: 1 credit)

NameRequiredDescriptionDefault
tagNostring, required, endoflife.date tag (e.g. microsoft, amazon, linux-distribution); see eol_tags
limitNointeger, optional, products to return, 1-100, default 25
offsetNointeger, optional, skip this many products for paging, default 0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, open-world, non-destructive behavior, and the description adds genuinely new context: the source (endoflate.date), that tags are the project's own grouping, that a vendor's list may be incomplete, and that each call costs 1 credit. That incompleteness caveat and cost note materially affect how an agent interprets and budgets the call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the action and the tag taxonomy, then adds the motivating question, source caveat, and cost note in a compact sequence. Slightly dense with parenthetical asides, but every sentence carries information an agent would otherwise have to guess.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should ideally indicate what a product entry contains; it only says 'list the products,' leaving the returned fields unspecified. Otherwise it covers source, tag semantics, completeness caveat, and cost, which is sufficient for a simple read-only listing tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning by explaining what a tag actually is and giving representative values across vendor, family, and runtime categories, plus pointing to eol_tags for enumeration. It does not explain paging semantics for limit/offset, but the schema handles those.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (List) and resource (products tracked by endoflife.date under one tag), with concrete example tags spanning vendor, family, and runtime groupings. It clearly implies the tag-based cut, but never explicitly contrasts itself with the close sibling eol_products_by_category, so an agent must infer the tag-vs-category distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage context: use it to answer 'which Microsoft products have end-of-life dates' before looking up each one, and it routes the agent to eol_tags for tag discovery. It stops short of naming when to prefer eol_product_search or eol_products_by_category instead, so no explicit exclusion is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eol_tagsA
Read-onlyIdempotent
Inspect

List every tag endoflife.date uses to group products: vendors (microsoft, amazon, google), families (linux-distribution) and runtimes (php-runtime, java-runtime). Use it to find a valid tag for eol_products_by_vendor_tag. Source: endoflife.date; tags are the project's own grouping, not an official vendor list. (cost: 1 credit)

NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and openWorld, so the safety profile is covered. The description adds real value beyond that: it warns that tags are the project's own grouping rather than an official vendor list, and discloses the 1-credit cost, both of which affect how an agent should interpret and budget the call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences, front-loaded with the action and the tag taxonomy, followed by the consumer tool, then a provenance caveat and cost. Every sentence carries distinct information with no repetition of the annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a trivial zero-param lookup with no output schema, the description covers what is returned (tags, grouped into vendors/families/runtimes) and what to do next. It stops short of stating the exact response shape (e.g. flat list vs. grouped object), a minor gap given no output schema exists to fill it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes no parameters, which is the baseline-4 case. The description correctly implies a no-argument call by describing a full enumeration, and there are no inputs whose semantics would need explaining.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

"List every tag endoflife.date uses to group products" states a specific verb and resource, then enumerates the three tag categories (vendors, families, runtimes) with concrete examples. This clearly separates it from eol_products_by_vendor_tag and eol_products_by_category, which consume rather than enumerate tags.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use it to find a valid tag for eol_products_by_vendor_tag" states the downstream condition that selects this tool, which is the key routing signal. It doesn't explicitly cover when not to use it, but for a zero-parameter enumeration tool with an obvious single consumer, no exclusion is genuinely needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

eol_unsupported_releasesA
Read-onlyIdempotent
Inspect

Which versions of a product are already end of life? Lists the release cycles past their end-of-life date, newest first, with the end-of-life date, the last patch version and whether extended (often paid) support is still available. Useful for security audits and spotting outdated versions in an estate. Source: endoflife.date (community-maintained); it reports published dates, not whether a given install is patched. (cost: 1 credit)

NameRequiredDescriptionDefault
limitNointeger, optional, cycles to return, newest first, 1-100, default 25
productNostring, required, endoflife.date product slug (e.g. php, python, nodejs)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds real value beyond them: result ordering (newest first), the returned fields, the source (endoflife.date, community-maintained), a caveat that it reports published dates rather than whether an install is patched, and a 1-credit cost. It does not explain edge behavior (unknown product slug, empty results), keeping it at 4.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded as a question, followed by scope, returned fields, usage context, source caveat, and cost — a sensible priority order. The phrasing is tight, though the parenthetical cost note and source sentence add some length that could be trimmed without loss.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter read-only lookup with full schema coverage and no output schema, the description adequately covers purpose, ordering, returned fields, source reliability and limits. What is missing is minor: handling of an unrecognized product slug and how truncation by `limit` behaves beyond the schema note.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — both `product` (slug examples like php, python, nodejs) and `limit` (integer, 1-100, default 25) are fully documented in the schema. The description only reinforces the ordering semantics ("newest first") already stated for `limit`. Baseline 3 applies since the schema carries the parameter burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening question ("Which versions of a product are already end of life?") plus the explicit scope ("Lists the release cycles past their end-of-life date") gives a specific verb+resource. It implicitly separates itself from eol_latest_release by focusing on past-EOL cycles, but never names that sibling, so an agent must infer the routing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states a concrete usage context: "Useful for security audits and spotting outdated versions in an estate." That is clear guidance on when to reach for it. There are no exclusions or explicit pointers to alternatives (eol_latest_release, eol_product_search), so it falls short of the 5 bar.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updates
    • First observedeol_latest_release
    • First observedeol_product_search
    • First observedeol_products_by_category
    • First observedeol_products_by_vendor_tag
    • First observedeol_tags
    • First observedeol_unsupported_releases

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying software product release and support timelines, including EOL dates, active-support end, latest patch, and LTS status for products or specific versions.
    502 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Software end-of-life intelligence for AI agents: EOL dates, support timelines and 0-100 upgrade risk scores for 480+ products. Check whether a version is still supported, score its risk, or audit an entire stack.
    5
    194 npm
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    Provides access to the endoflife.date API to query support and end-of-life information for thousands of software products. It enables users to retrieve detailed release schedules, lifecycle data, and product categories through natural language.
    7
    194 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources