ticketing
Thena
Connect Thena to Elaichi and hand every teammate a governed MCP endpoint — 131 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.
AI tools
Thena tools for your AI agents
131 tools are ready to mint as an MCP endpoint the moment you connect Thena — governed by the same roles, restrictions, and audit log as everything else in Elaichi.
list_all_thena_accounts
List all Thena accounts with optional pagination. Returns account objects including id, name, statusId, status, classificationId, classification, primaryDomain, accountOwner, accountOwnerId, accountOwnerEmail, customFieldValues, createdAt, and updatedAt.
create_a_thena_account
Create a new account in Thena. Returns the created account including id, name, source, primaryDomain, status, classification, health, industry, customFieldValues, metadata, createdAt, and updatedAt. Required: name, primaryDomain.
get_single_thena_account_by_id
Get a single Thena account by id. Returns the full account object including id, name, source, primaryDomain, status, classification, health, industry, accountOwner, and createdAt. Required: id.
update_a_thena_account_by_id
Update a Thena account by id. Returns the updated account object including id, name, source, primaryDomain, status, classification, health, and updatedAt. Required: id.
delete_a_thena_account_by_id
Delete a Thena account by id. Returns an empty 204 response on success. Required: id.
thena_accounts_filter_by_ids
Retrieve multiple Thena accounts by their ids. Returns account objects including id, name, source, primaryDomain, status, classification, health, and createdAt for each matching account. Required: ids.
thena_accounts_get_attributes
Get all account attribute values in Thena filtered by attribute type. Returns: id, attribute, value, isDefault, createdAt, updatedAt, name, source, logo, statusId, status, statusConfiguration, classificationId, classification, classificationConfiguration, healthId, health, healthConfiguration, industryId, industry, industryConfiguration, primaryDomain, secondaryDomain, accountOwner,…
list_all_thena_account_contacts
List Thena customer contacts for an account. Returns contacts including userId, user, userEmail, contactTypeId, contactType, createdAt, and updatedAt. Required: accountId.
create_a_thena_account_contact
Create a new customer contact in Thena. Returns: id, createdAt, updatedAt. Required: firstName, email.
update_a_thena_account_contact_by_id
Update an existing Thena customer contact by id. Returns: id, createdAt, updatedAt. Required: id.
delete_a_thena_account_contact_by_id
Delete a Thena customer contact by id. Returns an empty 204 response on success. Required: id.
thena_account_contacts_bulk_create
Create multiple customer contacts in bulk in Thena. Returns: total, created, skipped. Required: contacts.
thena_account_contacts_ingest
Ingest user contacts into Thena from an external source. Returns an array of ingested contact objects including uid, firstName, lastName, email, phoneNumber, avatarUrl, contactType, createdAt, and updatedAt. Required: users.
thena_account_contacts_filter_by_ids
Filter Thena customer contacts by a list of IDs. Returns matching contacts including id, firstName, lastName, email, phoneNumber, avatarUrl, accounts, contactTypeId, contactType, customFieldValues, metadata, createdAt, and updatedAt. Required: ids.
create_a_thena_account_activity
Create a new account activity in Thena. Returns the created activity object including id, accountId, account, activityTimestamp, duration, location, title, description, type, typeId, typeConfiguration, status, statusId, statusConfiguration, participants, creator, creatorId, creatorEmail, attachments, createdAt, updatedAt, and metadata. Required: accountId, activityTimestamp, title.
list_all_thena_account_activities
List account activities in Thena, optionally filtered by account, type, or status. Returns activities with id, accountId, title, activityTimestamp, type, status, participants, and metadata.
update_a_thena_account_activity_by_id
Update an existing account activity in Thena by id. Returns the updated activity object including id, accountId, title, activityTimestamp, type, status, participants, and metadata. Required: id.
delete_a_thena_account_activity_by_id
Delete a Thena account activity by id. Returns an empty 204 response on success.
thena_account_activities_remove_attachment
Remove an attachment from a Thena account activity. Returns an empty 204 response on success. Required: activity_id, attachment_id.
create_a_thena_account_note
Create a new account note in Thena. Returns the created note including id, accountId, account, content, type, typeId, typeConfiguration, visibility, attachments, author, authorId, authorEmail, createdAt, updatedAt, and metadata. Required: accountId, content.
list_all_thena_account_notes
List account notes in Thena, optionally filtered by account ID or type. Returns each note with id, accountId, account, content, type, visibility, attachments, author, createdAt, and updatedAt.
update_a_thena_account_note_by_id
Update an account note in Thena by id. Returns the updated note including id, accountId, account, content, type, typeId, visibility, attachments, author, authorEmail, createdAt, and updatedAt. Required: id.
delete_a_thena_account_note_by_id
Delete an account note in Thena by id. Returns an empty 204 response on success. Required: id.
thena_account_notes_remove_attachment
Remove a specific attachment from an account note in Thena. Returns an empty 204 response on success. Required: note_id, attachment_id.
create_a_thena_account_task
Create a new account task in Thena. Returns the created task including id, accountId, title, status, priority, assigneeId, attachments, createdAt, and updatedAt. Required: accountId, title, assigneeId.
list_all_thena_account_tasks
List account tasks in Thena, filterable by account, activity, assignee, type, status, and priority. Returns: id, accountId, account, activityId, title, description, assigneeId, type, typeId, typeConfiguration, status, statusId, statusConfiguration, priority, priorityId, priorityConfiguration, attachments, isActive, creator, creatorId, creatorEmail, createdAt, updatedAt, metadata.
update_a_thena_account_task_by_id
Update an existing account task in Thena by id. Returns: id, type, createdAt, updatedAt. Required: id.
delete_a_thena_account_task_by_id
Delete an account task in Thena by id. Returns an empty 204 response on success. Required: id.
thena_account_tasks_remove_attachment
Remove an attachment from an account task in Thena. Returns an empty 204 response on success. Required: task_id, attachment_id.
create_a_thena_comment
Create a new comment on an entity in Thena. Returns the created comment object including id, content, commentType, commentVisibility, author, createdAt, and attachments. Required: entityType, entityId.
delete_a_thena_comment_by_id
Delete a Thena comment by id. Returns an empty 204 response on success. Required: id.
get_single_thena_comment_by_id
Get a single Thena comment by id. Returns the full comment object including id, content, commentType, commentVisibility, author, authorId, createdAt, and attachments. Required: id.
thena_comments_list_threads
List threaded replies for a comment in Thena. Returns an array of comment objects with id, content, commentVisibility, author, authorId, createdAt, and attachments. Required: comment_id.
thena_comments_list_by_user_type
Get comments for an entity in Thena filtered by user type. Returns comment objects with id, content, commentVisibility, author, authorUserType, createdAt, and attachments. Required: entityType, entityId, userType.
list_all_thena_comments
List comments on an entity in Thena. Returns each comment's id, content, isEdited, commentType, author, createdAt, updatedAt, and attachments. Required: entityType, entityId.
update_a_thena_comment_by_id
Update a comment in Thena by id. Returns the updated comment including id, content, contentMarkdown, isEdited, commentType, author, createdAt, and updatedAt. Required: id, content (1–5000 characters).
create_a_thena_custom_field
Create a new custom field in Thena. Returns the created custom field including its name, uid, slug, organizationId, options, metadata, isActive, createdAt, and updatedAt. Required: name, source, fieldType.
delete_a_thena_custom_field_by_id
Delete one or more custom fields in Thena by field ID and version. Returns an empty 204 response on success. Required: fields.
thena_custom_fields_get_types
Get all available custom field types in Thena, grouped by category. Returns: text, numeric, choice, date, user, specialized, file, calculated, lookup, geographic, rating, toggle.
list_all_thena_custom_fields
List all custom fields in Thena. Returns: name, uid, slug, organizationId, options, metadata, createdAt, updatedAt, isActive, teamId, autoAddToAllForms, hintText, placeholderText, mandatoryOnCreation, mandatoryOnClose, visibleToCustomer, editableByCustomer, defaultValue.
thena_custom_fields_get_restricted_fields
Get all Thena-restricted fields that cannot be customized, with optional filtering by team and field types. Returns: id, name, fieldType, description.
thena_custom_fields_get_by_ids
Fetch Thena custom fields by their IDs in bulk. Returns: name, uid, slug, organizationId, options, metadata, createdAt, updatedAt, isActive, teamId, autoAddToAllForms, hintText, placeholderText, mandatoryOnCreation, mandatoryOnClose, visibleToCustomer, editableByCustomer, defaultValue. Required: ids.
thena_custom_fields_search
Search Thena custom fields by name with optional team filtering. Returns: name, uid, slug, organizationId, options, metadata, createdAt, updatedAt, isActive, teamId, autoAddToAllForms, hintText, placeholderText, mandatoryOnCreation, mandatoryOnClose, visibleToCustomer, editableByCustomer, defaultValue. Required: term.
thena_custom_fields_bulk_update
Update a Thena custom field's configuration. Returns: createdAt, updatedAt. Required: uid.
thena_csat_create_rule
Create a CSAT rule for a team in Thena with filters, trigger configuration, and feedback form settings. Returns: ok, data (the team's CSAT settings including id, team, organization, isEnabled, cooldownPeriodDays, rules, createdAt, updatedAt). Required: team_uid.
thena_csat_delete_rule
Delete a CSAT rule by ID in Thena. Returns an empty 204 response on success. Required: id.
thena_csat_get_rule
Get a single CSAT rule by ID in Thena. Returns: id, name, description, isActive, priority, allFilters, anyFilters, triggerConfig, feedbackConfig, createdAt, updatedAt. Required: id.
thena_csat_get_settings
Get CSAT settings for a team in Thena, including cooldown periods, closed status IDs, and all configured rules. Returns: data, status, message, timestamp, statusCode, error. Required: team_uid.
thena_csat_reorder_rules
Reorder the priority of CSAT rules for a team in Thena by submitting an ordered array of rule IDs. Returns: ok, data. Required: team_uid.
thena_csat_submit
Submit CSAT feedback for a Thena survey. Returns: success, message. Required: token.
thena_csat_bulk_update
Update the CSAT settings for a Thena team. Returns: ok and data containing id, team, organization, isEnabled, cooldownPeriodDays, userCooldownPeriodDays, emailConfigId, closedStatusIds, rules, createdAt, updatedAt. Required: team_uid, cooldownPeriodDays, emailConfigId, userCooldownPeriodDays, closedStatusIds.
thena_csat_update_rule
Update a CSAT rule by id. Required: id.
thena_emoji_actions_list_actions
List all available emoji actions in Thena. Returns a list of action name strings such as ticket-to-closed, ticket-to-in-progress, and ticket-to-on-hold.
thena_emoji_actions_delete_action
Delete an emoji action by team and action id in Thena. Returns an empty 204 response on success. Required: team_id, emoji_action_id.
thena_emoji_actions_list_team_actions
List all emoji actions configured for a specific team in Thena. Returns a list of action name strings such as ticket-to-closed, ticket-to-in-progress, and ticket-to-on-hold. Required: team_id.
thena_emoji_actions_map_action
Map an emoji action for a team in Thena. Returns: ok, data. Required: team_id.
thena_emoji_actions_update_action_by_id
Update a specific emoji action mapping in Thena by team and emoji action IDs. Returns: ok, data. Required: team_id, emoji_action_id, emoji, action.
thena_emoji_actions_bulk_update
Update an existing emoji action mapping for a team in Thena by specifying a new action and its associated emojis. Returns: ok, data. Required: team_id, action, emojis.
list_all_thena_forms
List all Thena forms, optionally filtered by team or escalation type. Returns: id, name, description, fields, conditions, version, isActive, createdAt, updatedAt, channels, teamId, order.
create_a_thena_form
Create a new Thena form with fields, conditions, and channel assignments. Returns the created form including id, name, description, isActive, version, default, order, fields, conditions, channels, teamId, createdAt, updatedAt. Required: name.
delete_a_thena_form_by_id
Delete one or more Thena forms in batch by formId and version. Default forms cannot be deleted. Returns an empty 204 response on success. Required: forms.
thena_forms_get_by_ids
Retrieve specific Thena forms by their IDs. Returns: id, name, description, fields, conditions, version, isActive, createdAt, updatedAt, channels, teamId, order. Required: ids.
thena_forms_order
Reorder Thena forms by specifying new display positions for each form. Returns the updated forms including id, name, description, isActive, version, default, order, fields, conditions, channels, teamId, createdAt, updatedAt. Required: forms.
thena_forms_search
Search Thena forms by name with optional team filtering. Returns a list of forms with id, name, description, fields, conditions, version, isActive, default, channels, and order. Required: term.
thena_forms_bulk_update
Update a Thena form by formId and version with partial updates to fields, conditions, channels, and other form attributes. Returns the updated form including id, name, description, fields, conditions, version, isActive, default, createdAt, updatedAt, channels, teamId, and order. Required: formId, version, updates.
thena_storage_upload
Upload a single file to Thena storage. Returns: id. The optional expiry query parameter sets the file's expiration duration (1d, 1w, 1m, 1y) when shouldExpire is enabled.
list_all_thena_tags
List all tags in Thena, optionally filtered by type. Returns: id, name, color, createdAt, updatedAt, description.
update_a_thena_tag_by_id
Update a Thena tag by id. Returns the updated tag object including id, name, color, createdAt, updatedAt, and description. Required: id, name, color. Name must be 1–50 characters and color must be a valid hex color.
delete_a_thena_tag_by_id
Delete a Thena tag by id. Returns an empty 204 response on success. Required: id.
create_a_thena_tag
Create a new tag in Thena. Returns the created tag object including id, name, color, createdAt, updatedAt, and description. Required: name, color. Name must be 1–50 characters and color must be a valid hex color.
thena_tags_create_team_tag
Create a new tag for a particular team in Thena. Returns: count, items, id, name, color, createdAt, updatedAt. Required: team_uuid, name, color. Name must be 1–50 characters and color must be a valid hex color.
get_single_thena_tag_by_id
Get a specific Thena tag by id. Required: id.
thena_tags_list_team_tags
List all tags for a particular team. Required: team_uuid.
thena_tags_remove_team_tag
Remove a tag from a particular team. Required: team_uuid, tag_uuid.
thena_tags_update_team_tag
Update a tag for a particular team. Required: team_uuid, tag_uuid.
create_a_thena_team
Create a new team in Thena. Returns the created team object including id, name, teamId, identifier, teamOwner, isActive, isPrivate, and createdAt. Required: name.
update_a_thena_team_by_id
Update an existing team in Thena by id. Returns the updated team object including id, name, teamId, identifier, isActive, isPrivate, and updatedAt. Required: id.
delete_a_thena_team_by_id
Delete a team in Thena by id. Returns an empty 204 response on success. Required: id.
get_single_thena_team_by_id
Get a single team in Thena by id. Returns the team object including id, name, teamId, identifier, teamOwner, isActive, isPrivate, createdAt, and updatedAt. Required: id.
thena_teams_update_routing_rule
Update a Thena team routing rule identified by team_id and rule_id. Returns the updated routing rule with id, name, teamId, evaluationOrder, resultTeamId, fallbackTeamId, andRules, orRules, description, createdBy, createdById, createdAt, and updatedAt. Required: team_id, rule_id.
thena_teams_create_routing_rule
Update a team routing rule in Thena. Returns the routing rule object including id, name, teamId, evaluationOrder, resultTeamId, fallbackTeamId, andRules, orRules, createdBy, createdAt, createdById, updatedAt, and description. Required: team_id.
list_all_thena_teams
List all teams that the current user is part of.
thena_teams_list_public
List all public teams.
thena_teams_add_member
Add a member to a team. Required: team_id.
thena_teams_list_members
List all members of a team. Required: team_id.
thena_teams_remove_member
Remove a member from a team. Required: team_id, member_id.
thena_teams_list_sub_teams
List sub-teams for a team. Required: team_id.
thena_teams_get_configurations
Get configurations for a team. Required: team_id.
thena_teams_update_configurations
Update configurations for a team. Required: team_id.
thena_teams_get_routing
Get routing rules for a team. Required: team_id.
thena_teams_delete_routing_rule
Delete a team routing rule. Required: team_id, rule_id.
thena_reactions_list_emojis
List all available reaction emojis in Thena. Returns: id, name, unicode, url, aliases, keywords, createdAt, updatedAt, statusCode, message, error.
thena_reactions_remove
Remove a reaction from a comment in Thena. Returns an empty 204 response on success. Required: comment_id, reaction_name, impersonatedUserEmail.
thena_reactions_add
Add a reaction to a comment in Thena. Returns a boolean confirming the reaction was successfully added. Required: comment_id, name.
thena_search_entity_search
Search a specific Thena collection (tickets, comments, accounts, customer_contacts, help_center, users, organization, teams) by query string across specified fields. Returns: id, uid, ticketIdentifier, ticketId, title, description, source, accountId, account, status, statusId, statusName, statusUid, priority, priorityId, priorityName, priorityUid, storyPoints, type, typeId, typeName, typeUid,…
thena_search_federated_search
Run multiple federated searches across Thena collections in a single POST request. Each search in the array specifies a query string and fields to query by. Returns: id, uid, ticketIdentifier, ticketId, title, description, source, accountId, account, status, statusId, statusName, statusUid, priority, priorityId, priorityName, priorityUid, storyPoints, type, typeId, typeName, typeUid, typeIcon,…
list_all_thena_users
List Thena users with their scheduling configuration. Returns: timezone, userId, dailyConfig, commonDailyConfig, createdAt, updatedAt.
thena_users_get_current
Get the current authenticated user's details in Thena. Returns: id, name, email, userType, status, isActive, lastLoginAt, avatarUrl, timezone, createdAt, updatedAt.
thena_users_get_details
Fetch the current user's detailed profile from Thena. Returns: id, name, email, userType, status, isActive, lastLoginAt, avatarUrl, timezone, createdAt, updatedAt.
update_a_thena_user_by_id
Update the current user details.
thena_users_update_availability
Update the current user availability.
thena_users_update_working_hours
Update the current user working hours / business hours.
thena_users_list_time_off
List time-off entries for the current user.
thena_users_create_time_off
Create a time-off entry for the current user.
thena_users_update_time_off
Update a time-off entry by id. Required: id.
thena_users_delete_time_off
Delete a time-off entry by id. Required: id.
list_all_thena_tickets
List Thena tickets with optional team and date range filters. Returns: id, ticketIdentifier, title, ticketId, description, source, accountId, status, statusId, priority, priorityId, storyPoints, account, teamId, teamName, teamIdentifier, subTeamId, subTeamName, subTeamIdentifier, isPrivate, typeId, type, assignedAgent, assignedAgentId, assignedAgentEmail, assignedAgentAvatar, requestorEmail,…
create_a_thena_ticket
Create a new ticket in Thena. Returns the created ticket object including id, ticketIdentifier, title, ticketId, status, priority, teamId, requestorEmail, assignedAgentEmail, sentiment, isEscalated, and a nested comment object with its own id, content, author, and timestamps. Required: title, requestorEmail, teamId.
update_a_thena_ticket_by_id
Update a Thena ticket by id. Returns the updated ticket object including id, title, description, status, priority, teamId, assignedAgentEmail, createdAt, updatedAt. Required: id.
delete_a_thena_ticket_by_id
Delete a Thena ticket by id. Returns an empty 204 response on success. Required: id.
thena_tickets_list_statuses
List all ticket statuses in Thena, optionally filtered by team. Returns: id, name, displayName, description, isDefault, teamId, organizationId, createdAt, updatedAt, parentStatusId.
thena_tickets_list_priorities
List all ticket priorities in Thena for a given team. Returns: id, name, displayName, description, teamId, organizationId, isDefault. Required: teamId.
get_single_thena_ticket_by_id
Get a single Thena ticket by id. Returns the full ticket object including id, ticketIdentifier, title, description, status, priority, assignedAgent, teamName, createdAt, updatedAt, and team/sub-team metadata. Required: id.
thena_tickets_create_status
Create a new ticket status in Thena. Returns: id, name, displayName, description, isDefault, teamId, organizationId, createdAt, updatedAt, parentStatusId. Required: name, teamId, parentStatusId.
thena_tickets_update_status
Update a ticket status in Thena by id. Returns: id, name, displayName, description, isDefault, teamId, organizationId, createdAt, updatedAt, parentStatusId. Required: id.
thena_tickets_delete_status
Delete a ticket status in Thena by id. Returns an empty 204 response on success. Required: id, fallback.
thena_tickets_bulk_create
Create multiple tickets in bulk in Thena. Returns: id, title. Required: tickets.
thena_tickets_bulk_update
Update multiple tickets in bulk in Thena by ticket IDs. Returns: updated, skipped. Required: ticketIds.
thena_tickets_bulk_delete
Delete multiple tickets in bulk in Thena by providing an array of ticket IDs. Returns an empty 204 response on success. Required: ticketIds.
thena_tickets_archive
Archive a ticket by id. Required: id.
thena_tickets_unarchive
Unarchive a ticket by id. Required: id.
thena_tickets_assign
Assign a ticket to an agent. Required: id.
thena_tickets_reassign_team
Reassign a ticket to a team. Required: id.
thena_tickets_comment
Comment on a ticket. Required: id.
thena_tickets_list_comments
Get comments for a ticket. Required: id.
thena_tickets_get_related
Get related tickets for a ticket. Required: id.
thena_tickets_get_status
Get a ticket status by its id. Required: id.
thena_tickets_bulk_archive
Archive tickets in bulk.
thena_tickets_list_tags
Get all tags for a ticket. Required: id.
thena_tickets_add_tags
Add tags to a ticket. Required: id.
thena_tickets_remove_tag
Remove a tag from a ticket. Required: id, tag_id.
How it works
From Thena account to governed MCP endpoint
Connect
Link a Thena account through Elaichi's hosted connect flow. Credentials are vaulted — nobody, including the AI, ever sees them.
Compose
The connection becomes a toolbox instantly. Curate which Thena tools are exposed, rename them, or freeze arguments.
Mint
Mint a personal MCP endpoint on that toolbox and paste it into Claude, Cursor, or any MCP client — governed by roles, restrictions, and audit logs.
Give every teammate a governed MCP server
Start a 14-day Gold trial — connect a product, curate a toolbox, and paste an endpoint into Claude or Cursor in minutes.