zenrpc

Generate JSON-RPC 2.0 server code with middleware and OpenRPC docs in Go.

6|Updated Apr 5, 2026
One-click install
npx skills add https://github.com/vmkteam/claude-plugins --skill zenrpc
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: zenrpc
Source: https://github.com/vmkteam/claude-plugins/tree/main/plugins/developer/skills/zenrpc
Command: npx skills add https://github.com/vmkteam/claude-plugins --skill zenrpc

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Zenrpc provides a structured approach to building JSON-RPC 2.0 servers in Go, combining codegen, middleware, and docs to reduce boilerplate and errors.

Core Features & Use Cases

  • Codegen: generates *_zenrpc.go with routing, SMD/OpenRPC documentation, and avoids manual edits.
  • Middleware and observability: integrates with zm for devel options, headers, Sentry, metrics, timing, and logging.
  • Annotations and error handling: zenrpc annotations for request/response metadata and predefined error types.
  • Transport and ecosystem: supports HTTP, WebSocket, NATS, and ecosystem tools like SMDBox and rpcdiff.

Quick Start

Set up zenrpc in a Go project and run code generation to produce server stubs, then implement your services.

Frequently Asked Questions about zenrpc

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a JSON-RPC 2.0 server in Go without writing boilerplate routing code?

Codegen for JSON-RPC 2.0 servers in Go generates routing and documentation files automatically, eliminating manual boilerplate. The generated stubs handle request routing and SMD documentation so you can focus on implementing service logic.

Does Go JSON-RPC support WebSocket and NATS transports, or only HTTP?

Go JSON-RPC services support multiple transports including HTTP, WebSocket, and NATS. This allows you to choose the appropriate communication protocol for your application's real-time or messaging requirements.

How do I handle errors and request metadata in Go JSON-RPC services?

Handle errors and metadata in Go JSON-RPC services using ergonomic annotations. These annotations define request and response metadata while providing predefined error types for robust error handling.

What's the best way to generate OpenRPC documentation for my Go RPC services?

Generate OpenRPC documentation for Go RPC services through codegen that produces SMD and OpenRPC specs automatically. This built-in generation avoids manual edits and keeps documentation synchronized with your service implementation.

Can I integrate middleware for logging and metrics into a Go JSON-RPC server?

You can integrate middleware into Go JSON-RPC servers for logging, metrics, timing, and error tracking. This middleware support extends to Sentry integration and development options for production-grade observability.

Why should I use codegen for Go JSON-RPC instead of writing servers manually?

Codegen for Go JSON-RPC reduces boilerplate and errors by generating routing and documentation automatically. This structured approach provides strong typing and avoids manual edits, resulting in more maintainable production-grade RPC services.