MCP Server Discovery & Ranker avatar

MCP Server Discovery & Ranker

Pricing

Pay per usage

Go to Apify Store
MCP Server Discovery & Ranker

MCP Server Discovery & Ranker

Search 7,000+ MCP (Model Context Protocol) servers on GitHub. Filter by language, category, freshness. Returns ranked list with composite relevance score (stars + recency + name match) so you find production-ready servers, not stale demos.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Roberto Espino

Roberto Espino

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

Find the right Model Context Protocol server in seconds, not hours.

The MCP ecosystem has 7,000+ public servers and is growing weekly. Bare GitHub search ranks them by stars — but a 5,000-star server last touched 14 months ago is probably dead, and a 200-star server pushed yesterday might be exactly what you need. This actor surfaces the right tradeoff.

What it does

Searches every MCP server tagged on GitHub (topic:model-context-protocol, with topic:mcp-server fallback), filters by language and freshness, and returns a ranked list with a composite relevance score. One API call, structured output, no scraping.

When to use it

  • You're building an AI agent and need a tool integration (database, GitHub, filesystem, browser, etc.) — search by topic keyword
  • You're auditing the MCP ecosystem for trends — leave query empty for top-overall
  • You want only TypeScript servers (or Python, Rust, Go, Java, C#) — set the language filter
  • You want only actively-maintained servers — drop freshDays to 30 or 60

Input

FieldTypeDefaultNotes
querystring""Topic keyword, e.g. "database", "github", "filesystem", "browser". Empty = top overall.
languageenum""typescript, javascript, python, rust, go, java, csharp. Empty = any.
freshDaysint90Only servers pushed-to in the last N days. 0 = no filter.
limitint25Max results, 1–100.
githubTokensecret""Optional GitHub PAT — raises rate limit from 60 to 5,000 req/hr.

Output

One dataset record per ranked server:

{
"name": "fastmcp",
"full_name": "PrefectHQ/fastmcp",
"html_url": "https://github.com/PrefectHQ/fastmcp",
"description": "A fast, Pythonic way to build MCP servers and clients.",
"language": "Python",
"stars": 24651,
"forks": 1234,
"open_issues": 56,
"pushed_at": "2026-04-18T...",
"topics": ["mcp", "model-context-protocol", "..."],
"license": "MIT",
"score": 0.7421
}

Scoring

score = 0.5 × log10(stars)/5 + 0.3 × freshness(0–1) + 0.2 × query_match

  • Stars (50%) — log-scaled so 5k→50k matters less than 50→500.
  • Freshness (30%) — linear decay over 365 days; this-week ≈ 1.0, dead-after-a-year = 0.
  • Query match (20%) — name + description substring against your query.

A 200-star server pushed 90 days ago beats a 10k-star server pushed 2 years ago. That's intentional.

Example runs

Find a database MCP in TypeScript, fresh:

{ "query": "database", "language": "typescript", "freshDays": 90, "limit": 10 }

Top 5 MCP servers across the whole ecosystem:

{ "limit": 5 }

All Rust MCP servers, no freshness filter:

{ "language": "rust", "freshDays": 0, "limit": 50 }

Limitations

  • Relies on GitHub topic tagging. Servers that don't tag mcp / model-context-protocol / mcp-server won't appear.
  • Lexical match only — no semantic search. Use query as a coarse keyword filter.
  • Anonymous use is rate-limited (60 req/hr per IP). For production, supply a githubToken.
  • Scoring is opinionated. If you'd weight freshness or stars differently, fork it.

License

Apache-2.0. Source: see Apify Console for the latest version.