mcp-kit
MCP (Model Context Protocol) Kit for Go - A Complete MCP solutions for ready to use
claude mcp add --transport stdio shaharia-lab-mcp-kit ./mcp server --config config.local.yaml \ --env AUTH_DOMAIN="OAuth2/OpenID Connect domain for authentication" \ --env GITHUB_TOKEN="GitHub token for private dependencies or hooks" \ --env AUTH_AUDIENCE="OAuth2 audience" \ --env AUTH_CLIENT_ID="OAuth2 client ID" \ --env AUTH_TOKEN_TTL="Token time-to-live (e.g., 24h)" \ --env MCP_SERVER_PORT="Server port (default if not set in config)" \ --env AUTH_CALLBACK_URL="OAuth2 callback URL" \ --env AUTH_CLIENT_SECRET="OAuth2 client secret"
How to use
MCP Kit provides a complete flow for experimenting with the Model Context Protocol (MCP). The MCP Server implements the MCP specification and exposes an SSE-enabled interface for real-time data streaming between clients and AI models. The MCP Client acts as a configurable intermediary that connects applications to the MCP Server, handling protocol details, timeouts, retries, and event streams. An API Server offers a RESTful HTTP layer to route user prompts and model queries through the MCP Client to external LLM services, while the MCP Kit Frontend provides a UI for testing and monitoring workflows. To get started, run the MCP Server with your chosen configuration, start the API Server, and then launch the frontend to interact with the system. The ecosystem is designed to let you plug in different LLMs, tools, and external services while maintaining a consistent MCP interface.
How to install
Prerequisites:
- Go installed (for building from source)
- Docker installed (optional but recommended for containerized runs)
Install steps:
-
Clone the repository git clone https://github.com/shaharia-lab/mcp-kit.git cd mcp-kit
-
Build the MCP binary locally (server and API can be built from source) make build
-
Create a configuration file
- Copy the example: cp config.example.yaml config.local.yaml
- Edit config.local.yaml with your environment-specific values e.g., ports, tokens, endpoints
-
Run the MCP Server directly ./mcp server --config config.local.yaml
-
Run the API Server ./mcp api --config config.local.yaml
-
Optional: Run using Docker
- Pull and run the images as shown in the README’s docker commands
- Ensure config.local.yaml is mounted into the container at the expected path
-
Access the UI
- Open http://localhost:3001 to view the MCP Kit Frontend
-
OpenAPI and endpoints
- The OpenAPI schema is available at the API server (openapi.yaml) for integration
Additional notes
Tips and common considerations:
- Ensure environment variables for authentication are correctly set when running with Docker or in production (AUTH_DOMAIN, AUTH_CLIENT_ID, AUTH_CLIENT_SECRET, etc.).
- The MCP Server uses Server-Sent Events (SSE) for streaming; ensure your clients handle real-time event streams.
- If you’re using Docker, you can run each component (Server, API, Frontend) separately or via docker-compose for easier orchestration.
- For private infrastructure, provide a valid GITHUB_TOKEN to access private dependencies or GitHub-based hooks used by the MCP toolkit.
- The configuration file config.local.yaml should reference external services (LLMs, tools) via endpoints or environment-based secrets to keep credentials secure.
- Monitor logs from the MCP Server and API Server to diagnose protocol mismatches or streaming issues; SSE connectivity can be sensitive to network proxies.
Related MCP Servers
mcp-agent
Build effective agents using Model Context Protocol and simple workflow patterns
openapi
OpenAPI definitions, converters and LLM function calling schema composer.
neurolink
Universal AI Development Platform with MCP server integration, multi-provider support, and professional CLI. Build, test, and deploy AI applications with multiple ai providers.
go-utcp
Official Go implementation of the UTCP
mcp-shell
Give hands to AI. MCP server to run shell commands securely, auditably, and on demand.
mcp-frontend
Frontend for MCP (Model Context Protocol) Kit for Go - A Complete MCP solutions for ready to use