Serveur MCP

trengo

io.usefulapi/trengo

Ce que fait ce MCP

Manages Trengo customer-support tickets, contacts, teams, messages, assignments, board cards, and operational reports.

trengo_assign_ticket
Assign a ticket
Assign a ticket to a user or a team, with an optional assignment note. Reversible by reassigning. Trengo: POST /tickets/{ticket_id}/assign.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id', 'type'], 'properties': {'note': {'type': 'string', 'description': 'Optional assignment note.'}, 'type': {'enum': ['user', 'team'], 'type': 'string', 'description': 'Assign to a user or to a team.'}, 'team_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The team id — required when type is team.', 'exclusiveMinimum': 0}, 'user_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The user id — required when type is user.', 'exclusiveMinimum': 0}, 'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}}}
trengo_close_ticket
Close a ticket
Close a ticket, optionally applying a ticket result (see trengo_list_ticket_results). Reversible with trengo_reopen_ticket. Trengo: POST /tickets/{ticket_id}/close.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id'], 'properties': {'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}, 'ticket_result_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Optional ticket result to apply.', 'exclusiveMinimum': 0}}}
trengo_create_board_card
Create a board card
Create a card (e.g. a deal or task) in a stage of a Trengo board. The board id is in the board's URL in Trengo. Trengo: POST /boards/{boardId}/cards.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['board_id', 'stage_id', 'name'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': "The card's name."}, 'board_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The board id.', 'exclusiveMinimum': 0}, 'stage_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The stage id.', 'exclusiveMinimum': 0}, 'description': {'type': 'string', 'description': "The card's description."}}}
trengo_create_contact
Create a contact
Create a contact on a channel. The identifier is the contact's address on that channel: an email address for email channels, a phone number for WhatsApp/SMS/voice. Trengo: POST /channels/{channel_id}/contacts.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['channel_id', 'identifier'], 'properties': {'name': {'type': 'string', 'description': "The contact's full name."}, 'channel_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The channel id.', 'exclusiveMinimum': 0}, 'identifier': {'type': 'string', 'minLength': 1, 'description': 'Email address or phone number, depending on the channel.'}}}
trengo_create_ticket
Create a ticket
Open a new ticket for an existing contact on a channel. Nothing is sent to the customer until you post a message with trengo_send_ticket_message. Trengo: POST /tickets.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['channel_id', 'contact_id'], 'properties': {'subject': {'type': 'string', 'description': 'Optional subject.'}, 'channel_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The channel id.', 'exclusiveMinimum': 0}, 'contact_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The contact id.', 'exclusiveMinimum': 0}}}
trengo_get_agent_performance
Get agent performance
Per-agent performance over a period: messages sent, notes, tickets assigned and closed, average first response and resolution times (with and without business hours). Trengo: GET /reporting/agent_performance.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'end_date': {'type': 'string', 'description': 'Period end as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'team_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these team ids.'}, 'user_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these user ids.'}, 'label_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these label ids.'}, 'start_date': {'type': 'string', 'description': 'Period start as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'channel_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these channel ids.'}}}
trengo_get_contact
Get a contact
Fetch one contact with name, email, phone and custom field data, optionally with notes. Trengo: GET /contacts/{id}.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['contact_id'], 'properties': {'contact_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The contact id.', 'exclusiveMinimum': 0}, 'include_notes': {'type': 'boolean', 'description': "Also return the contact's notes."}}}
trengo_get_email_message
Get an email message
Fetch the full email behind one message of a ticket: original HTML body, from, to, subject and Message-ID. The message must be an email message. Trengo: GET /tickets/{ticket_id}/full_email_messages/{message_id}.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id', 'message_id'], 'properties': {'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}, 'message_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The message id.', 'exclusiveMinimum': 0}}}
trengo_get_reporting_metrics
Get reporting metrics
Aggregate support metrics over a period: new, created, assigned, closed and reopened tickets, average first response time and average total resolution time (seconds). Filter by team, channel, label or direction. Trengo: GET /reporting/metrics.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['metrics'], 'properties': {'metrics': {'type': 'array', 'items': {'enum': ['new_tickets', 'assigned_tickets', 'average_total_resolution_time', 'average_first_response_time', 'created_tickets', 'closed_tickets', 'reopened_tickets'], 'type': 'string'}, 'minItems': 1, 'description': 'Which metrics to return.'}, 'end_date': {'type': 'string', 'description': 'Period end as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'team_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these team ids.'}, 'direction': {'enum': ['INBOUND', 'OUTBOUND'], 'type': 'string', 'description': 'Only INBOUND or OUTBOUND conversations.'}, 'label_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these label ids.'}, 'start_date': {'type': 'string', 'description': 'Period start as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'channel_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these channel ids.'}}}
trengo_get_ticket_details_report
Get ticket details report
Per-ticket reporting rows: status, assignee, labels, first reply, first resolution and total resolution times (with and without business hours). Filter by team, channel, label, direction, status and created/closed/assigned date ranges; sort by a timing metric. For large accounts page with start_after_ticket_id instead of page. Trengo: GET /reporting/details/ticket.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'sort_by': {'enum': ['first_resolution_time_opening_hours', 'first_resolution_time', 'first_response_time_opening_hours', 'first_response_time', 'total_resolution_time_opening_hours', 'total_resolution_time', 'created_at', 'assigned_at', 'closed_at'], 'type': 'string', 'description': 'Sort column.'}, 'statuses': {'type': 'array', 'items': {'enum': ['OPEN', 'ASSIGNED', 'CLOSED', 'INVALID'], 'type': 'string'}, 'description': 'Only tickets in these statuses.'}, 'team_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these team ids.'}, 'direction': {'enum': ['INBOUND', 'OUTBOUND'], 'type': 'string', 'description': 'Only INBOUND or OUTBOUND conversations.'}, 'label_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these label ids.'}, 'sort_order': {'enum': ['asc', 'desc'], 'type': 'string', 'description': 'Sort direction.'}, 'channel_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these channel ids.'}, 'closed_end_date': {'type': 'string', 'description': 'Closed-until as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'created_end_date': {'type': 'string', 'description': 'Created-until as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'assigned_end_date': {'type': 'string', 'description': 'Assigned-until as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'closed_start_date': {'type': 'string', 'description': 'Closed-from as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'created_start_date': {'type': 'string', 'description': 'Created-from as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'assigned_start_date': {'type': 'string', 'description': 'Assigned-from as ISO 8601, e.g. 2026-09-01T00:00:00+00:00. Give it together with its pair.'}, 'start_after_ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Keyset cursor: return tickets after this ticket id (replaces page for huge accounts).', 'exclusiveMinimum': 0}}}
trengo_list_contact_groups
List contact groups
List the contact groups in the account — use their ids with trengo_update_contact. Trengo: GET /contact_groups.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}}}
trengo_list_contacts
List or search contacts
List contacts, or search them by name, email or phone number. Trengo: GET /contacts.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'term': {'type': 'string', 'description': 'Search term, matched on email, phone number and name.'}, 'include_last_interaction': {'type': 'boolean', 'description': "Also return each contact's last interaction."}}}
trengo_list_custom_fields
List custom fields
List the custom fields defined for tickets, contacts and profiles. Trengo: GET /custom_fields.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}}}
trengo_list_labels
List labels
List the ticket labels (tags) in the account, for filtering tickets and reports. Trengo: GET /labels.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}}}
trengo_list_quick_replies
List quick replies
List the saved quick replies (canned responses), optionally only the messaging or email ones — useful for drafting consistent answers. Trengo: GET /quick_replies.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'type': {'enum': ['MESSAGING', 'EMAIL'], 'type': 'string', 'description': 'Only quick replies of this type.'}}}
trengo_list_teams
List teams
List the teams in the account — use their ids to assign tickets to a team. Trengo: GET /teams.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}}}
trengo_list_ticket_messages
List a ticket's messages
List the messages of one ticket — inbound, outbound and internal notes — with the contact or agent behind each. Trengo: GET /tickets/{ticket_id}/messages.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id'], 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}}}
trengo_list_ticket_results
List ticket results
List the ticket results (closing outcomes, e.g. 'Resolved', 'Sale') that can be applied when closing a ticket. Trengo: GET /ticket_results.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}}}
trengo_list_tickets
List tickets
List tickets (conversations) visible to the token's user, newest activity first, with channel and latest message. Filter by status, contact, assignee, channel, label, last message direction or update time. Trengo: GET /tickets.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'sort': {'enum': ['-date', 'date'], 'type': 'string', 'description': 'By last message time: -date newest first (default), date oldest first.'}, 'users': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these assigned user ids.'}, 'labels': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these label ids.'}, 'status': {'enum': ['OPEN', 'ASSIGNED', 'CLOSED', 'INVALID'], 'type': 'string', 'description': 'Only tickets in this status. INVALID = spam.'}, 'channels': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Only these channel ids.'}, 'contact_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Only tickets of this contact.', 'exclusiveMinimum': 0}, 'updated_at_gt': {'type': 'string', 'description': 'Only tickets updated after this date-time.'}, 'last_message_type': {'enum': ['INBOUND', 'OUTBOUND'], 'type': 'string', 'description': 'Only tickets whose last message was INBOUND or OUTBOUND.'}}}
trengo_list_users
List users
List the agents (users) in the Trengo account — use their ids to assign tickets or filter. Trengo: GET /users.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'page': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Page number (1-based). Omit for the first page.'}, 'sort': {'enum': ['id', 'first_name', 'last_name', 'created_at'], 'type': 'string', 'description': 'Sort column (default id).'}}}
trengo_reopen_ticket
Reopen a ticket
Reopen a closed ticket. Trengo: POST /tickets/{ticket_id}/reopen.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id'], 'properties': {'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}}}
trengo_send_ticket_message
Send a ticket message
Post a message on a ticket. With internal_note=true it is an internal note visible only to agents. OTHERWISE IT IS DELIVERED TO THE CUSTOMER on the ticket's channel (email, WhatsApp, chat...) and cannot be recalled — confirm the text first. Trengo: POST /tickets/{ticket_id}/messages.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['ticket_id', 'message'], 'properties': {'message': {'type': 'string', 'minLength': 1, 'description': 'The message. May contain HTML when the channel is email.'}, 'subject': {'type': 'string', 'description': "Email channels only. Trengo prefixes it with 'Re:' when replying."}, 'ticket_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The ticket id.', 'exclusiveMinimum': 0}, 'internal_note': {'type': 'boolean', 'description': 'true = internal note for agents only; false/omitted = sent to the customer.'}, 'attachment_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Email channels only: ids of previously uploaded attachments.'}}}
trengo_update_board_card
Update a board card
Partially update a board card: rename it, move it to another stage, or set its users (owners) and contacts (leads). user_ids / contact_ids replace the current sets. Trengo: PUT /boards/{boardId}/cards/{cardId}.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['board_id', 'card_id'], 'properties': {'name': {'type': 'string', 'description': "The card's new name."}, 'card_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The card id.', 'exclusiveMinimum': 0}, 'board_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The board id.', 'exclusiveMinimum': 0}, 'stage_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Move the card to this stage.', 'exclusiveMinimum': 0}, 'user_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Trengo user ids on the card, e.g. deal owners (replaces the set).'}, 'contact_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'Trengo contact ids on the card, e.g. leads (replaces the set).'}}}
trengo_update_contact
Update a contact
Rename a contact and/or set the contact groups it belongs to. contact_group_ids REPLACES the contact's groups. Trengo: PUT /contacts/{id}.
Destructif
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['contact_id'], 'properties': {'name': {'type': 'string', 'description': "The contact's new name."}, 'contact_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'The contact id.', 'exclusiveMinimum': 0}, 'contact_group_ids': {'type': 'array', 'items': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'description': 'The full set of contact group ids (replaces the current groups).'}}}
Ajouté
trengo_update_board_card
2 October 2026 02:40
Ajouté
trengo_create_board_card
2 October 2026 02:40
Ajouté
trengo_update_contact
2 October 2026 02:40
Ajouté
trengo_create_contact
2 October 2026 02:40
Ajouté
trengo_send_ticket_message
2 October 2026 02:40
Ajouté
trengo_reopen_ticket
2 October 2026 02:40
Ajouté
trengo_close_ticket
2 October 2026 02:40
Ajouté
trengo_assign_ticket
2 October 2026 02:40
Ajouté
trengo_create_ticket
2 October 2026 02:40
Ajouté
trengo_get_ticket_details_report
2 October 2026 02:40
Ajouté
trengo_get_agent_performance
2 October 2026 02:40
Ajouté
trengo_get_reporting_metrics
2 October 2026 02:40
Ajouté
trengo_list_quick_replies
2 October 2026 02:40
Ajouté
trengo_list_custom_fields
2 October 2026 02:40
Ajouté
trengo_list_ticket_results
2 October 2026 02:40
Ajouté
trengo_list_labels
2 October 2026 02:40
Ajouté
trengo_list_teams
2 October 2026 02:40
Ajouté
trengo_list_users
2 October 2026 02:40
Ajouté
trengo_list_contact_groups
2 October 2026 02:40
Ajouté
trengo_get_contact
2 October 2026 02:40
Ajouté
trengo_list_contacts
2 October 2026 02:40
Ajouté
trengo_get_email_message
2 October 2026 02:40
Ajouté
trengo_list_ticket_messages
2 October 2026 02:40
Ajouté
trengo_list_tickets
2 October 2026 02:40