Recent Go MCP Server

Fornece atualizações da linguagem Go e melhores práticas em um formato Markdown estruturado para agentes de codificação LLM.

Documentação

Recent Go MCP Server

Um servidor MCP (Model Context Protocol) que fornece atualizações abrangentes da linguagem Go e melhores práticas para agentes de codificação de LLM em formato Markdown estruturado. Isso ajuda os agentes a evitar o uso de padrões Go desatualizados e aproveitar recursos modernos da linguagem de forma eficiente em 12 versões do Go.

AVISO Este repositório é experimental e para uso pessoal. (Claro, qualquer pessoa pode usar este repositório.) O agente de codificação LLM é totalmente utilizado para escrever código, testar e obter dados sobre os recursos do Go em cada versão. Alguns erros podem estar contidos. Espero que quaisquer issues ou PRs para melhorar este repositório sejam bem-vindos.

AVISO A saída desta ferramenta pode ser excessivamente grande com alguns hosts MCP, como o Claude Code. Em breve atualizarei esta ferramenta com um recurso de paginação.

Recursos

  • 🔄 Cobertura Abrangente de Versões: Suporta Go 1.13 até 1.24 (12 versões)
  • 📦 Filtragem Específica por Pacote: Obtenha atualizações para pacotes específicos da biblioteca padrão (net/http, slices, maps, log/slog, etc.)
  • 📚 Informações Ricas: Inclui exemplos, avaliação de impacto e recomendações de atualização
  • 📝 Formato Markdown: Saída estruturada otimizada para consumo por LLM com redução de ~70% no tamanho
  • 🚀 Binário Único: Todos os dados de versão incorporados usando go:embed para fácil implantação

Integração

Com o Claude Desktop

Adicione à sua configuração MCP:

{
  "mcpServers": {
    "recent-go-mcp": {
      "command": "go",
      "args":[
        "run",
        "github.com/tenkoh/recent-go-mcp@latest"
      ]
    }
  }
}

Você pode instalar o comando usando go install e, em seguida, registrar o caminho do binário executável na configuração MCP.

Com Outros Clientes MCP

O servidor usa transporte stdio e segue a especificação MCP. Ele pode ser integrado a qualquer cliente LLM compatível com MCP.

Uso

O servidor implementa o Model Context Protocol e pode ser usado com qualquer cliente compatível com MCP.

Ferramenta: go-updates

Obtenha informações sobre atualizações da linguagem Go e melhores práticas.

Parâmetros:

  • version (obrigatório): Versão do Go para verificar atualizações (suportado: "1.13" até "1.24")
  • package (opcional): Pacote específico da biblioteca padrão para filtrar atualizações (ex.: "net/http", "slices", "maps", "log/slog")

Exemplos

Obter todas as atualizações do Go 1.21 ao Go 1.24

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "go-updates",
    "arguments": {
      "version": "1.21"
    }
  }
}

Obter atualizações específicas do pacote slices a partir do Go 1.20

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "go-updates",
    "arguments": {
      "version": "1.20",
      "package": "slices"
    }
  }
}

Formato de Resposta

A ferramenta retorna saída Markdown estruturada otimizada para consumo por LLM:

  • Estrutura Hierárquica: Cabeçalhos claros (#, ##, ###) para fácil navegação
  • Seção de Resumo: Visão geral das mudanças e seu impacto
  • Seções Específicas por Versão: Mudanças de linguagem e biblioteca organizadas cronologicamente
  • Destaque de Código: Nomes de funções em `backticks` and examples in go code blocks
  • Legibilidade Aprimorada: Ênfase em negrito para itens importantes e formatação Markdown adequada

Cobertura de Dados

Suporte Abrangente de Versões do Go:

  • Go 1.13 até Go 1.24 (12 versões)
  • Cobertura completa desde versões legadas até os recursos mais recentes

Os dados incorporados cobrem:

  • Recursos da Linguagem: Nova sintaxe, construções e melhorias na linguagem
  • Atualizações da Biblioteca Padrão: Adições de pacotes, melhorias e novas APIs
  • Pacotes Modernos: slices, maps, log/slog, go/version e outras adições do Go 1.21+
  • Melhorias de Runtime: Otimizações de desempenho e gerenciamento de memória
  • Melhorias de Toolchain: Sistema de build, sistema de módulos e atualizações de ferramentas de desenvolvimento
  • Recomendações de Melhores Práticas: Padrões modernos e orientações de atualização

Contribuição

Contribuições são realmente bem-vindas. Por favor, abra uma issue ou pull request sem cerimônia.

Desenvolvimento

# Run all tests (includes MCP protocol tests)
go test ./...

# Run MCP server integration tests specifically
go test -v -run TestMCPServer

# Build the server
go build -o recent-go-mcp

# Test manually with JSON-RPC
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}' | ./recent-go-mcp
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "go-updates", "arguments": {"version": "1.24"}}}' | ./recent-go-mcp

Licença

MIT

Autor

tenkoh (usando Claude Sonnet 4)