MCP Go SDK logo

MCP Go SDK

by riza-io

A Go implementation of the Model Context Protocol (MCP), providing both client and server capabilities for integrating with LLM surfaces. It allows applications to provide context for LLMs in a standardized way.

View on GitHub

Last updated: N/A

What is MCP Go SDK?

The MCP Go SDK is a Go implementation of the Model Context Protocol, enabling developers to build MCP clients and servers for integrating with LLM surfaces.

How to use MCP Go SDK?

To use the MCP Go SDK, you can build MCP clients to connect to MCP servers or create MCP servers that expose resources, prompts, and tools. The SDK supports standard transports like stdio and SSE (coming soon) and handles all MCP protocol messages and lifecycle events. An example server that exposes the contents of an io.FS as resources is provided in the README.

Key features of MCP Go SDK

  • Build MCP clients

  • Create MCP servers

  • Standard transports (stdio, SSE)

  • MCP protocol message handling

Use cases of MCP Go SDK

  • Providing context to LLMs

  • Integrating applications with LLM surfaces

  • Exposing resources to LLMs

  • Creating custom MCP servers

FAQ from MCP Go SDK

What is the Model Context Protocol?

The Model Context Protocol allows applications to provide context for LLMs in a standardized way.

What transports are supported?

The SDK supports standard transports like stdio and SSE (coming soon).

Where can I find example servers?

Example servers can be found at https://github.com/riza-io/mcp-go/tree/main/examples

What is the license?

The SDK is offered under the MIT license.

What features are planned for the future?

Planned features include Notifications, Sampling, and Roots.