MCP Go SDK
@SetiabudiResearch
About MCP Go SDK
This SDK provides a Go implementation of the Machine Control Protocol (MCP), enabling bidirectional communication between clients and servers for tool execution, resource access, and prompt handling. Based on
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is MCP Go SDK?
The MCP Go SDK provides a Go implementation of the Model Context Protocol (MCP), enabling bidirectional communication between clients and servers for tool execution, resource access, and prompt handling. It is designed for Go developers building MCP-compatible applications.
How to use MCP Go SDK?
Install the SDK with go get github.com/SetiabudiResearch/mcp-go-sdk. Then create a server instance using server.NewServer(), add tools, resources, or prompts using the provided methods, and start a transport (stdio, WebSocket, or SSE). See the Quick Start section for a minimal example.
Key features of MCP Go SDK
- Multiple transport options: stdio, SSE, WebSocket
- Tool registration with both sync and async execution
- Resource pattern matching (e.g.,
files/{path}) - Prompt template rendering and multi-message prompts
- JSON-RPC message handling with core MCP types
- Reflection-based handler invocation
Use cases of MCP Go SDK
- Build custom MCP servers exposing tools and resources
- Create a file server that serves files via MCP (see examples/fileserver)
- Implement a calculator service as an MCP tool (see examples/calculator)
- Develop an interactive chatbot using MCP prompts (see examples/chatbot)
FAQ from MCP Go SDK
What transports does the MCP Go SDK support?
It supports stdio, WebSocket, and Server-Sent Events (SSE) transports, each configurable with endpoints and settings.
How do I add a tool to the server?
Use srv.AddTool() for synchronous tools or srv.AddAsyncTool() for long-running operations, providing a name, handler function, and description.
What are the runtime dependencies?
The SDK depends only on the Go standard library and the module itself; it is a pure Go implementation.
Can I access resources with dynamic paths?
Yes, resources support pattern matching like files/{path} or api/{version}/{endpoint} with multiple parameters.
Are there complete example applications?
Yes, the repository contains an examples directory with a file server, calculator, and chatbot examples.
More Developer Tools MCP servers
Golf
golf-mcpProduction-Ready MCP Server Framework • Build, deploy & scale secure AI agent infrastructure • Includes Auth, Observability, Debugger, Telemetry & Runtime • Run real-world MCPs powering AI Agents
Test
x1xhlolFULL Augment Code, Claude Code, Cluely, CodeBuddy, Comet, Cursor, Devin AI, Junie, Kiro, Leap.new, Lovable, Manus, NotionAI, Orchids.app, Perplexity, Poke, Qoder, Replit, Same.dev, Trae, Traycer AI, VSCode Agent, Warp.dev, Windsurf, Xcode, Z.ai Code, Dia & v0. (And other Open Sou
TalkToFigma
sonnylazuardiTalkToFigma: MCP integration between AI Agent (Cursor, Claude Code, Codex) and Figma, allowing Agentic AI to communicate with Figma for reading designs and modifying them programmatically.
Code Index MCP
johnhuang316A Model Context Protocol (MCP) server that helps large language models index, search, and analyze code repositories with minimal setup
Serena
oraiosA powerful MCP toolkit for coding, providing semantic retrieval and editing capabilities - the IDE for your agent
Comments