Go-MCP logo

Go-MCP

by virgoC0der

Go-MCP is a Go implementation of the Model Context Protocol (MCP). MCP is a protocol for building AI services, defining three core primitives: Prompts, Tools, and Resources.

View on GitHub

Last updated: N/A

What is Go-MCP?

Go-MCP is a Go library that implements the Model Context Protocol (MCP), providing a framework for building AI services with prompts, tools, and resources.

How to use Go-MCP?

To use Go-MCP, you can create a server implementing the MCPService interface and use the provided NewServer function. Clients can connect to the server using NewClient and access the service through the Service() method. The library provides examples for creating both servers and clients, and supports multiple transport options like HTTP and SSE.

Key features of Go-MCP

  • Complete MCP protocol implementation

  • Type-safe API

  • Multiple transport options (HTTP, SSE)

  • Unified response structure

  • Pagination support

  • Change notifications support

  • JSON-RPC Support

  • Enhanced Multimodal Content

  • Resource Templates

  • Resource Subscriptions

  • Rich Server Capabilities

Use cases of Go-MCP

  • Building AI services

  • Creating applications that interact with AI models

  • Implementing custom AI protocols

  • Developing services that manage prompts, tools, and resources

  • Creating multimodal AI applications

FAQ from Go-MCP

What is MCP?

MCP stands for Model Context Protocol, a protocol for building AI services.

What transport options are supported?

Go-MCP supports HTTP and SSE transport options.

Does Go-MCP support pagination?

Yes, all list APIs support cursor-based pagination.

How do I contribute to Go-MCP?

Fork the repository, create a feature branch, commit your changes, push to the branch, and open a pull request.

What license is Go-MCP released under?

Go-MCP is licensed under the MIT License.