mcp

pypi package · declared by 136 of 2,343 sampled repositories · graph computed 2026-08-24

Counted from the runtime dependencies public repositories declare — not the resolved tree. A transitive dependency is a consequence; a declared one is a choice. Development dependencies are excluded because they repeat across every project in a language regardless of what is being built.

Declared with

ranked by association, not by count
Tools declared alongside this one, ranked by association strength
Declared withRepositoriesvs chance
opentelemetry-api9 of 2,3430.40
pathspec9 of 2,3430.40
watchdog11 of 2,3430.40
prompt-toolkit10 of 2,3430.37
python-docx9 of 2,3430.34
uvicorn41 of 2,3430.32
websockets15 of 2,3430.32
httpx40 of 2,3430.32
fastmcp11 of 2,3430.31
rich34 of 2,3430.31
python-dotenv40 of 2,3430.31
anthropic14 of 2,3430.30
jsonschema9 of 2,3430.30
google-genai9 of 2,3430.30
starlette10 of 2,3430.30
typer20 of 2,3430.29
jinja218 of 2,3430.29
boto38 of 2,3430.29
pyyaml38 of 2,3430.28
pydantic49 of 2,3430.27

Every pair above is counted from the same evidence: repo manifest.

Used instead

candidates · shares a neighbourhood and refuses to co-occur

No alternative measured. A pair qualifies only if it shares a neighbourhood and then fails to appear together against an expectation that it would — and almost everything that shares a neighbourhood does appear together. That is the test working, not a gap in the data: similarity alone would list this tool’s closest neighbours as alternatives, and most of them are things it is used with.