Gitingest

Analisar repositórios Git e fornecer conteúdo otimizado para grandes modelos de linguagem.

Documentação

Servidor MCP Gitingest

Um servidor MCP para gitingest que fornece acesso à análise de repositórios Git por meio do Model Context Protocol (MCP). Este servidor utiliza a biblioteca gitingest para analisar repositórios Git e disponibilizar seu conteúdo em um formato otimizado para LLMs.

[!WARNING] O suporte a repositórios privados no gitingest ainda não está no PyPI em 25 de junho de 2025. Assim que for publicado, este MCP o suportará automaticamente.

Visão Geral

Este servidor MCP fornece uma única ferramenta unificada para acessar dados de repositórios Git. Ele gerencia automaticamente a ingestão do repositório conforme necessário, permitindo que os usuários consultem imediatamente o conteúdo do repositório sem uma etapa explícita de ingestão.

Ferramenta: gitingest

O servidor fornece uma única ferramenta chamada gitingest que pode ser usada para analisar repositórios Git. A ferramenta aceita os seguintes parâmetros:

  • repo_uri (obrigatório): URL ou caminho local para o repositório Git
  • resource_type: Tipo de dados a recuperar (summary, tree, content ou all). O padrão é summary.
  • max_file_size: Tamanho máximo do arquivo em bytes a incluir na análise. O padrão é 10MB.
  • include_patterns: Padrões separados por vírgula de arquivos a incluir na análise.
  • exclude_patterns: Padrões separados por vírgula de arquivos a excluir da análise.
  • branch: Ramo específico para analisar.
  • output: Caminho do arquivo para salvar a saída.
  • max_tokens: Trunca a resposta para um número especificado de tokens.

Acessando Repositórios Privados

Você pode ingerir repositórios privados do GitHub fornecendo um Token de Acesso Pessoal (PAT) do GitHub.

Recomendado: Defina uma Variável de Ambiente na sua Configuração do MCP

Esta é a melhor abordagem para configuração persistente. Adicione um bloco env à definição do seu servidor no arquivo de configuração do MCP. A biblioteca gitingest usará automaticamente a variável de ambiente GITHUB_TOKEN.

"mcpServers": {
  "trelis-gitingest-mcp": {
    "command": "uvx",
    "args": [
      "trelis-gitingest-mcp"
    ],
    "env": {
      "GITHUB_TOKEN": "github_pat_..."
    }
  }
}

Tipos de Recursos e Repositórios Grandes

Para repositórios grandes, é recomendado solicitar primeiro apenas o summary (que é o padrão). Após a ingestão, você pode acessar informações mais detalhadas por meio dos recursos:

  • Use o recurso tree para explorar a estrutura do repositório
  • Use o recurso content para acessar o conteúdo completo (se não for muito grande)

Se o repositório for muito grande, considere usar include_patterns e/ou exclude_patterns para limitar o escopo da ingestão.

Acessando Recursos Após uma Chamada de Ferramenta

Depois de chamar a ferramenta gitingest para um repositório, o servidor define recursos para esse repositório:

  • Resumo: Um resumo de alto nível do repositório
  • Árvore: A estrutura de arquivos/diretórios
  • Conteúdo: O conteúdo completo (sujeito a limites de tamanho)

Esses recursos podem ser acessados individualmente por meio da interface de recursos em qualquer cliente compatível com MCP. Isso é útil para navegar ou buscar aspectos específicos de um repositório após a ingestão.

Configuração do Servidor MCP

Para usar este servidor MCP a partir do PyPI, adicione o seguinte à sua configuração do MCP:

"mcpServers": {
  "trelis-gitingest-mcp": {
    "command": "uvx",
    "args": [
      "trelis-gitingest-mcp"
    ]
  }
}

Para executar diretamente do repositório GitHub:

"mcpServers": {
  "trelis-gitingest-mcp": {
    "command": "uvx",
    "args": [
      "git+https://github.com/TrelisResearch/trelis-gitingest-mcp"
    ]
  }
}

Desenvolvimento

Construção e Publicação

Para preparar o pacote para distribuição:

  1. Sincronize as dependências e atualize o lockfile:
    uv sync
    
  2. Construa as distribuições do pacote:
    uv build
    
  3. Publique no PyPI:
    uv publish
    

Depuração

A melhor maneira de depurar servidores MCP é com o MCP Inspector.

Você pode iniciar o Inspector com seu servidor local usando este comando:

npx @modelcontextprotocol/inspector uv --directory /Users/RonanMcGovern/TR/trelis-gitingest-mcp run trelis-gitingest-mcp

ou usando uvx para o servidor mcp:

npx @modelcontextprotocol/inspector uvx https://github.com/TrelisResearch/trelis-gitingest-mcp.git

ou usando o pacote PyPI:

npx @modelcontextprotocol/inspector uvx trelis-gitingest-mcp

Ao iniciar, o Inspector exibirá uma URL que você pode acessar no seu navegador para começar a depuração.