Conversation Ask¶
Ask a question in a conversation and optionally wait for the user's response.
MCP name: conversation_ask
Category: conversations
Mutates state (retry policy: manual)
Parameters¶
| Name | Type | Required | Description |
|---|---|---|---|
choices |
array |
No | For choice type: [{key, label}] or [str] |
consumer |
string |
No | Optional persisted conversation consumer identity. Supply together with generation to fence a background driver's question to its live lease. |
conversation_id |
string |
Yes | Conversation ID |
generation |
string |
No | Optional live lease generation. Supply together with consumer; a stale or revoked generation returns lease_lost without asking. |
message_id |
string |
No | Caller-stable idempotency key; required for Co-work document-agent questions so their output-manifest binding can be replayed safely. |
question |
string |
Yes | Question text |
response_type |
string |
No | freeform (default), boolean, or choice |
timeout_seconds |
integer |
No | Block and wait for response (max 110s) |
Details¶
consumer and generation form an optional lease fence for long-lived
conversation drivers. They must be supplied together. The question and lease
check share one transaction, so a stopped, rotated, or closed generation cannot
ask a late question.
Co-work document-agent questions also require message_id. The stable key
binds the persisted assistant turn to the exact ordered Sources/Agent Execution
input manifest and prevents an ambiguous retry from creating another question.