Skip to main content
Glama
Armigerous

Dependency Freshness MCP Server

by Armigerous

Dependency Freshness Checker — is your npm or PyPI dependency outdated? Latest version, deprecation & breaking-change MCP for AI agents

Dependency Freshness Checker tells any AI coding agent whether an npm or PyPI package is outdated (out of date) — and gives the cited facts to prove it: the latest version, release dates, deprecation status, how many versions behind you are, and a dated "what changed since your version" breaking-change diff. It is MCP-native, reads only public registries and GitHub releases (no scraping, no ToS risk), and is priced Pay-Per-Event for pay-as-you-go agent use.

What does Dependency Freshness Checker do?

Give it any npm or PyPI package — optionally with the version your agent is assuming — and the Dependency Freshness Checker returns, citations-first:

  • the latest published version and its release date;

  • whether the package (or your assumed version) is deprecated;

  • how many versions behind you are; and

  • a dated, cited changeSummary[] of what changed between your version and latest.

Every field carries a source URL and access date, so an agent can trust — and quote — the result.

Related MCP server: pkg-booper

Why check npm & PyPI dependency freshness?

LLM coding agents are time-blind: their training is frozen, so they emit 70–90% deprecated package code. Coding agents are the largest agent population, and they all share this blind spot. The Dependency Freshness Checker fixes the frozen-training-cutoff problem at call time. It lives in the proven-demand "freshness for agents" lane but stays narrow and legally clean — it reads only public npm, PyPI, and GitHub releases — so it does not fight first-party RAG browsers or funded incumbents.

How to use the Dependency Freshness Checker

Pass a small list of packages. Defaults are kept low so a first run is cheap, fast, and succeeds:

{
  "packages": [
    { "ecosystem": "npm", "name": "zod", "currentVersion": "3.22.0" },
    { "ecosystem": "pypi", "name": "fastapi" }
  ]
}

currentVersion is optional — omit it to just ask "what's latest?". See .actor/input_schema.json for the full schema.

Output — dated, cited freshness results

Each result includes isOutdated, versionsBehind, latest + latestPublishedAt, a dated changeSummary[], and field-level citations[]. The same shape is returned by a batch run and by the MCP tool, so agents and dashboards consume one format.

Using Dependency Freshness Checker as an MCP tool for AI agents

This Actor exposes one MCP tool, check_dependency_freshness(packages). Three ways to reach it (mechanics cited in docs/research/50-mcp.md):

  • A — Hosted, no setup. Every public Apify Actor is callable through Apify's hosted MCP server at https://mcp.apify.com — no extra wiring.

  • B — The Actor as its own MCP server (Standby). The deployed Actor serves a Streamable-HTTP MCP endpoint at /mcp on its own stable URL:

    {
      "mcpServers": {
        "dependency-freshness": {
          "url": "https://<user>--dependency-freshness-mcp.apify.actor/mcp",
          "headers": { "Authorization": "Bearer <APIFY_TOKEN>" }
        }
      }
    }
  • C — Local stdio (dev / MCP Inspector). Build, then point any MCP client at the compiled entrypoint:

    {
      "mcpServers": {
        "dependency-freshness": {
          "command": "node",
          "args": ["/abs/path/dependency-freshness-mcp/dist/mcp/stdio.js"],
          "env": { "GITHUB_TOKEN": "ghp_… (optional, raises GitHub rate limit)" }
        }
      }
    }

    Inspect locally with npx @modelcontextprotocol/inspector node dist/mcp/stdio.js.

Pricing

The Dependency Freshness Checker uses Pay-Per-Event pricing, built for pay-as-you-go agent use: a small flat fee per run start plus $0.005 per package checked ($5 / 1,000) — inside Apify's recommended $1–10 / 1,000-results band. You only pay for packages actually checked.

FAQ

Does it scrape websites? No. It reads only public registry APIs and GitHub releases — no scraping, no terms-of-service risk.

Which ecosystems are supported? npm and PyPI today.

Do I need a GitHub token? No — it is optional and only raises the GitHub rate limit for heavier batches.

Can an agent call it directly? Yes — that is the point. Use the check_dependency_freshness MCP tool (option A or B above).

Other Actors

More agent-native data Actors are on the way on the Apify Store. Follow the author profile to see new freshness-for-agents tools as they ship.

Available Tools

1 tool
check_dependency_freshnessCheck dependency freshnessA

For each npm or PyPI package, determine whether it is outdated (out of date) and return its current version, release dates, deprecation status, how many stable versions you are behind, and a DATED, CITED "what changed since your version" breaking-change summary. Built for time-blind AI agents whose training cutoff makes them emit deprecated dependency code. Every answer carries source URLs + access dates.

ParametersJSON Schema
NameRequiredDescriptionDefault
packagesYesPackages to check. Each: { ecosystem: "npm"|"pypi", name, currentVersion? }. currentVersion is the version you are assuming/about to use — supply it to get the "behind by N / changed since" diff.

Output Schema

ParametersJSON Schema
NameRequiredDescription
errorsYes
resultsYes

TDQS

A4.6/5.0
Behavior4/5

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

No annotations provided, but description discloses that it returns source URLs and access dates, and that it is a live check. Does not elaborate on potential latency or rate limits, but overall adequate.

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 wasted words. Front-loaded with core purpose followed by context and guarantees.

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's complexity and presence of an output schema, the description fully covers what it does, why it's needed, and what it returns.

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

Parameters5/5

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

Schema coverage is 100%, and description adds value by explaining the purpose of 'currentVersion' (to get diff) and giving an example of the package object.

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?

Description clearly states verb 'check', resource 'dependency freshness', and specific outputs like current version, deprecation status, breaking-change summary. It is distinct and comprehensive.

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?

Explicitly states it is built for time-blind AI agents to avoid deprecated code, providing clear context. No exclusions or alternatives needed due to lack of siblings.

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. Dates show when Glama detected each change.

  1. 1 tool updatev0.0.1
    • First observedcheck_dependency_freshness

TDQS

A4.5/5.0
Disambiguation5/5

Only one tool exists, so there is no ambiguity. The single tool clearly targets checking dependency freshness for npm and PyPI packages.

Naming Consistency5/5

The single tool name 'check_dependency_freshness' follows a consistent verb_noun pattern. With one tool, naming is inherently consistent.

Tool Count3/5

A single tool for a narrow domain is borderline acceptable. While it covers both npm and PyPI in one tool, it feels thin compared to typical 3-15 tool servers.

Completeness4/5

The tool provides comprehensive information for checking freshness: current version, release dates, deprecation, versions behind, and breaking changes. No obvious gaps for the stated purpose, though a bulk check or update tool is missing.

Maintenance

ActivityNo data
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Armigerous/dependency-freshness-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server