askill
count-mcp-tools

count-mcp-toolsSafety 95Repository

Count MCP tools in an SDK-based project and analyze implementation gaps against .discover.json. Use when the user asks about tool counts, progress, or collection coverage.

0 stars
1.2k downloads
Updated 2/20/2026

Package Files

Loading files...
SKILL.md

Count MCP Tools

This skill counts all MCP tools in the project and provides a detailed breakdown by collection. When a .discover.json manifest exists, it also performs gap analysis showing which collections have tools, integration tests, and eval tests.

When to Use

Use this skill when:

  • User asks "how many tools do we have?"
  • User wants statistics about tool collections
  • User needs to know tool distribution across collections
  • User asks about project progress or coverage
  • User wants to evaluate skill/agent completion status
  • User asks which collections still need tests or evals

Instructions

  1. Run the counting script from the consumer project root:
npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/count-mcp-tools/scripts/count-tools.ts

To also show all tool names in the console output:

SHOW_TOOLS=true npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/count-mcp-tools/scripts/count-tools.ts

To save results to a markdown file:

OUTPUT_FILE=docs/analysis/api-endpoints-analysis.md npx tsx ${CLAUDE_PLUGIN_ROOT}/skills/count-mcp-tools/scripts/count-tools.ts
  1. Present results showing:
    • Total tool count
    • Breakdown by collection (sorted alphabetically)
    • List of individual tool names per collection (when SHOW_TOOLS=true or in markdown output)
    • Gap analysis table (when .discover.json exists)
    • If OUTPUT_FILE is set, saves to markdown file with full tool listing

Environment Variables

VariableDescriptionDefault
TOOLS_DIRPath to the tools directory (relative to PROJECT_ROOT)src/umbraco-api/tools
OUTPUT_FILEOptional path to save markdown analysis report(none)
SHOW_TOOLSSet to true to show individual tool names in console outputfalse
PROJECT_ROOTRoot of the consumer project.
EVALS_DIRPath to eval tests directory (relative to PROJECT_ROOT)tests/evals
API_GENERATED_DIRPath to generated API client files (relative to PROJECT_ROOT)src/umbraco-api/api/generated

Gap Analysis

When a .discover.json file exists in the project root, the script automatically compares expected collections against actual implementation:

Gap Analysis (.discover.json):
================================================================================
Collection           | Tools | Endpoints | Tests | Evals | Status
--------------------------------------------------------------------------------
form                 |    12 |     12/20 |   yes |   yes | Complete
form-template        |     6 |      6/8  |   yes |    no | Missing evals
field-type           |     0 |      0/5  |    no |    no | Not started
folder               |     4 |      4/4  |   yes |   yes | Complete
================================================================================
2/4 collections complete | 22/37 endpoints covered (59%)

For each collection listed in .discover.json, it checks:

  • Tools: Does the collection directory exist with tool files? (count > 0)
  • Tests: Are there integration test files in {TOOLS_DIR}/{collection}/__tests__/*.test.ts?
  • Evals: Are there eval test files matching {EVALS_DIR}/*{collection}*.test.ts?

Supporting Files

The counting script is at scripts/count-tools.ts and counts TypeScript files that define actual MCP tools (containing ToolDefinition and withStandardDecorators), excluding index.ts, test files, and helper/utility files.

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

94/100Analyzed 2/23/2026

Well-structured skill with clear purpose, comprehensive instructions, environment variable configuration for reusability, and gap analysis functionality. Includes "When to Use" section, structured steps, tags, and is located in a dedicated skills folder. Technical content is high-density and accurate. The skill is configurable for different projects via environment variables, making it reusable beyond a single repo.

95
95
90
95
95

Metadata

Licenseunknown
Version-
Updated2/20/2026
Publisherumbraco

Tags

apitesting