Skip to main content
Glama

EOSL.ai — Hardware End-of-Life Database

Server Details

Hardware end-of-life dates by part number, each linked to the vendor's own bulletin.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 5 of 5 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose: bulk_check and lookup_part are differentiated by batch vs single part number lookup, search_models and get_family by search vs full record retrieval, and list_vendors is unique. No two tools are easily confused.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: bulk_check, get_family, list_vendors, lookup_part, search_models. The verbs are clear and the pattern is uniform throughout.

Tool Count5/5

Five tools is well-scoped for a read-only EOL database server. Each tool covers a distinct query type without redundancy or excessive granularity.

Completeness5/5

The tool set covers all core read operations: search families, retrieve family details, single and batch part number lookup, and vendor listing. No obvious gaps exist for the domain's stated purpose.

Available Tools

5 tools
bulk_checkAInspect

Check up to 200 part numbers in one call. Returns a per-part row (status, EOSL date, source URL, page URL) plus summary counts: past, endingSoon, supported, active, notFound.

ParametersJSON Schema
NameRequiredDescriptionDefault
part_numbersYesPart numbers to check (deduplicated; max 200).
Behavior3/5

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

No annotations are provided, so the description must fully disclose behavior. It does describe the return format in detail, which is useful. However, it does not mention error handling, rate limits, or what happens with invalid part numbers. Since this is a read-only operation, the lack of mutation details is less critical, but the absence of any annotation makes a 3 appropriate.

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?

The description is extremely concise: two sentences that front-load the key limit (200) and immediately describe the output format. Every word contributes value, with no repetition or unnecessary detail.

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

Completeness5/5

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

Given the tool has only one parameter, no output schema, and a straightforward bulk-read purpose, the description provides enough context about what it returns and its batch capacity. An agent can confidently select this tool for bulk part-status checks. The sibling tools are clearly differentiated.

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?

The input schema already provides full coverage of the only parameter (part_numbers) with min/max constraints and deduplication noted. The description adds no additional parameter-level semantics beyond what the schema states, so the baseline of 3 is appropriate.

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?

The description clearly states the tool's function: checking up to 200 part numbers in a single call. It distinguishes itself from sibling tools like lookup_part by emphasizing the bulk aspect and specifying the precise return structure (per-part row with status, EOSL date, source URL, page URL, plus summary counts).

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?

The description implies its usage context by highlighting the 'up to 200 part numbers in one call' capability, making it obvious that this is for bulk lookups. However, it does not explicitly mention when not to use it or reference alternatives like lookup_part for single-part checks.

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

get_familyAInspect

Fetch the full source-backed record for one product family by slug (from search_models or lookup_part pageUrl): lifecycle dates per SKU group, every part number, support runway score factors, and the vendor bulletin URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesFamily slug, e.g. "cisco-catalyst-3850".
Behavior3/5

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

No annotations are provided, so the description must disclose behavioral traits. 'Fetch' implies a read operation, and 'full source-backed record' hints at data completeness, but it doesn't explicitly state that no writes occur, nor does it mention potential errors (e.g., invalid slug) or data freshness. For a fetch operation this is acceptable but not rich.

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?

A single sentence that front-loads the action and resource, then appends a compact list of contents. Every word adds value; no filler, no repetition of schema data.

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

Completeness5/5

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

For a one-parameter fetch tool with no output schema, the description adequately covers what the user will get by listing the key data types included. It also provides the prerequisite context (where the slug comes from), making it self-sufficient.

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 schema already describes the slug parameter with an example, so coverage is 100%. The description adds value by explaining where to obtain the slug (from search_models or lookup_part pageUrl), which directly informs how to fill the parameter, going beyond the schema.

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?

The description opens with a specific verb+resource: 'Fetch the full source-backed record for one product family by slug'. It clearly distinguishes from siblings by focusing on a single family and specifying the source of the slug (search_models or lookup_part). The listed contents (lifecycle dates, part numbers, support runway, vendor bulletin URLs) make the purpose unmistakable.

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?

The description notes that the slug comes 'from search_models or lookup_part pageUrl', providing clear context on when this tool is appropriate as a follow-up. It doesn't explicitly exclude alternatives, but the unique purpose and prerequisite are implied, which is better than no guidance.

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

list_vendorsAInspect

List all vendors tracked by EOSL.ai with family counts and vendor page URLs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It correctly implies a read-only operation through the word 'List', but does not specify pagination, response format, or authentication nuances.

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?

The description is a single, direct sentence that front-loads the action and resource, with no redundant words. It efficiently conveys the necessary information.

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?

