GitHub Trending MCP

Busca repositórios em alta do GitHub e os salva como arquivos Markdown. Suporta configuração de proxy.

Documentação

GitHub Trending MCP

Esta é uma ferramenta de obtenção de repositórios em alta do GitHub baseada no framework FastMCP, que pode obter de uma só vez as informações detalhadas de um número opcional de repositórios em alta do dia no GitHub, incluindo nome, link, descrição e conteúdo do README. Assim, você não precisa ler os READMEs um a um para resumir blogs, economizando Tokens de IA.

Características

  • Obtém a lista de repositórios em alta do GitHub do dia
  • Suporta personalização da quantidade de repositórios a obter
  • Suporta configuração de proxy (via variáveis de ambiente)
  • Suporta salvar resultados como arquivo Markdown
  • Trata automaticamente arquivos com o mesmo nome, evitando sobrescrita

Métodos de instalação

Instalação a partir do repositório

# 使用pip从GitHub仓库安装
pip install git+https://github.com/RusianHu/GitHubDailyTrendingFetcher-mcp.git

Instalação local

# 克隆仓库
git clone https://github.com/RusianHu/GitHubDailyTrendingFetcher-mcp.git
cd GitHubDailyTrendingFetcher-mcp

# 安装到本地环境
pip install -e .

Como usar

Executar como ferramenta de linha de comando

Após a instalação, você pode executar diretamente na linha de comando:

# 使用 Python 模块方式运行(推荐)
python -m github_trending_mcp

Integrar como serviço MCP no Roo Code

  1. Abra o arquivo de configuração MCP do Roo Code:

    %APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\mcp_settings.json
    
  2. Adicione a configuração do serviço GitHub Trending MCP:

    {
      "mcpServers": {
        // 其他服务配置...
        "github-trending-mcp": {
          "command": "python",
          "args": [
            "-m",
            "github_trending_mcp"
          ],
          "alwaysAllow": [
            "get_github_trending",
            "get_proxy_status"
          ],
          "disabled": false
        }
      }
    }
    
  3. Salve o arquivo de configuração e reinicie o Roo Code

Configuração de variáveis de ambiente

Você pode configurar o proxy através das seguintes variáveis de ambiente:

  • PROXY_HOST: Endereço do host do proxy (padrão "127.0.0.1")
  • PROXY_PORT: Porta do proxy (padrão "10808")
  • PROXY_PROTOCOL: Protocolo do proxy (padrão "socks5")

Exemplos de configuração de variáveis de ambiente

Windows PowerShell:

$env:PROXY_HOST = "127.0.0.1"
$env:PROXY_PORT = "10808"
$env:PROXY_PROTOCOL = "socks5"

Windows CMD:

set PROXY_HOST=127.0.0.1
set PROXY_PORT=10808
set PROXY_PROTOCOL=socks5

Linux/macOS:

export PROXY_HOST=127.0.0.1
export PROXY_PORT=10808
export PROXY_PROTOCOL=socks5

Usar variáveis de ambiente na configuração MCP do Roo Code

{
  "mcpServers": {
    "github-trending-mcp": {
      "command": "python",
      "args": [
        "-m",
        "github_trending_mcp"
      ],
      "env": {
        "PROXY_HOST": "127.0.0.1",
        "PROXY_PORT": "10808",
        "PROXY_PROTOCOL": "socks5"
      },
      "alwaysAllow": [
        "get_github_trending",
        "get_proxy_status"
      ],
      "disabled": false
    }
  }
}

Referência da API

Ferramenta: get_github_trending

Obtém os repositórios em alta do GitHub do dia, incluindo nome, link, descrição e conteúdo do README.

Parâmetros:

  • repo_limit: Quantidade de repositórios a obter, padrão 5
  • use_proxy: Se deve usar proxy, padrão False
  • save_to_file: Se deve salvar o resultado em arquivo, padrão True

Retorno:

  • Informações dos repositórios em alta em formato Markdown

Exemplo de chamada:

{
  "repo_limit": 10,
  "use_proxy": true,
  "save_to_file": true
}

Ferramenta: get_proxy_status

Obtém o status atual da configuração de proxy.

Parâmetros: Nenhum

Retorno:

  • Um dicionário contendo as informações de configuração do proxy

Exemplo de saída

Abaixo está um exemplo de saída:

## GitHub 今日热门仓库 Top 5

### 1. [username/repo-name](https://github.com/username/repo-name)
**About:** 仓库描述信息
**README:**
​```markdown
README 内容...
​```

### 2. [username2/repo-name2](https://github.com/username2/repo-name2)
**About:** 仓库描述信息
**README:**
​```markdown
README 内容...
​```

---
**总输出文本长度:** 12345

报告已保存到: C:\path\to\github_trending_2023-05-01.md

Nota: Os blocos de código na saída real serão exibidos corretamente; aqui foi feito um tratamento especial para mostrar blocos de código aninhados.

Salvamento de arquivos

O resultado será salvo como arquivo Markdown, com o formato de nome:

  • github_trending_YYYY-MM-DD.md

Se já existir um arquivo com o mesmo nome, um número sequencial será adicionado automaticamente:

  • github_trending_YYYY-MM-DD_1.md
  • github_trending_YYYY-MM-DD_2.md
  • ...

Observações

  1. Garanta uma conexão de rede adequada ou configure um proxy correto
  2. A estrutura da página do GitHub pode mudar; se ocorrerem erros de análise, pode ser necessário atualizar a lógica de parsing
  3. Respeite os termos de uso e a política de scraping do GitHub

Licença

MIT © RusianHu