Skip to main content
Glama

Supply-chain check of an npm, PyPI, Rust or Go package

packages_check
Read-only

Supply-chain check of a popular package (the 8,000 most used on each of npm, PyPI, crates.io and Go): latest version and release activity, maintainers or owners, install scripts, provenance, deprecation, retractions, and what changed since we began tracking it daily: releases by a new publisher account, owner changes, install scripts added, provenance dropped, source repository moved, yanks. Account names are never published. Signed. Price: $0.01 USDC per call via x402 (Base or Solana).

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": {
      "name": "<name>"
    },
    "name": "packages_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYes
ecosystemNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior5/5

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

With only readOnlyHint and openWorldHint in the annotations, the description adds high-value behavior: it discloses the cost and payment rail ('$0.01 USDC per call via x402 (Base or Solana)'), which an agent must know before calling, plus privacy ('Account names are never published') and integrity ('Signed') guarantees. These are precisely the traits annotations cannot express.

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 the verb and resource, then a dense enumeration of returned signals, then the material facts (privacy, signing, price). It is one long sentence-pile but nearly every clause carries distinct information; a small trim of overlapping lifecycle terms (deprecation/retractions/yanks) would tighten it.

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 read-only check with no output schema, the description adequately previews the returned fields, discloses payment and privacy, and lists supported ecosystems. Gaps remain around behavior for packages outside the tracked 8,000 set and the exact meaning of the name/ecosystem combination, but nothing blocks a correct invocation.

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 0%, so the description carries the burden. Listing 'npm, PyPI, crates.io and Go' maps meaning onto the ecosystem enum, but the required 'name' parameter is never explicitly defined as the package name (no format, version scoping, or scoping rules). Partial compensation for a two-parameter contract.

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 ('Supply-chain check of a popular package') and enumerates exactly what it reports — release activity, maintainers, install scripts, provenance, deprecation, and tracked changes. The scope is bounded clearly ('the 8,000 most used on each of npm, PyPI, crates.io and Go'). It does not explicitly differentiate itself from the sibling packages_watch, which is the obvious near-neighbor for a package tool.

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 use case (auditing a package's supply chain) is strongly implied by the enumerated outputs, but there is no explicit when-to-use versus when-not guidance, no mention of prerequisites, and no routing to or away from packages_watch. An agent can infer the intent but must guess at the boundary with its sibling.

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.