Recent Go MCP Server
Provides Go language updates and best practices in a structured Markdown format for LLM coding agents.
Recent Go MCP Server
An MCP (Model Context Protocol) server that provides comprehensive Go language updates and best practices to LLM coding agents in structured Markdown format. This helps agents avoid using outdated Go patterns and leverage modern language features efficiently across 12 Go versions.
NOTICE This repository is experimental and for personal use. (Of course, anyone can use this repository.) LLM coding agent is fully utilized to write code, test and data about Go's features in each release. Some mistakes would be contained. I hope any issues or PRs to improve this repository.
NOTICE The output of this tool might be oversize with some MCP hosts like Claude Code. I will update this tool with pagenation feature soon.
Features
- 🔄 Comprehensive Version Coverage: Supports Go 1.13 through 1.24 (12 versions)
- 📦 Package-Specific Filtering: Get updates for specific standard library packages (net/http, slices, maps, log/slog, etc.)
- 📚 Rich Information: Includes examples, impact assessment, and upgrade recommendations
- 📝 Markdown Format: Structured output optimized for LLM consumption with ~70% size reduction
- 🚀 Single Binary: All release data embedded using go:embed for easy deployment
Integration
With Claude Desktop
Add to your MCP configuration:
{
"mcpServers": {
"recent-go-mcp": {
"command": "go",
"args":[
"run",
"github.com/tenkoh/recent-go-mcp@latest"
]
}
}
}
You can install the command using go install, then register the executable binary's path to MCP configuration.
With Other MCP Clients
The server uses stdio transport and follows the MCP specification. It can be integrated with any MCP-compatible LLM client.
Usage
The server implements the Model Context Protocol and can be used with any MCP-compatible client.
Tool: go-updates
Get information about Go language updates and best practices.
Parameters:
version(required): Go version to check updates from (supported: "1.13" through "1.24")package(optional): Specific standard library package to filter updates (e.g., "net/http", "slices", "maps", "log/slog")
Examples
Get all updates from Go 1.21 to Go 1.24
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "go-updates",
"arguments": {
"version": "1.21"
}
}
}
Get slices package specific updates from Go 1.20
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "go-updates",
"arguments": {
"version": "1.20",
"package": "slices"
}
}
}
Response Format
The tool returns structured Markdown output optimized for LLM consumption:
- Hierarchical Structure: Clear headings (
#,##,###) for easy navigation - Summary Section: Overview of changes and their impact
- Version-Specific Sections: Chronologically organized language and library changes
- Code Highlighting: Function names in
`backticks`and examples ingo code blocks - Enhanced Readability: Bold emphasis for important items and proper Markdown formatting
Data Coverage
Comprehensive Go Version Support:
- Go 1.13 through Go 1.24 (12 versions)
- Complete coverage from legacy versions to the latest features
The embedded data covers:
- Language Features: New syntax, constructs, and language improvements
- Standard Library Updates: Package additions, enhancements, and new APIs
- Modern Packages: slices, maps, log/slog, go/version, and other Go 1.21+ additions
- Runtime Improvements: Performance optimizations and memory management
- Toolchain Enhancements: Build system, module system, and developer tooling updates
- Best Practice Recommendations: Modern patterns and upgrade guidance
Contribution
Contributions are really welcomed. Please make an issue or a pull request casually.
Development
# 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
License
MIT
Author
tenkoh (using Claude Sonnet 4)
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Cargo Package README MCP Server
Fetches Rust crate READMEs, metadata, dependencies, and usage information from crates.io.
CodeBase Optimizer
Analyzes, optimizes, and detects duplicates in codebases for Claude Code.
HED MCP Server
An MCP server for Hierarchical Event Descriptors (HED) that automates sidecar creation and annotation for BIDS event files using LLMs.
Last9
Seamlessly bring real-time production context—logs, metrics, and traces—into your local environment to auto-fix code faster.
OpenOcean Finance
An MCP server for executing token swaps across multiple decentralized exchanges using OpenOcean's aggregation API
Unison MCP Server
An MCP server for the Unison language, allowing AI assistants to interact with the Unison Codebase Manager (UCM).
MCP Stripe Server
Integrates with Stripe to manage payments, customers, and refunds.
Rossum MCP & Agent
MCP server and AI agent toolkit for intelligent document processing with Rossum.
xcsimctl
Manage Xcode simulators.
Unstructured API MCP Server
Interact with the Unstructured API to manage data sources, destinations, workflows, and jobs.