JSON-RPC server and client