Skip to main content
Glama

Package Version

package_version

Resolve a package version from a registry by name and ecosystem, optionally honoring a version constraint. Select release or prerelease versions for builds and dependency checks.

Instructions

Look up the latest or constraint-satisfying version of a package from a registry.

Input Schema

NameRequiredDescriptionDefault
nameYesPackage name (Packagist: vendor/package, Maven: groupId:artifactId, Go: module path, Swift: owner/repo on GitHub).
ecosystemYesRegistry ecosystem (pypi, npm, packagist, crates, nuget, maven, rubygems, go, pub, swift).
constraintNoOptional version constraint such as '>=4.2,<5'.
allow_prereleaseNoWhether pre-release versions may be selected.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. 'Look up' strongly implies a read-only operation, but the description says nothing about auth requirements, registry/network failure modes, rate limits, or what happens when no version satisfies the constraint. For a tool with zero annotation coverage, these gaps are significant.

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 front-loaded sentence with zero filler. Every clause ('latest or constraint-satisfying', 'from a registry') contributes meaning.

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?

An output schema exists, so return values need no explanation, and the schema fully documents the four parameters including per-ecosystem name syntax. The only remaining gap is behavioral context around failure and prerelease handling, which keeps it from a 5.

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 name, ecosystem, constraint, and allow_prerelease are all documented in the schema, including ecosystem-specific name formats. The description's 'constraint-satisfying' echoes the constraint parameter but adds no format or edge-case detail beyond what the schema already provides. 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?

States a specific verb and resource: 'look up ... version of a package from a registry.' This is unambiguous and clearly distinct from unrelated siblings like web_search, scrape, and list_providers. It stops short of naming any sibling or contrasting scope, so it lands at 4 rather than 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?

The phrase 'latest or constraint-satisfying' implies two usage modes, but the description never states when to use this tool versus web_search or research, nor any prerequisites. Usage is inferable from the name and description alone, which is the definition of a 3.

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