kora-grpc-serverlisted
Install: claude install-skill kora-projects/kora-skills
# Kora gRPC Server
> **Kora sub-skill — obey the [kora-v1 meta rules](../../SKILL.md) on every task:** **R0** ensure `.kora-agent/` docs+examples are cloned · **R1** read this sub-skill before writing code · **R2** Kora APIs only — no Spring/Micronaut/Quarkus, no invented annotations or config keys · **R3** journal any incorrect Kora usage. Add comments/Javadoc only if asked.
Serve gRPC RPCs from a Kora application. The `.proto` contract is the source of truth: the `protobuf` Gradle plugin generates message classes and a `*Grpc.*ImplBase` base type, and you implement a Kora `@Component` that extends that base. `GrpcServerModule` discovers every `@Component` handler and `ServerInterceptor` and starts the server — no reflection-based wiring, everything is resolved through the compile-time graph.
## When to use vs NOT
Use this skill when:
- implementing gRPC handlers that extend the generated `*GrpcImplBase`,
- wiring `GrpcServerModule` into a `@KoraApp`,
- configuring `grpcServer` (port, message size, telemetry, keepalive, reflection),
- adding `io.grpc.ServerInterceptor` beans for auth/logging/metrics,
- enabling gRPC Server Reflection for `grpcurl`.
Do NOT use this skill for:
- consuming gRPC services (declarative stubs) — that is the `kora-grpc-client` skill,
- HTTP/JSON endpoints — use `kora-http-server`.
## Quick Start
### 1. Dependencies (BOM pins all `ru.tinkoff.kora:*` versions)
```groovy
dependencies {
koraBom platform("ru.tinkoff.kora:kora-parent:1.2.19")