Repolode
micro

micro/go-micro

A Go framework for distributed systems covering RPC, service discovery, messaging, storage, config, plus agents, tools and workflows.

Stars
23,084
Forks
2,430
Open issues
4
Last commit
9 days ago

What is it?

Go Micro is a Go framework for building distributed systems. It provides the building blocks most microservice setups need: RPC with streaming, message encoding, service discovery, messaging, storage, and configuration. Each component is defined as a Go interface with a default implementation, so the parts can be swapped out.

The framework also includes an agent layer. Agents can use services as tools, keep conversation history, and run through configured models. Workflows coordinate ordered steps with retries and checkpoints, mixing service calls and agent tasks.

A gateway exposes services over HTTP and MCP, so other applications and AI agents can call them. Developers can start with plain Go services and RPC without using any model, or add the agent and gateway pieces as needed.

Key features

  • 01RPC with streaming and message encoding
  • 02Service discovery and messaging
  • 03Storage and configuration components behind Go interfaces
  • 04Agents that use services as tools and keep conversation history
  • 05Workflows with ordered steps, retries and checkpoints
  • 06Gateway exposing services over HTTP and MCP

Use cases

  • Building microservices in Go that need RPC and service discovery
  • Exposing internal Go services to AI agents through MCP
  • Orchestrating multi-step tasks that combine service calls and agent work

Quick start

  1. 1

    Install the framework with Go

    go get go-micro.dev/v6@latest
  2. 2

    Read the quickstart guide to build and run a service

In collections

Topics

FAQ

What is go-micro?
A Go framework for distributed systems covering RPC, service discovery, messaging, storage, config, plus agents, tools and workflows. Go Micro is a Go framework for building distributed systems. It provides the building blocks most microservice setups need: RPC with streaming, message encoding, service discovery, messaging, storage, and configuration. Each component is defined as a Go interface with a default implementation, so the parts can be swapped out.
Is go-micro free to use? What license does it have?
go-micro is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is go-micro still maintained?
Actively maintained. The last commit to go-micro was on Oct 29, 2026.
What can I use go-micro for?
Building microservices in Go that need RPC and service discovery Exposing internal Go services to AI agents through MCP Orchestrating multi-step tasks that combine service calls and agent work
How do I install go-micro?
Install the framework with Go: go get go-micro.dev/v6@latest Read the quickstart guide to build and run a service
Where can I get go-micro?
The source code and installation instructions are on GitHub: https://github.com/micro/go-micro

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects