home / mcp / mcp golang server

MCP Golang Server

Unofficial MCP server in Go with type-safe tool arguments and multiple transports.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "metoro-io-mcp-golang": {
      "command": "<your path to golang MCP server go executable>",
      "args": []
    }
  }
}

You can run an MCP server in Go to expose tools, prompts, and resources to MCP clients. It supports type-safe arguments, multiple transports, and bi-directional communication, letting you build practical integrations with minimal boilerplate.

How to use

Set up a server that exposes tools, prompts, and resources. You can run the server locally using a stdio transport for full features or serve over HTTP for simple request/response patterns. A typical workflow is to define your argument types in Go, register tools/prompts/resources, and then start the server so clients can call your endpoints.

How to use with a client

Use a client to initialize the connection, then call tools, prompts, or resources with type-safe arguments. The client can operate in-process through stdio or over HTTP depending on the transport chosen for the server. You’ll pass your Go-typed argument structs, and receive structured responses that you can render or further process in your application.

How to install

Prerequisites: Install Go on your development machine.

Install the MCP Go library for your project.

Create and run an MCP server using the stdio transport or an HTTP transport as shown in examples.