modelcontextprotocol/go-sdk

The official Go SDK for Model Context Protocol servers and clients. Maintained in collaboration with Google.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 32 minutes ago
Added to GitGenius on November 13th, 2025
Created on April 23rd, 2025
Open Issues & Pull Requests: 92 (+0)
Number of forks: 519
Total Stargazers: 5,010 (+0)
Total Subscribers: 56 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 9.4 hours
Mean response time: 4.2 days
90th percentile: 9.8 days
Tracked items: 423

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 98% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "release blocker" is answered fastest, typically in about an hour, while "ready for work" waits about 3 days. 28% of tracked open issues have had no activity in three months. Only 6% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 48
New in 7 days: 5
Closed in 7 days: 9
Avg open age: 88 days
Stale 30+ days: 18
Stale 90+ days: 14

Recent activity

Opened in 7 days: 5
Closed in 7 days: 8
Comments in 7 days: 6
Events in 7 days: 29

Top labels

  • release blocker (34)
  • needs investigation (30)
  • ready for work (23)
  • breaking change (21)
  • help wanted (21)
  • P2 (19)
  • P3 (15)
  • needs community feedback (10)

Detailed Description

The go-sdk repository is the official Go software development kit for the Model Context Protocol, maintained in collaboration with Google. It provides a complete implementation enabling developers to build MCP servers and clients in Go, with the SDK designed to implement the full MCP specification across multiple versions.

The repository is organized into several importable packages that serve different purposes. The primary mcp package defines the core APIs for constructing and using MCP clients and servers. The jsonrpc package supports users implementing custom transports, while the auth package provides primitives for OAuth support. The oauthex package extends OAuth functionality with features like ProtectedResourceMetadata. The docs directory contains feature documentation that maps the MCP specification to these packages.

Version compatibility is carefully maintained across SDK releases. SDK version 1.7.0 and later support the latest MCP spec from 2026-07-28 while maintaining backward compatibility with earlier specifications including 2025-11-25, 2025-06-18, 2025-03-26, and 2024-11-05. Earlier SDK versions support progressively older spec versions, with v1.0.0 through v1.1.0 supporting specs back to 2024-11-05. The SDK notes that roots, sampling, and logging features were deprecated as of protocol version 2026-07-28 but continue to be supported for compatibility during a deprecation window of at least twelve months.

The repository demonstrates strong maintenance and community engagement.

Getting started with the SDK involves creating an mcp.Server instance, adding features to it, and running it over an mcp.Transport. The repository includes an examples directory with sample clients and servers demonstrating practical usage patterns. The project welcomes contributions and acknowledges the ecosystem of third-party Go MCP SDKs that inspired its development, including mcp-go, mcp-golang, and go-mcp.

The project targets only supported versions of Go according to Go's official release policy, ensuring compatibility with current language standards.