A JSON-RPC 2.0 request message.
Requests have an id field and expect a response.
id
@type t() :: %MCP.Protocol.Messages.Request{ id: integer() | String.t(), jsonrpc: String.t(), method: String.t(), params: map() | nil }
@spec new(integer() | String.t(), String.t(), map() | nil) :: t()