Skip to main content
Glama

dependency upgrade plan

dependency_upgrade_plan
Read-onlyIdempotent

Dependency upgrade plan for up to 5 npm or PyPI packages: per package the breaking changes to the target version, major bumps, engine/Python and peer dependency changes, migration guides and a risk score, ordered by risk, plus peer requirements between the listed packages. Paid: $0.02 USDC per call via x402.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "packages": "<packages>"
    },
    "name": "dependency_upgrade_plan"
  }
}

Input Schema

NameRequiredDescriptionDefault
packagesYesComma-separated name@from[:to], up to 5, e.g. 'react@18.3.1:19,react-dom@18.3.1:19,next@14.2.0:15'
ecosystemNoRegistry of all listed packages (default npm)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint, idempotentHint, openWorldHint), and the description adds genuinely new operational context: a $0.02 USDC per-call charge via x402, a hard 5-package ceiling, and that results are ordered by risk. The payment/auth requirement in particular is information an agent cannot get from annotations or schema.

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 leads with the purpose and the package limit, then lists outputs, then closes with the cost — a sensible front-loaded order with no filler. The middle clause is a long comma run that takes effort to parse, which keeps it short of a 5.

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?

There is no output schema, so the description correctly carries the burden of describing return contents and does so thoroughly, including ordering and cross-package peer requirements. With full schema coverage on inputs, the only real gap is the absence of routing guidance against the single-package siblings.

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%, so the name@from[:to] format, the comma-separated convention, the 5-item limit and the ecosystem enum are all already documented. The description only echoes the package cap and hints that 'engine/Python' varies with ecosystem — it adds little beyond the schema, so the baseline 3 applies.

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 names a specific artifact (a dependency upgrade plan) and enumerates exactly what it contains per package — breaking changes, major bumps, engine/Python and peer dependency changes, migration guides, risk score — plus cross-package peer requirements. That clearly separates it from the single-package siblings like npm_breaking_changes or pypi_changelog, though the differentiation is implicit rather than stated.

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?

Usage is only implied: the 'up to 5 packages' cap and the multi-package framing suggest this is for batch upgrade planning rather than a single lookup, but the description never says when to prefer this over npm_breaking_changes or npm_versions. No exclusions or prerequisites beyond the payment note are given.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources