rockboxd exposes the same in-process state through four independent
servers. They are all started by start_servers() in
crates/server/src/lib.rs and all share one set of mutexes around the
firmware, so a change made via gRPC is immediately visible over GraphQL,
HTTP and MPD.
HTTP REST
Open
http://localhost:6063 and explore.GraphQL
GraphiQL at
http://localhost:6062/graphiql.gRPC
Schema published on Buf.
MPD
Anything that speaks MPD on
localhost:6600.Jellyfin
Native Jellyfin clients on
localhost:8096.S3
Upload tracks via the S3 protocol on
localhost:9000.Auto-generated REST pages
Every endpoint in the HTTP REST API has its own page generated from the canonical OpenAPI spec (openapi.json).
The spec is also served live at http://localhost:6063/openapi.json while
rockboxd is running.