Skip to main content
Glama
rog0x

mcp-npm-tools

by rog0x

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a distinct aspect of npm packages: searching, detailed info, dependency audit, bundle size, and comparison. No two tools overlap in purpose, and the descriptions make their boundaries clear.

    Naming Consistency4/5

    All tool names share the npm_ prefix and use lowercase with underscores, but the pattern mixes verb-first names (npm_search, npm_compare_packages) with noun-phrase names (npm_package_info, npm_dependency_audit). This is generally predictable but not perfectly uniform.

    Tool Count5/5

    With exactly 5 tools, the server is well-scoped for an npm utility toolkit. Each tool covers a meaningful function without bloat, and the count feels appropriate for the domain.

    Completeness5/5

    The set covers the core needs for npm package exploration: search, detailed inspection, dependency auditing, bundle size estimation, and side-by-side comparison. No obvious missing operations within the apparent purpose.

  • Average 3.9/5 across 5 of 5 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It discloses the use of an external API and the return fields, but does not mention potential rate limits, error behavior, or network dependencies. This is useful 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?

    The description is two sentences, front-loaded with the action and resource, and includes output details. No unnecessary words, making it highly efficient.

    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 simple 2-parameter tool with no output schema, the description sufficiently covers purpose and return values. However, it omits error handling or API-specific caveats, so not fully complete.

    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 has 100% parameter coverage with clear descriptions, so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides.

    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 estimates bundle size using the Bundlephobia API and lists the returned metrics (minified size, gzipped size, dependency count). This distinguishes it from siblings like npm_search and npm_package_info.

    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 description implies a use case (estimating bundle size) but does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or mention when to prefer npm_package_info or npm_compare_packages.

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

  • Behavior3/5

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

    As no annotations are provided, the description carries the full burden. It discloses that it returns specific fields (name, description, version, weekly downloads, last publish date), but does not cover additional behavioral traits such as sorting, pagination, or rate limits. The behavior is basic but not deeply 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?

    The description is two sentences, front-loaded with the purpose, and every sentence provides relevant information about the function and return values. No wasted words.

    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 appropriately lists the return fields, making it clear what the agent can expect. It covers the essential context for a simple search tool, though it doesn't mention nuances like sort order or result relevance, which are not critical.

    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 100% coverage for both parameters (keyword and limit) with descriptive text. The description adds no extra meaning beyond what is in the schema, so the baseline 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 purpose: 'Search the npm registry for packages by keyword.' It uses a specific verb (search) and resource (npm registry), and also lists the return fields, which distinguishes it from sibling tools like npm_package_info or npm_dependency_audit.

    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 description implies usage for searching packages but does not explicitly mention when to use it versus alternatives. There is no guidance about exclusions or scenarios where other tools like npm_package_info would be more appropriate, so it lacks explicit usage differentiation.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It discloses the core behavior (comparing installed vs latest, checking for deprecated and vulnerable packages) but does not mention output format, side effects, or network usage. It is transparent enough for a basic understanding but lacks depth.

    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, concise sentence that is front-loaded with the key action and outcomes. No extraneous information.

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

    Completeness3/5

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

    The tool is simple with one parameter and no output schema. The description covers the main functionality but does not mention what the tool returns or the report structure. Given the lack of output schema, this is a notable omission, though the core purpose is clear.

    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 coverage is 100% since the single parameter has a clear description. The tool description adds context about how the parameter is used but does not provide syntax or format details beyond the schema. Baseline 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 analyzes a package.json to find outdated dependencies (with installed vs latest comparison), deprecated packages, and known security vulnerabilities. This specific verb+resource combination distinguishes it from sibling tools like npm_search or npm_package_info.

    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 when to use the tool: for auditing dependency health. It provides clear context but does not explicitly mention alternatives or exclusions. The context is strong enough for an agent to infer the appropriate use case.

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

  • 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 adequately describes the core action and data points, but does not mention whether it is read-only, any potential network latency, or what the output format looks like. It is not misleading, but lacks the extra context that annotations would provide.

    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, dense sentence that front-loads the primary verb and resource, and then adds specific metrics. Every phrase earns its place; there is no fluff or redundancy.

    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 simple single-parameter schema and no output schema, the description sufficiently lists all comparison dimensions and implies the need for 2+ packages. It does not explicitly mention output format or alternatives to sibling tools, but for a tool this straightforward, it is largely complete.

    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 schema already provides a complete description for the 'packages' parameter, including type and min/max constraints. The tool description merely reinforces the comparison context without adding new parameter-level information. With high schema coverage, the baseline of 3 applies.

    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 a specific verb ('Compare') and identifies the exact resource (npm packages), then enumerates the comparison dimensions (weekly downloads, bundle size, dependency count, last update, GitHub stars, license). This clearly distinguishes it from sibling tools like npm_search or npm_package_info, which focus on individual package lookup or search.

    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 clearly implies a side-by-side comparison use case for multiple packages, which sets it apart from single-package tools. However, it does not explicitly state when not to use it (e.g., for a single package) or name alternatives like npm_package_info. Clear context with no exclusions earns a 4.

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

  • Behavior3/5

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

    With no annotations provided, the description must convey behavioral traits. It implies a read-only operation via 'Get' and enumerates what data is returned, but it does not disclose potential error conditions, rate limits, or authentication requirements. This is adequate 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?

    The description is a single, well-structured sentence that lists the tool's capabilities without unnecessary words. It front-loads the core purpose and efficiently communicates the scope.

    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 simple single-parameter read tool with no output schema, the description is remarkably complete: it enumerates all major return categories, leaving little ambiguity about what the tool provides. The absence of an output schema is compensated by this detailed enumeration.

    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 fully describes the only parameter (package_name) with an exact format and examples, giving 100% coverage. The description adds no further semantic value beyond the schema, 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 uses a specific verb ('Get') and resource ('npm package') and lists numerous concrete outputs (versions, dependencies, maintainers, repository, license, size, npm score, weekly downloads). This clearly distinguishes it from sibling tools like npm_search or npm_compare_packages, which focus on other tasks.

    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 clearly implies this tool is for retrieving comprehensive details about a specific npm package, providing clear context for when to use it. However, it does not explicitly mention alternatives or state when not to use it, which would earn a 5.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

mcp-npm-tools MCP server

Copy to your README.md:

Score Badge

mcp-npm-tools MCP server

Copy to your README.md:

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/rog0x/mcp-npm-tools'

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