zenmcp
A lightweight, fast Go framework for building Model Context Protocol (MCP) servers
claude mcp add --transport stdio hyperleex-zenmcp docker run -i hyperleex/zenmcp \ --env ZENMCP_CONFIG="path/to/config.yaml or JSON (optional)"
How to use
ZenMCP is a minimalist, high-performance MCP server built with Go. It emphasizes a single binary deployment with zero external dependencies, making it ideal for lightweight game context polling and protocol handling. Use the included MCP framework to define your server behavior, register models, and respond to context requests quickly. With ZenMCP you can run a dedicated MCP server instance inside a container or as a standalone binary, taking advantage of Go’s efficiency and simplicity. The server exposes the Model Context Protocol endpoints and can be extended with custom handlers to manage context data, provide defaults, or override specific model fields as needed. Typical workflows involve starting the server, configuring model contexts, and then using MCP clients to query, subscribe, or push updates to model data managed by ZenMCP.
How to install
Prerequisites:
- Docker installed on your system (recommended for ease of use) or Go toolchain if you prefer building from source.
- Basic familiarity with MCP concepts (models, contexts, and requests).
Option A: Run via Docker (recommended for quick start)
- Pull and run the ZenMCP image: docker pull hyperleex/zenmcp docker run -d --name zenmcp -p 8080:8080 -i hyperleex/zenmcp
- Optional: provide a configuration file via environment or mounted volume if the image supports it (see env vars in README or image docs).
Option B: Build from source (Go)
- Install Go from https://go.dev/dl/
- Clone the repository: git clone https://github.com/slug/zenmcp.git cd zenmcp
- Build the binary: go build -o zenmcp-server ./...
- Run the server: ./zenmcp-server
- Optional: provide a config file or env vars to customize MCP behavior.
Notes:
- If using Docker, check the image documentation for available ports, config files, and environment variables.
- For Go builds, ensure your GOPATH and module mode are correctly configured if you’re not using Go modules by default.
Additional notes
Tips:
- Since ZenMCP aims for zero external dependencies, keep your model definitions lightweight to maintain performance.
- Consider configuring environment variables to tune MCP protocol handlers, timeouts, and logging levels.
- If you encounter connection issues with MCP clients, verify the exposed port and ensure firewall rules allow traffic on that port.
- Use Docker for predictable deployments and easier distribution across environments. When building manually, compile for your target OS/architecture.
- Common issues include misconfigured models or mismatched MCP versions between client and server; ensure both sides agree on the model contexts you expose.
Related MCP Servers
go
deprecated: use the official MCP sdk! (https://github.com/modelcontextprotocol/go-sdk) / ⚡ A type-safe, intuitive Go SDK for building MCP servers with ease and confidence
go-utcp
Official Go implementation of the UTCP
sandbox
A Model Context Protocol (MCP) server that enables LLMs to run ANY code safely in isolated Docker containers.
mcp-zero
Model Context Protocol (MCP) server for go-zero framework - Generate APIs, RPC services, and models with AI assistance.
miro
MCP server for controlling Miro whiteboards with AI assistants
mcp-stockfish
🐟 MCP server connecting AI systems to Stockfish chess engine