JSON-RPC messages
Now that we’ve explained the overall flow, let’s see what the JSON-RPC messages look like.
Like with most MCP features, there are specific messages in JSON-RPC that need to be sent and received:
Request message
{
"jsonrpc": "2.0",
"id": 1,
"method": "elicitation/create",
"params": {
"message": "Please provide your GitHub username",
"requestedSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": ["name"]
}
}
}
In the preceding message, we can see how message contains the payload for what we’re asking for – a user choice to be made or some explanation of what we’re asking for. requestedSchema is a schema that defines what information you need...