Update ticket
Set owner, tags and status, snooze the ticket or mention a teammate.
MCP tool edesk_write → update_ticket
Changes the ticket options. owner_id assigns the one owner a ticket can have and replaces the current one. add_tags adds tags and keeps the existing ones. status moves the ticket to to_do, waiting, resolved or spam. snooze_until hides the ticket from New and To Do until that time, then it returns to where it was. mention_user_id tags a teammate without changing the owner, and the ticket shows in their Mentioned section. Only the fields you pass change. Assigning and mentioning notify teammates, and resolving a ticket takes it off the queue. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| ticket_id integer required | integer | Ticket ID from list_tickets, the number eDesk shows as Ticket ID. |
| status enum | enum | to_do, waiting, resolved or spam. |
| owner_id integer | integer | User ID from list_users. |
| add_tags string[] | string[] | Tag names from list_tags to add, keeping the existing ones. |
| mention_user_id integer | integer | User ID from list_users to mention on the ticket. |
| snooze_until datetime | datetime | Snooze the ticket until this time (ISO 8601). |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "edesk_write",
"arguments": {
"operation": "update_ticket",
"arguments": {
"ticket_id": 48212,
"owner_id": 3105,
"add_tags": [
"Returns"
]
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"ticket_id": 48212,
"status": "to_do",
"owner": {
"user_id": 3105,
"name": "Marco Silva"
},
"tags": [
"Returns"
],
"mentioned": [],
"snoozed_until": null
},
"isError": false
}