go-review-mcp
Revisão de código seguindo os guias de estilo Go diretamente de fontes oficiais e recomendadas.
Documentação
Go Review MCP
Um servidor Model Context Protocol (MCP) que fornece acesso em tempo real aos guias de estilo oficiais do Go para revisão inteligente de código.
Visão Geral
O Go Review MCP busca os guias de estilo mais recentes diretamente de fontes oficiais e recomendadas:
Oficial
Recomendado
Recursos
Ferramentas
- search_live_guide - Pesquise em todo o conteúdo dos guias de estilo do Go obtidos ao vivo por padrões específicos (busca automática dos guias no primeiro uso)
- get_guide_topic - Extraia conteúdo específico de tópicos de todos os guias ao vivo (nomenclatura, erros, concorrência, testes, interfaces, formatação, comentários, imports, contexto)
- get_review_guidelines - Obtenha diretrizes de revisão selecionadas para tópicos específicos
Prompts
- review_code - Revisão abrangente de código Go
- check_naming - Revise convenções de nomenclatura
- check_error_handling - Revise padrões de tratamento de erros
- check_concurrency - Revise padrões de concorrência
- check_testing - Revise a qualidade do código de teste
- check_interfaces - Revise o design de interfaces
Instalação
Usando go install
go install github.com/BrunoKrugel/go-review-mcp@latest
A partir do código-fonte
git clone https://github.com/BrunoKrugel/go-review-mcp.git
cd go-review-mcp
make build
Configuração
Claude Desktop
Adicione ao seu claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"go-review": {
"command": "go-review-mcp",
"args": []
}
}
}
Se instalado a partir do código-fonte, use o caminho completo para o binário:
{
"mcpServers": {
"go-review": {
"command": "/path/to/go-review-mcp/bin/go-review-mcp",
"args": []
}
}
}
Extensão Cursor ou VS Code
{
"mcpServers": {
"go-review": {
"command": "go-review-mcp",
"args": []
}
}
}
Crush
{
"go-review-mcp": {
"type": "stdio",
"command": "go-review-mcp",
"timeout": 120,
"disabled": false
},
}
Modo HTTP (para testes com o MCP Inspector)
# Start server in HTTP mode
go-review-mcp --transport http --port 8080
# Or with environment variable
TRANSPORT=http PORT=8080 go-review-mcp
Em seguida, use o MCP Inspector para testar:
npx @modelcontextprotocol/inspector http://localhost:8080/mcp
Uso
Fluxo de Trabalho Básico
-
Revise seu código:
Use the review_code prompt with your Go code -
Obtenha orientação específica:
Use get_guide_topic for focused advice on topics like "naming" or "errors"Os guias são obtidos automaticamente no primeiro uso e armazenados em cache por 24 horas.
-
Pesquise por padrões:
Use search_live_guide to find specific content across all guides
Exemplos de Interações
Revisão abrangente de código:
Please review this Go code:
[paste your code]
Verifique tópicos específicos:
Check the naming conventions in this code
Pesquise por diretrizes:
Search the style guides for information about error wrapping
Obtenha conteúdo específico de tópicos:
Show me all guidelines about concurrency from the style guides
Tópicos Disponíveis
Os seguintes tópicos são indexados automaticamente em todos os guias:
naming- Convenções de nomenclatura e regras de identificadoreserrors- Tratamento de erros e padrões de encapsulamento de errosconcurrency- Goroutines, canais, mutexes, uso de contextotesting- Estrutura de testes, testes orientados por tabela, melhores práticasinterfaces- Design de interfaces e padrões de usoformatting- Formatação e estilo de códigocomments- Documentação e convenções de comentáriosimports- Organização e agrupamento de importscontext- Uso e padrões de Context.Context
Opções de Configuração
O servidor suporta configuração por meio de variáveis de ambiente:
TRANSPORT- Modo de transporte:stdio(padrão) ouhttpPORT- Porta HTTP ao usar transporte http (padrão: 8080)CACHE_TTL- Duração do cache para guias obtidos (padrão: 24h)
Exemplo:
CACHE_TTL=12h go-review-mcp
Desenvolvimento
Compilação
make build
Executando testes
make test
Executando localmente
make run
Como Funciona
- Busca Preguiçosa: Os guias de estilo são obtidos automaticamente no primeiro uso da ferramenta (nenhuma inicialização manual necessária)
- Análise de Conteúdo: Os guias são analisados em seções estruturadas com indexação automática de tópicos
- Busca Unificada: Todas as consultas de busca e tópicos varrem automaticamente todos os guias obtidos
- Integração MCP: Ferramentas e prompts simples são expostos por meio do Model Context Protocol
Principais Recursos
- Busca Automática sob Demanda: Os guias são obtidos de forma preguiçosa no primeiro uso — nenhuma etapa manual de busca é necessária
- Busca Concorrente: Todos os guias são obtidos em paralelo para inicialização rápida
- Cache Inteligente: Cache de 24 horas reduz solicitações de rede e melhora o desempenho
- Indexação de Tópicos: Categorização automática de conteúdo por tópicos (nomenclatura, erros, concorrência, etc.)
- Sem Configuração: Funciona imediatamente - não é necessário escolher quais guias usar
Arquitetura
┌─────────────────┐
│ AI Assistant │
│ (Claude, etc.) │
└────────┬────────┘
│ MCP Protocol (stdio/http)
┌────────▼──────────────────────┐
│ Go Review MCP Server │
│ - 3 Tools │
│ - 6 Prompts │
│ - Concurrent HTTP Fetcher │
│ - 24h Cache (in-memory) │
│ - Content Parser │
│ - Topic Indexer │
└────────┬──────────────────────┘
│ HTTPS (parallel)
┌────────▼──────────────────────┐
│ Official Style Guide Sources │
│ ├─ Google Go Guide │
│ ├─ Google Go Decisions │
│ ├─ Google Go Best Practices │
│ └─ Uber Go Style Guide │
└───────────────────────────────┘
Fluxo de Dados
- Busca sob Demanda: A primeira chamada de ferramenta aciona a busca concorrente de todos os 4 guias
- Análise: Cada guia é analisado em seções com metadados
- Indexação: As seções são categorizadas automaticamente por tópicos
- Consulta: Ferramentas de busca e tópicos varrem todo o conteúdo indexado
- Cache: Os resultados são armazenados em cache por 24 horas para melhorar o desempenho
Requisitos
- Go 1.21 ou posterior
- Conexão com a internet para buscar guias ao vivo (as regras incorporadas funcionam offline)
Licença
Licença MIT - consulte o arquivo LICENSE para obter detalhes
Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.
Agradecimentos
Esta ferramenta agrega conteúdo de:
- Google Go Style Guide - CC-BY-3.0
- Uber Go Style Guide - MIT