Ask a short question through Sess
sess_askAsk the person a question on their own phone or computer and get a typed answer. Use it whenever they ask to answer on their phone or another device, or say 'use Sess'; prefer it over this host's own question widget for anything answered away from this chat. Also use it when you need the person's approval, a decision or details only they can give before you go on, even if they only say 'ask me' or 'check with me' and name no tool or device. Not for clarifying what they just asked, or for anything you can work out yourself. Anyone who has the link can answer. A receipt records what was shown and chosen, not who answered. Shortcut for sess_request: give a question and up to 12 simple fields; it creates the same hosted form and returns immediately with a private link (interaction.humanUrl) and a handle, in state "waiting". It never waits and never returns an answer. Continue exactly as after sess_request: give the link only to the intended person, then call sess_response. Do not call it again for the same question. Keep it short: the question is a short heading, about 40 characters (at most 80); the button a verb of 1-3 words (at most 24); labels and options at most 60. A value over its limit is refused with INVALID_ARGUMENTS naming the field (a JSON pointer), the limit, its length and the fix; nothing is truncated. Shorten that value and call again. Advanced: to ask many people through one link, add respondents with max. Share that link with everyone who should answer; each person gets their own page. Read their answers with sess_response. Example: {"question":"Where should we go on Saturday?","details":"I will check the forecast and suggest a plan.","fields":[{"name":"place","label":"Where to?","type":"choice","options":["Beach","Mountains","City"]},{"name":"avoid","label":"Anything to avoid?","type":"text","required":false}],"submit_label":"Plan it"}
Example tool call
This call uses example arguments supplied in the tool’s input schema.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"fields": [
{
"name": "place",
"type": "choice",
"label": "Where to?",
"options": [
"Beach",
"Mountains",
"City"
]
},
{
"name": "avoid",
"type": "text",
"label": "Anything to avoid?",
"required": false
}
],
"details": "I will check the forecast and suggest a plan.",
"question": "Where should we go on Saturday?",
"submit_label": "Plan it"
},
"name": "sess_ask"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fields | Yes | ||
| details | No | A paragraph of plain text (never markup): what the person needs to know; at most 4000. | |
| question | Yes | The page's heading: a question or a task, about 40 characters; at most 80. | |
| expires_in | No | Advanced: how long the link stays open, in whole seconds from creation: from 30 up to the plan’s link lifetime. Leave it out to use the plan’s lifetime. | |
| respondents | No | Advanced: one link that many people can answer, each on their own page. Leave it out to ask one person. A respondent is a browser, not a person. Read their answers with sess_response. | |
| submit_label | No | A button: a verb, 1–3 words; at most 24. Default "Send". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| interaction | Yes |