micro--go-micro
c7657f73f4
goreleaser / goreleaser (push) Has been cancelled
* test(harness): read agent plan from the scoped store
The store-scoping change moved an agent's plan from the default table
key agent/{name}/plan to its own table (database "agent", table {name},
key "plan"). The plan-delegate harness tests still read the old key and
failed with 'not found'; read through store.Scope(mem, "agent", name)
like the agent does.
* docs: orient agents-first across README, landing, and docs overview
Lead with agents (then services and flows), surface MCP + A2A as the
interop story, and frame agents as services. Landing hero and feature
grid reordered agents-first with an A2A gateway card.
* v6: module path go-micro.dev/v6, TLS secure by default, NewService
Cut v6. Three breaking changes, bundled so the major bump is paid once:
- Module path go-micro.dev/v5 -> go-micro.dev/v6 across all imports + go.mod.
- TLS verification on by default (was off). MICRO_TLS_SECURE removed;
MICRO_TLS_INSECURE=true opts out for self-signed/dev.
- micro.NewService(name, opts...) is the canonical service constructor,
symmetric with NewAgent/NewFlow; micro.New kept as a deprecated alias;
the old name-less NewService(opts...) removed. Generators emit NewService.
Also ports the JWT auth token provider in-module (go-micro.dev/v6/auth/jwt/token
on golang-jwt/jwt/v5), dropping the v5-pinned github.com/micro/plugins/v5/auth/jwt
and the deprecated dgrijalva/jwt-go.
Docs/README/landing updated to v6 and @latest; v5->v6 migration guide added;
CHANGELOG cut as [6.0.0]. Blog posts left at their historical versions.
---------
Co-authored-by: Claude <noreply@anthropic.com>
Agent Demo
A multi-service project management app that demonstrates AI agents interacting with Go Micro services through MCP.
What's Included
Three services registered in a single process:
| Service | Endpoints | Description |
|---|---|---|
| ProjectService | Create, Get, List | Manage projects with status tracking |
| TaskService | Create, List, Update | Tasks with assignees, priorities, and status |
| TeamService | Add, List, Get | Team members with roles and skills |
The demo starts with seed data: 2 projects, 7 tasks, and 4 team members.
Run
go run main.go
Endpoints:
- MCP Gateway: http://localhost:3000
- MCP Tools: http://localhost:3000/mcp/tools
- WebSocket: ws://localhost:3000/mcp/ws
Use with Claude Code
{
"mcpServers": {
"demo": {
"command": "go",
"args": ["run", "main.go"],
"cwd": "examples/agent-demo"
}
}
}
Example Prompts
Try these with Claude Code or any MCP client:
- "What projects do we have?"
- "Show me all tasks assigned to alice"
- "Create a high-priority task for bob to review the design mockups"
- "Who on the team knows Go?"
- "Give me a status update on the Website Redesign project"
- "What tasks are still todo on the API v2 migration?"
- "Assign the unassigned tasks to charlie"
- "Mark task-1 as done"
What This Demonstrates
- Zero-config MCP — Services become AI tools automatically from doc comments
- Cross-service orchestration — An agent queries projects, tasks, and team in one conversation
- Rich tool descriptions —
descriptionstruct tags and@examplecomments guide the agent - Auth scopes — Read and write operations have separate scopes
WithMCPone-liner — MCP gateway starts with a single option
See the blog post for a detailed walkthrough.