MCP server for GitHub Trending repositories with keyword filtering
Project description
GitHub Trending MCP Server
A Model Context Protocol (MCP) server that fetches GitHub trending repositories and filters them by keywords, programming language, and time period.
Key Features
- Fetch trending repositories from GitHub
- Filter by keywords (default: "mcp", "model context protocol", "skill")
- Filter by programming language (Python, TypeScript, Rust, etc.)
- Filter by time period (daily, weekly, monthly)
- Rich response format with keyword match details and locations
- Runs as a standard MCP server over stdio
Installation
From PyPI
pip install yw-github-trending-mcp
From Source
git clone https://github.com/snyangwei2/yw-github-trending-mcp.git
cd yw-github-trending-mcp
pip install -e .
Configuration
Add the server to your MCP client configuration. Below are examples for Claude Desktop.
Claude Desktop (macOS)
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"github-trending": {
"command": "python",
"args": ["-m", "github_trending_mcp"]
}
}
}
Claude Desktop (Windows)
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"github-trending": {
"command": "cmd",
"args": ["/c", "python", "-m", "github_trending_mcp"]
}
}
}
Tip: If you installed the package in a virtual environment, use the full path to the Python binary instead of just
"python".
Usage
Once configured, you can ask your MCP client natural language questions like:
- "Show me trending MCP repositories on GitHub"
- "What are the trending Python repositories this week?"
- "Find trending repos related to model context protocol"
- "Show me weekly trending Rust projects"
- "Are there any trending repositories about skills or MCP?"
The server will scrape GitHub Trending, filter results by your criteria, and return a formatted markdown response.
Tool: get_trending_repos
The server exposes a single tool with the following parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
keywords |
string[] |
No | Keywords to match in repo names and descriptions. Default: ["mcp", "model context protocol", "skill"] |
language |
string |
No | Programming language filter (e.g., "python", "typescript", "rust") |
since |
string |
No | Time period: "daily" (default), "weekly", or "monthly" |
spoken_language |
string |
No | Human language filter (e.g., "en", "zh", "ja") |
Example Response
# GitHub Trending Repositories
Found 3 repositories matching keywords: mcp, model context protocol, skill
## 1. anthropics/mcp-server
**URL:** https://github.com/anthropics/mcp-server
**Description:** Reference implementation of the Model Context Protocol
**Language:** TypeScript
**Stars:** 12,345 (+230 today)
**Forks:** 1,024
**Matched Keywords:** mcp, model context protocol
- 'mcp' found in: name, description
- 'model context protocol' found in: description
Development
Setup
git clone https://github.com/snyangwei2/yw-github-trending-mcp.git
cd yw-github-trending-mcp
pip install -e ".[dev]"
Run Tests
pytest
Format Code
black src/ tests/
Type Check
mypy src/
Lint
ruff check src/ tests/
Publishing
PyPI
pip install build twine
python -m build
twine upload dist/*
License
MIT License. See LICENSE for details.
Contributing
Contributions are welcome! To get started:
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Make your changes and add tests
- Run the test suite (
pytest) - Run formatting and linting (
black src/ tests/ && ruff check src/ tests/) - Submit a pull request
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yw_github_trending_mcp-1.0.1.tar.gz.
File metadata
- Download URL: yw_github_trending_mcp-1.0.1.tar.gz
- Upload date:
- Size: 23.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8edb2ec53e386b62a01f2cf4bad376795b5c58dcc78671bfbe0ce368f9c3bb56
|
|
| MD5 |
73b49ffc6f1459916d51bf606ebf5f2a
|
|
| BLAKE2b-256 |
2c82984600ab46e04b4e579d780ea986ca6ce15b07c4cbd1a20724bf3880567f
|
File details
Details for the file yw_github_trending_mcp-1.0.1-py3-none-any.whl.
File metadata
- Download URL: yw_github_trending_mcp-1.0.1-py3-none-any.whl
- Upload date:
- Size: 13.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4d04059654a66bf8468ac53217f57a5192dbd71f50be6c57a7c9b5d68b3a5ba
|
|
| MD5 |
3875d3d5e0b75ef844553cb51d28c7f9
|
|
| BLAKE2b-256 |
e71df38070b7abe851f49ffb676dc83fd068b615d8fd0ce6d208d7dbe73ffc37
|