go-sdk/internal/readme
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Robert Findley 46e767e646
Update README for v0.4.0 (#422)
As we prepare to release v0.4.0, update the README to reference the new
version.
2025-09-05 16:30:59 -04:00
..
client mcp: make transports open structs 2025-08-12 15:14:21 -04:00
server all: add examples of customizing tool schemas, and clarify documentation (#421) 2025-09-05 14:11:11 -04:00
build.sh mcp, internal/readme: fix go generate (#6) 2025-06-23 15:46:53 -04:00
Makefile internal/mcp: construct README with weave 2025-05-21 16:21:26 -07:00
README.src.md Update README for v0.4.0 (#422) 2025-09-05 16:30:59 -04:00

MCP Go SDK v0.4.0

Open in GitHub Codespaces

BREAKING CHANGES

This version contains breaking changes. See the release notes for details.

PkgGoDev

This repository contains an unreleased implementation of the official Go software development kit (SDK) for the Model Context Protocol (MCP).

Warning

The SDK is not yet at v1.0.0 and may still be subject to incompatible API changes. We aim to tag v1.0.0 in September, 2025. See https://github.com/modelcontextprotocol/go-sdk/issues/328 for details.

Package documentation

The SDK consists of two importable packages:

Getting started

To get started creating an MCP server, create an mcp.Server instance, add features to it, and then run it over an mcp.Transport. For example, this server adds a single simple tool, and then connects it to clients over stdin/stdout:

%include server/server.go -

To communicate with that server, we can similarly create an mcp.Client and connect it to the corresponding server, by running the server command and communicating over its stdin/stdout:

%include client/client.go -

The examples/ directory contains more example clients and servers.

Design

The design doc for this SDK is at design.md, which was initially reviewed at modelcontextprotocol/discussions/364.

Further design discussion should occur in issues (for concrete proposals) or discussions for open-ended discussion. See CONTRIBUTING.md for details.

Acknowledgements

Several existing Go MCP SDKs inspired the development and design of this official SDK, notably mcp-go, authored by Ed Zynda. We are grateful to Ed as well as the other contributors to mcp-go, and to authors and contributors of other SDKs such as mcp-golang and go-mcp. Thanks to their work, there is a thriving ecosystem of Go MCP clients and servers.

License

This project is licensed under the MIT License - see the LICENSE file for details.