Read and update Chatra visitors; send, edit and delete chat and pushed messages.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
WRITE, IRREVERSIBLE: delete an agent message from the conversation. Only agents' messages can be deleted, not visitors'. Returns the deleted message. DELETE /messages/{id}.
Chatra message id (from the reply of a send call or from a webhook).
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
WRITE, IRREVERSIBLE: delete an agent message from the conversation. Only agents' messages can be deleted, not visitors'. Returns the deleted message. DELETE /messages/{id}.
| Argument | Type | Description |
|---|---|---|
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id"
],
"properties": {
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}WRITE, IRREVERSIBLE: delete a pushed message sent earlier. Returns the deleted message. DELETE /pushedMessages/{id}.
| Argument | Type | Description |
|---|---|---|
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id"
],
"properties": {
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}WRITE: replace the text of an agent message that was sent earlier. Only agents' messages can be edited, not visitors'. The visitor sees the edited text. Returns the updated message. PUT /messages/{id}.
| Argument | Type | Description |
|---|---|---|
| text* | string | Message text (plain text, 1-5000 characters). |
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id",
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1,
"description": "Message text (plain text, 1-5000 characters)."
},
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}WRITE: replace the text of a pushed message sent earlier; the visitor sees the edited text. Returns the updated message. PUT /pushedMessages/{id}.
| Argument | Type | Description |
|---|---|---|
| text* | string | Message text (plain text, 1-5000 characters). |
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id",
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1,
"description": "Message text (plain text, 1-5000 characters)."
},
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}One chat message by id (a visitor's or an agent's): type (agent or client), text, visitor id, agent id, timestamp (ms) and receivedFrom. Chatra has no endpoint to list a conversation, so the id must come from a send call or a webhook. GET /messages/{id}.
| Argument | Type | Description |
|---|---|---|
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id"
],
"properties": {
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}One pushed (automated) message sent earlier by id: text, visitor id, agent id, timestamp (ms), isPushed. GET /pushedMessages/{id}.
| Argument | Type | Description |
|---|---|---|
| message_id* | string | Chatra message id (from the reply of a send call or from a webhook). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"message_id"
],
"properties": {
"message_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra message id (from the reply of a send call or from a webhook)."
}
}
}A chat visitor by id: name and contact details (basicInfo, integrationData and the merged `info`), custom form answers, location, browser, the link to the chat in the Chatra dashboard, the agent group, and the pages viewed in the latest visit. The id is the `clientId` your website passed to the widget or the visitor id from a Chatra webhook; Chatra has no endpoint to list or search visitors. GET /clients/{id}.
| Argument | Type | Description |
|---|---|---|
| client_id* | string | Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"client_id"
],
"properties": {
"client_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id)."
}
}
}WRITE: send an automated message (order status, product update, announcement) to a visitor whose account is bound to Chatra through a clientId. It is delivered into the visitor's chat on behalf of a random agent, a given agent (agent_id) or a random agent of a group (group_id). It reaches a real customer and cannot be unsent except by deleting it, so only call it with text the user asked you to send. Returns the new message with its id. POST /pushedMessages/.
| Argument | Type | Description |
|---|---|---|
| text* | string | Message text (plain text, 1-5000 characters). |
| agent_id | string | Chatra agent id (shown on the agent's page in Chatra). |
| group_id | string | Chatra agent group id (on the group's page); a random agent of the group writes. |
| client_id* | string | Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"client_id",
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1,
"description": "Message text (plain text, 1-5000 characters)."
},
"agent_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra agent id (shown on the agent's page in Chatra)."
},
"group_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra agent group id (on the group's page); a random agent of the group writes."
},
"client_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id)."
}
}
}WRITE: send a chat message to a visitor as a Chatra agent. The visitor sees it immediately in their chat window as if the agent typed it, so only call it with text the user asked you to send. It cannot be unsent except by deleting it. Say which agent writes: agent_id, or agent_email + agent_name + received_from (a dummy agent is created in Chatra when the email is unknown). For automated notices (order status, announcements) use chatra_push_message instead. Returns the new message with its id. POST /messages/.
| Argument | Type | Description |
|---|---|---|
| text* | string | Message text (plain text, 1-5000 characters). |
| agent_id | string | Chatra agent id (shown on the agent's page in Chatra). |
| client_id* | string | Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id). |
| agent_name | string | Agent display name (with agent_email). |
| agent_email | string | Agent email (instead of agent_id; needs agent_name and received_from). |
| received_from | string | Short name of the sending system, e.g. 'usefulapi-mcp'; marks the message in webhooks. |
WRITE: edit a visitor's basic info (name, email, phone, notes) exactly as if an agent edited it in the Chatra dashboard. Only the fields you pass change; `null` removes a value. Returns the updated visitor. PUT /clients/{id}.
| Argument | Type | Description |
|---|---|---|
| name | any | Visitor name; null removes it. |
| any | Visitor email; null removes it. | |
| notes | any | Agent notes about the visitor; null removes them. |
| phone | any | Visitor phone number; null removes it. |
| client_id* | string | Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"client_id"
],
"properties": {
"name": {
"anyOf": [
{
"type": "string",
"maxLength": 200,
"minLength": 1
},
{
"type": "null"
}
],
"description": "Visitor name; null removes it."
},
"email": {
"anyOf": [
{
"type": "string",
"maxLength": 320,
"minLength": 3
},
{
"type": "null"
}
],
"description": "Visitor email; null removes it."
},
"notes": {
"anyOf": [
{
"type": "string",
"maxLength": 5000,
"minLength": 1
},
{
"type": "null"
}
],
"description": "Agent notes about the visitor; null removes them."
},
"phone": {
"anyOf": [
{
"type": "string",
"maxLength": 50,
"minLength": 1
},
{
"type": "null"
}
],
"description": "Visitor phone number; null removes it."
},
"client_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id)."
}
}
}{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"client_id",
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 5000,
"minLength": 1,
"description": "Message text (plain text, 1-5000 characters)."
},
"agent_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra agent id (shown on the agent's page in Chatra)."
},
"client_id": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Chatra visitor id: the `clientId` your website passed to the chat widget (ChatraSetup.clientId) or the visitor id from a Chatra webhook (client.id)."
},
"agent_name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Agent display name (with agent_email)."
},
"agent_email": {
"type": "string",
"maxLength": 320,
"minLength": 3,
"description": "Agent email (instead of agent_id; needs agent_name and received_from)."
},
"received_from": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Short name of the sending system, e.g. 'usefulapi-mcp'; marks the message in webhooks."
}
}
}