Skip to main content
Glama

Scan Dependency

scan_dependency
Read-onlyIdempotent

Composite "should I add this npm package to my project" check in ONE call — fans out across deps.dev (license + advisories + version history) and bundlephobia (gzipped/minified bundle size, dependency count, ESM/tree-shake support). Use whenever an agent asks "is X safe / popular / small" or "what does adding lodash cost me". Returns a summary block (is_latest, license, published_at, advisory_count, bundle_kb_min, bundle_kb_gz, dependency_count, has_esm, tree_shakeable), per-advisory detail, links, and a list of recent alternative versions. NPM ecosystem only in v1; PyPI / Maven / Cargo / Go fall under deps.dev:version directly. Partial failures degrade gracefully — bundlephobia's first measurement on a new version can take 5-30s; sources_failed will list it if it times out, the rest still returns.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
packageYesnpm package name. Scoped packages (e.g. "@types/node") are accepted.
versionNoSpecific version to check (e.g., "18.3.1"). Defaults to the latest published version when omitted.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already provide readOnly, idempotent, openWorld hints. The description adds significant context: it is a composite call fanning out to two services, gracefully degrades with partial failures, and lists specific fields returned.

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?

The description is front-loaded with the core purpose and well-structured. However, it is somewhat verbose with multiple clauses; a more concise version could improve scanability.

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?

No output schema exists, so the description must fully describe return values. It does so comprehensively, listing summary fields, per-advisory details, links, and alternative versions, along with error handling behavior.

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% with clear descriptions for both 'package' and 'version' parameters. The description adds no additional semantic information beyond what the schema already provides, so 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: a composite check for adding an npm package, covering license, advisories, bundle size, etc. It distinguishes from sibling tools by specifying that only NPM is supported in v1 and directs other ecosystems to different tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: when an agent asks about safety, popularity, size, or cost of an npm package. Also provides limitations (NPM only) and behavior on partial failures, including timeout expectations.

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.

TDQS

A3.7/5.0
Disambiguation2/5

The four card tools are distinct, but the majority of the server is a Pipeworx/prediction-market platform with heavily overlapping entry points: ask_pipeworx, ask_pipeworx_beta, ask_pipeworx_grounded, deep_research, and discover_tools all serve similar query/discovery purposes, and ask_pipeworx_beta is explicitly an identical twin of ask_pipeworx. The six Polymarket tools and the ai_visibility/scan_competitor pair also have fuzzy boundaries that would make tool selection error-prone.

Naming Consistency2/5

All names are snake_case, but the pattern is highly inconsistent: some are verb_noun (get_card, search_cards, resolve_entity), some are bare verbs (remember, forget), some are noun-first (polymarket_edges, entity_profile, bet_research), and some are adjective_noun (recent_alerts, recent_changes). The ask_pipeworx variants share a name but differ only by suffix, which is not a clear action-oriented pattern.

Tool Count2/5

35 tools is squarely in the 'too many' territory, and the bloat is worse because the server is named Tcgdex while only 4 of 35 tools actually relate to trading cards. The remaining 31 tools form a sprawling multi-domain platform that mixes data queries, prediction markets, memory, subscriptions, AI visibility checks, and one-off utilities like generate_llms_txt and scan_dependency.

Completeness4/5

For the TCGdex card surface, the read-only workflows are covered well: search_cards leads to get_card, and list_sets leads to get_set, with no obvious dead ends. For the broader Pipeworx functionality, the set includes discovery, query, grounding, entity resolution, memory, subscriptions, and feedback, so the main workflows are supported—though the overall scope is sprawling rather than focused.