go-mcp  by ThinkInAIXYZ

Go SDK for Model Context Protocol (MCP)

created 5 months ago
597 stars

Top 55.5% on sourcepulse

GitHubView on GitHub
Project Summary

Go-MCP is a Go implementation of the Model Context Protocol (MCP) designed to simplify communication between external systems and AI applications. It offers a type-safe, high-performance, and easily deployable SDK for developers building AI-integrated services, leveraging Go's concurrency and static compilation benefits.

How It Works

Go-MCP utilizes a three-layer architecture: Transport, Protocol, and User. The Transport Layer abstracts communication protocols (HTTP SSE/POST, Streamable HTTP, Stdio), allowing for easy extension with new methods like WebSockets or gRPC. The Protocol Layer handles MCP message encoding/decoding and data structures. The User Layer provides idiomatic Go APIs for client and server interactions, ensuring type safety and modularity.

Quick Start & Requirements

Highlighted Details

  • Full implementation of the MCP specification.
  • Supports bidirectional communication via HTTP SSE/POST, Streamable HTTP, and Stdio.
  • Integrates with web frameworks like Gin via http.Handler.
  • Leverages Go's static compilation for simple deployment.

Maintenance & Community

Licensing & Compatibility

  • License: MIT License. Permissive for commercial use and closed-source linking.

Limitations & Caveats

The project is actively seeking contributions, and while it implements the MCP specification, the breadth of supported transport protocols beyond HTTP SSE/POST and Stdio might be limited in practice.

Health Check
Last commit

1 week ago

Responsiveness

1 day

Pull Requests (30d)
6
Issues (30d)
2
Star History
149 stars in the last 90 days

Explore Similar Projects

Starred by Didier Lopes Didier Lopes(Founder of OpenBB), Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), and
2 more.

fastmcp by jlowin

2.1%
16k
Pythonic SDK for building Model Context Protocol (MCP) servers/clients
created 8 months ago
updated 20 hours ago
Feedback? Help us improve.