npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

mcp-reporter

v1.0.1

Published

mcp-reporter is a streamlined utility that generates comprehensive capability reports for Model Context Protocol servers, empowering developers to easily understand available functionality across their MCP servers ecosystem for both documentation and inte

Readme

MCP Reporter

TypeScript Model Context Protocol Version License Status GitHub

MCP Reporter is a utility for generating comprehensive reports about Model Context Protocol (MCP) server capabilities, helping developers understand what functionality is available across their MCP server ecosystem. Can also be used programmatically to generate reports for documentation or for feeding into other tools.

Table of Contents

Features

  • Server Discovery: Automatically connects to all enabled MCP servers
  • Capability Analysis: Extracts tools, resources, and resource templates
  • Markdown Report Generation: Produces well-organized documentation
  • Progress Monitoring: Provides real-time feedback during execution

Image Preview of Generated Report (Partial)

Image Preview

Installation

Prerequisites

  • Node.js 16.x or higher
  • npm or yarn

Install from Source

# Clone the repository
git clone https://github.com/cyanheads/mcp-reporter.git
cd mcp-reporter

# Install dependencies
npm install

# Build the project
npm run build

# Create a symlink (optional)
npm link

Configuration

MCP Reporter requires a configuration file that defines the MCP servers you want to analyze:

# Create a configuration file from the example
cp mcp-servers.json.example mcp-servers.json

Example configuration:

{
  "mcpServers": {
    "atlas-mcp-server": {
      "command": "/path/to/node",
      "args": ["/path/to/atlas-mcp-server/dist/index.js"],
      "env": {
        "NEO4J_URI": "bolt://localhost:7687",
        "NEO4J_USER": "neo4j",
        "NEO4J_PASSWORD": "your-password-here"
      }
    },
    "another-server": {
      "command": "/path/to/node",
      "args": ["/path/to/another-server.js"],
      "env": {}
    }
  }
}

Usage

Command Line Interface

mcp-reporter [options]

| Option | Description | Default | | --------------------- | -------------------------- | ----------------------------- | | -c, --config <path> | Path to MCP servers config | mcp-servers.json | | -o, --output <path> | Output path for report | output/mcp_server_report.md | | -s, --schemas | Include input schemas | true | | -m, --metadata | Include server metadata | true | | -e, --examples | Include examples | true |

Examples

You can run mcp-reporter either via 'npm run start' or by using the symlink (optional) created during installation:

# Generate a report with default settings
npm run start

# Generate a report using symlink
mcp-reporter

Programmatic Usage

import { McpReporter } from "mcp-reporter";

async function generateReport() {
  const reporter = new McpReporter("./my-config.json", {
    outputPath: "./reports/mcp-report.md",
    includeInputSchemas: true,
    includeServerMetadata: true,
  });

  await reporter.run();
}

generateReport().catch(console.error);

Report Structure

The generated markdown report includes:

  1. Summary of all MCP servers analyzed
  2. For each server:
    • Server metadata
    • Available tools with descriptions and input schemas
    • Available resources with URIs and descriptions
    • Available resource templates with URI templates

Project Structure

mcp-reporter/
├── src/               # Source code
│   ├── cli.ts         # Command line interface
│   ├── index.ts       # Main library code
│   ├── types/         # TypeScript type definitions
│   └── utils/         # Utility functions
├── scripts/           # Build and maintenance scripts
├── docs/              # Documentation
├── output/            # Default output directory for reports
└── mcp-servers.json   # Server configuration (create from example)

Development

# Clean build artifacts
npm run clean

# Rebuild the project
npm run rebuild

# Generate project structure visualization
npm run tree

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

Author

Casey Hand (@cyanheads)