- Explore MCP Servers
- recent-go-mcp
Recent Go Mcp
What is Recent Go Mcp
The Recent Go MCP Server is an experimental tool designed to provide comprehensive updates and best practices for the Go programming language across versions 1.13 to 1.24. It leverages Model Context Protocol (MCP) to deliver insights into language features, standard library changes, and modern coding patterns, helping LLM coding agents avoid outdated methods.
Use cases
This server can be used by developers and coding assistants to stay informed about the latest features and recommended practices in Go. It is particularly useful for ensuring code compatibility, enhancing code quality, and aiding in the migration of projects between different Go versions while making the most of new functionalities.
How to use
To use the server, integrate it with an MCP-compatible client by adding it to the MCP configuration. Utilize the ‘go-updates’ tool with specified parameters to retrieve updates for a particular Go version and optionally filter by specific standard library packages. The server will respond with both textual summaries and structured JSON data.
Key features
Key features include comprehensive version coverage from Go 1.13 to 1.24, package-specific filtering for updates, rich information including examples and upgrade recommendations, and deployment as a single binary with all relevant data embedded for easy access.
Where to use
The Recent Go MCP Server can be used in environments where Go development is taking place, such as in coding IDEs, CI/CD pipelines, or any other system that utilizes LLMs or coding assistants to improve coding practices and keep up with Go’s evolving standards.
Overview
What is Recent Go Mcp
The Recent Go MCP Server is an experimental tool designed to provide comprehensive updates and best practices for the Go programming language across versions 1.13 to 1.24. It leverages Model Context Protocol (MCP) to deliver insights into language features, standard library changes, and modern coding patterns, helping LLM coding agents avoid outdated methods.
Use cases
This server can be used by developers and coding assistants to stay informed about the latest features and recommended practices in Go. It is particularly useful for ensuring code compatibility, enhancing code quality, and aiding in the migration of projects between different Go versions while making the most of new functionalities.
How to use
To use the server, integrate it with an MCP-compatible client by adding it to the MCP configuration. Utilize the ‘go-updates’ tool with specified parameters to retrieve updates for a particular Go version and optionally filter by specific standard library packages. The server will respond with both textual summaries and structured JSON data.
Key features
Key features include comprehensive version coverage from Go 1.13 to 1.24, package-specific filtering for updates, rich information including examples and upgrade recommendations, and deployment as a single binary with all relevant data embedded for easy access.
Where to use
The Recent Go MCP Server can be used in environments where Go development is taking place, such as in coding IDEs, CI/CD pipelines, or any other system that utilizes LLMs or coding assistants to improve coding practices and keep up with Go’s evolving standards.
Content
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)