Skip to main content

Analyze GitHub repository dependents by star count. CLI + MCP server.

Project description

dep-rank

Rank GitHub dependents by stars.

PyPI License: MIT Python 3.11+

dep-rank finds the most popular repositories that depend on a given GitHub project. It scrapes GitHub's dependents page, enriches results via the GraphQL API, and works as both a CLI tool and an MCP server for LLM assistants.

Quick Start

pip install dep-rank
dep-rank deps https://github.com/django/django

CLI Reference

dep-rank deps — List top dependents

dep-rank deps https://github.com/django/django
dep-rank deps https://github.com/django/django --rows 20 --min-stars 100
dep-rank deps https://github.com/django/django --descriptions --format json
dep-rank deps https://github.com/django/django --packages
Option Default Description
--rows 10 Number of results
--min-stars 5 Minimum star count filter
--format table Output format: table or json
--descriptions off Fetch descriptions via GitHub API (requires token)
--packages off Search packages instead of repositories
--token DEP_RANK_TOKEN GitHub token

dep-rank search — Search code in dependents

dep-rank search https://github.com/django/django "from django.db import"
dep-rank search https://github.com/django/django "middleware" --max-repos 20
Option Default Description
--max-repos 10 Maximum repos to search
--min-stars 50 Only search repos with this many stars
--token DEP_RANK_TOKEN GitHub token (required)

dep-rank mcp — Start MCP server

dep-rank mcp                                # STDIO (default)
dep-rank mcp --transport http --port 8000   # HTTP

dep-rank cache — Manage cache

dep-rank cache stats    # Show cache size
dep-rank cache clear    # Clear all cached data

MCP Server

dep-rank includes an MCP server for use with Claude Desktop, Claude Code, Cursor, and other MCP-compatible tools.

Tools

Tool Description Requires Token
get_top_dependents List top dependents by stars No
get_dependent_details Enrich with descriptions via GraphQL Yes
search_dependent_code Search code across dependents Yes

Prompts

Prompt Description
analyze_ecosystem Guided workflow for full ecosystem analysis
find_usage_patterns Find how dependents use a specific API

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "dep-rank": {
      "command": "uvx",
      "args": ["dep-rank-mcp"],
      "env": {
        "DEP_RANK_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

Claude Code

Add to .mcp.json in your project:

{
  "mcpServers": {
    "dep-rank": {
      "command": "uvx",
      "args": ["dep-rank-mcp"],
      "env": {
        "DEP_RANK_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

HTTP Deployment

DEP_RANK_TOKEN=ghp_xxx dep-rank mcp --transport http --port 8000

Authentication

Set the DEP_RANK_TOKEN environment variable with a GitHub personal access token:

export DEP_RANK_TOKEN=ghp_your_token_here

What works without a token:

  • dep-rank deps — core scraping and star ranking

What requires a token:

  • --descriptions flag — fetches repo descriptions via GitHub GraphQL API
  • dep-rank search — code search across dependents
  • MCP tools: get_dependent_details, search_dependent_code

Create a token at github.com/settings/tokens with public_repo scope.

How It Works

dep-rank uses a three-stage pipeline:

  1. Scrape — fetches GitHub's /network/dependents HTML pages to discover all dependents and their approximate star counts
  2. Enrich (optional) — one GraphQL batch query fetches accurate star counts and descriptions for the top N results (replaces 100 individual REST API calls)
  3. Present — returns structured results as a Rich table (CLI) or Pydantic model (MCP)

Responses are cached in a local SQLite database (~/.cache/dep-rank/) with ETag support for conditional requests.

Development

# Prerequisites: Python 3.11+, uv
uv sync
uv run pytest
uv run ruff check .
uv run ruff format --check .
uv run mypy dep_rank/

Acknowledgments

dep-rank is a full rewrite of ghtopdep by Andriy Orehov. The original project is licensed under MIT.

License

MIT — see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dep_rank-0.1.0.tar.gz (197.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dep_rank-0.1.0-py3-none-any.whl (22.3 kB view details)

Uploaded Python 3

File details

Details for the file dep_rank-0.1.0.tar.gz.

File metadata

  • Download URL: dep_rank-0.1.0.tar.gz
  • Upload date:
  • Size: 197.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for dep_rank-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8227ee22996cc65c95bd3730072b935a5b8f2a5704687b7155a6cbc83f011117
MD5 ff0be9a6dba0045079e4ab827cd3d3af
BLAKE2b-256 6d483a82805b16db1680b6676ab52850c14d70e6893130403a1dac52e57f90ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for dep_rank-0.1.0.tar.gz:

Publisher: release.yml on j7an/dep-rank

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dep_rank-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dep_rank-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for dep_rank-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 afd95120c6d4f19320d87461be2728ca1e7ae6e7f37001618f008cae1e8732ab
MD5 320c396ecd2d7c9b56b9396eb814f466
BLAKE2b-256 df2ce67021096344a172db87fe5dff6f7ca29713a8598074210ff3cfff4e785f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dep_rank-0.1.0-py3-none-any.whl:

Publisher: release.yml on j7an/dep-rank

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page