Given the absence of an output schema, the description provides a useful summary of the return data (family counts and URLs). It omits potential details like sorting or pagination, but for a simple list call, it is sufficiently complete.

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 has zero parameters and an empty schema, so the description adds no parameter information needed. The baseline for parameterless tools is 4, and the description's focus on output aligns with that.

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?

The description uses the specific verb 'List' and identifies the resource 'all vendors tracked by EOSL.ai', clearly stating the output includes family counts and URLs. It is distinct from sibling tools like bulk_check and search_models, which serve different functions.

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?

The description gives clear context that this tool is for obtaining a full vendor list, making it obvious when to use it. However, it does not explicitly mention alternatives or exclusion criteria, such as using search_models for filtered vendor queries.

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

lookup_partAInspect

Look up one hardware part number in the EOSL.ai database. Returns support status, End-of-Sale and End-of-Service-Life dates, support runway score, and the primary vendor bulletin URL backing the dates. Matching is exact, then punctuation-insensitive, then Fortinet short-SKU aliases (FG-60E -> FortiGate-60E). Returns found:false rather than guessing.

ParametersJSON Schema
NameRequiredDescriptionDefault
vendorNoOptional vendor hint, e.g. "Cisco". Restricts the match to that vendor.
part_numberYesVendor part number / SKU, e.g. "WS-C3850-48P-S" or "FG-100F".
Behavior4/5

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

Without annotations, the description discloses matching fallback logic (exact → punctuation-insensitive → Fortinet aliases) and the found:false behavior, giving agents a clear picture of what will happen.

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 sentences, front-loaded with the action, each sentence contributes a distinct piece of behavioral information without waste.

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?

The description covers return fields and matching behavior, but doesn't explicitly explain the vendor hint's filtering role or any rate limits/authentication; still, given no output schema, it's appropriately detailed.

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 input schema documents both parameters fully (100% coverage); the description adds meaning by explaining the fallback chain for part_number, which helps agents understand how the value will be interpreted beyond the schema.

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?

The description clearly states a specific verb ('look up') and resource ('one hardware part number in EOSL.ai database'), enumerates return fields (support status, dates, runway score, bulletin URL), and distinguishes from siblings via 'one' and exact-match behavior.

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?

Implies use for single exact part lookups; the contrast with sibling tools like bulk_check and search_models is implicit through 'one' and exact matching, but no explicit alternatives or exclusions are named.

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

search_modelsAInspect

Search tracked product families by vendor, product line, or series name (case-insensitive substring, e.g. "nexus 9300"). Returns up to 10 families with status, EOSL window, and page URL. Use get_family with a returned slug for the full record.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch text, 1-120 characters.
Behavior4/5

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

With no annotations provided, the description discloses key behavioral traits: case-insensitive substring matching, a 10-result limit, and the exact fields returned (status, EOSL window, page URL). It stops short of error handling or pagination details, but the core behaviors are transparent.

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?

Two sentences with no fluff. The first sentence explains what and how, the second describes the return payload and follow-up action. Every clause earns its place, and the example is embedded efficiently.

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 single-parameter tool with no output schema and no annotations, the description covers the search behavior, return fields, and next-step guidance thoroughly. It lacks mention of empty-result behavior, but the essential context for usage is complete.

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 schema already documents the query parameter's type and length (100% coverage). The description adds meaning by specifying what the query should target (vendor, product line, or series) and giving a concrete example, going beyond the schema's minimal 'Search text'.

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?

The description clearly states a specific verb (search), resource (tracked product families), and scope (by vendor, product line, or series name) with a concrete example. It distinguishes itself from siblings like get_family (full record retrieval) and list_vendors (vendor listing).

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

Usage Guidelines5/5

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

Explicitly directs the user to use get_family with a returned slug for the full record, providing a clear alternative. It also implies this tool is for exploratory search rather than bulk operations, and the example clarifies expected input format.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Source-backed hardware end-of-life (EOL/EOSL) lookups by part number for enterprise gear — support status, end-of-sale and end-of-support dates, with the vendor's own bulletin URL on every answer. Unknown parts return found:false, never a guess.
    Last updated
    5
    Apache 2.0
  • A
    license
    A
    quality
    A
    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.
    Last updated
    5
    MIT
  • F
    license
    -
    quality
    A
    maintenance
    Sourced product prices, dated price history, specs and independent-test coverage across 4,764 hardware products and 2,064 software vendors — every figure returned with its source URL and the date it was captured. Unknown values come back as null rather than a guess, so an agent can cite what it surfaces.
    Last updated

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources