helpdesk
Puzzel
Connect Puzzel to Elaichi and hand every teammate a governed MCP endpoint — 84 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.
AI tools
Puzzel tools for your AI agents
84 tools are ready to mint as an MCP endpoint the moment you connect Puzzel — governed by the same roles, restrictions, and audit log as everything else in Elaichi.
list_all_puzzel_user_groups
List user groups in Puzzel. Returns result with each group including id and name.
list_all_puzzel_token_info
Get access token information in Puzzel. Returns customerKey, customerId, userGroupId, userId, languageId, languageCode, passwordValidDaysLeft, and accessTokenExpiry in the response.
list_all_puzzel_scheduled_tasks
Search for scheduled tasks in Puzzel. Returns entries with details such as contactId, name, phone, duration, queueId, scheduledDateTime, reservedUserId, reservedUserName, and title.
get_single_puzzel_scheduled_task_by_id
Get an existing scheduled task in Puzzel using id. Returns fields such as contactId, name, description, phone, reservedUserId, scheduledDateTime, queueKey, and related variables.
create_a_puzzel_scheduled_task
Create a new scheduled-tasks in Puzzel. Returns result and code fields in the response.
update_a_puzzel_scheduled_task_by_id
Update a scheduled etask in Puzzel using id. Returns updated etask details such as contactId, name, scheduledDateTime, reservedUserId, and variables.
delete_a_puzzel_scheduled_task_by_id
Delete a scheduled task in Puzzel. Requires id. Returns code indicating the result of the operation.
create_a_puzzel_sm
Send an SMS message in Puzzel. Requires user_id. Returns code (status), id (message identifier), and message (status message) in the response.
list_all_puzzel_token_extended_information
Get extended access token details in Puzzel, including customerKey, userId, accessTokenExpiry, language, pauseTypes, and queues. Returns these fields in the response.
list_all_puzzel_archive_records
Search archive records in Puzzel for a specific user. Requires user_id. Returns fields including recordStart, accessPoint, callId, recordingType, contentAvailable, surveyExist, enquiryRegistrationExists, entries, tags, and comment.
delete_a_puzzel_archive_record_by_id
Delete an archived record in Puzzel. Requires user_id. Returns code (status), id (record identifier), and message (operation result details) in the response.
get_single_puzzel_archive_stream_by_id
Stream archive recordings for a specific user in Puzzel. Requires user_id, iq_session_id, and id. Returns the audio/video stream content for the requested archive recording.
puzzel_archive_recording_files_download
Download a recording file from Archive in Puzzel. Requires user_id, iq_session_id, and index. Returns the audio file as application/octet-stream with Content-Disposition header indicating filename.
get_single_puzzel_enquiry_registration_by_id
Get enquiry registration for a specific user by callId in Puzzel. Requires user_id, and id. Returns fields including id, time, agentId, agentName, queueKey, queueDescription, categories.
get_single_puzzel_survey_by_id
Get survey from Puzzel by user_id and id. Returns survey details including key fields for the specified callId.
list_all_puzzel_archive_audit_logs
Search archive audit logs in Puzzel. Returns id, dateTime, operation, iqSessionId, recIndex, mediaType, and userId fields for each log entry in the response.
update_a_puzzel_archive_tag_by_id
Update tags for a specific call archive in Puzzel using user_id and id. Returns code, id, and message indicating the update result.
list_all_puzzel_catalog_timezone
Get the customer timezone set in the Puzzel database. Returns result, code, id, and message fields in the response.
update_a_puzzel_catalog_timezone_by_id
Update the customer timezone in Puzzel. Returns code, id, and message indicating the result of the operation.
list_all_puzzel_catalog_contacts
Search catalog-contacts in Puzzel using user_id. Returns id, firstName, lastName, title, info, organizationName, communicationPoints, and other contact details in the response.
get_single_puzzel_catalog_contact_by_id
Retrieve a contact by contactId in Puzzel. Requires user_id, and id. Returns fields such as id, firstName, lastName, title, info, services, communicationPoints with status and address, isCalenderBusy, and organization details.
list_all_puzzel_contacts_appointments
List all appointments for a specific contact in Puzzel using user_id and contact_id. Returns id, subject, location, beginTime, endTime, description, durationMinute, isPrivate, isAvailable, source, and absence fields.
create_a_puzzel_contacts_appointment
Create a new appointment for a contact in Puzzel. Requires user_id, and contact_id. Returns code, id, message, and result fields in the response.
update_a_puzzel_contacts_appointment_by_id
Update an existing appointment for a contact in Puzzel. Returns code, id, and message fields indicating the result of the operation. Requires user_id, and contact_id.
delete_a_puzzel_contacts_appointment_by_id
Delete an appointment in Puzzel for a specific contact using user_id, contact_id, and id. Returns code, id, and message indicating result.
list_all_puzzel_access_point_tickers
Get ticker data for access numbers in Puzzel by ticker_period_window. Returns accesspoint, requestsOffered, and requestsAnswered fields in the response.
list_all_puzzel_state_information
Get real-time agent state and statistics for a specific user group in Puzzel. Requires ticker_period_window, and userGroupName. Returns userId, name, status, stats, and survey results fields.
list_all_puzzel_personal_queue_requests
List requests in the personal queue for a user in Puzzel. Requires user_id. Returns requestId, serviceId, timeInQueue, vip, mediaType, requestStatus, sla, description, category, callbackScheduledTime, and more for each request.
list_all_puzzel_connected_requests
List connected requests for a specific user in Puzzel. Requires user_id. Returns queueName, requestCategory, requestDescription, requestRemoteAddress, durationSeconds, userName, and userId for each connected request.
list_all_puzzel_user_state_information
Get user state information in Puzzel by user_id. Returns userStatus, contactCentreStatus, status duration, chat connection details, silent monitoring flags, and related fields in the response.
list_all_puzzel_extended_user_state_info
Get very detailed user state information in Puzzel. Requires user_id. Returns userStateInformation, systemDateTime, iqSessionStateInformation, recordingInfo, requestPersonalQueueList, request, and pauseDisabledList fields in the response.
list_all_puzzel_agents_stats
Get real-time agent stats in Puzzel for a given user_id, and ticker_period_window. Returns queuesTotal, pause, and overview data including requestsOffered, requestsAnswered, loggedOnSeconds, inPauseSeconds, survey stats, and more.
list_all_puzzel_user_visual_queues
List visual queues for a user in Puzzel. Requires user_id. Returns requestId, serviceId, timeInQueue, vip, mediaType, requestStatus, queueId, callbackScheduledTime, and related visual queue details.
get_single_puzzel_user_visual_queue_by_id
Get visual queue information in Puzzel for a specific visual queue using user_id, and id. Returns fields such as requestId, serviceId, timeInQueue, mediaType, requestStatus, and destination.
list_all_puzzel_visual_queues
List visual-queues in Puzzel. Returns id, description, and queues with id, key, description, and serviceId in the response.
get_single_puzzel_visual_queue_by_id
Get user visual queue information in Puzzel for a specific visual queue. Requires id, and result. Returns usersDetails and usersOverview fields with details on users and overall queue status.
list_all_puzzel_visual_queue_state_info
Get visual queue state and ticker information in Puzzel. Requires visual_queue_result. Returns id, description, waitTimeMaxSeconds, waitTimeAverageSeconds, queueSize, agentsLoggedOn, agentsInPause, agentsReady, agentsUnavailable, sla, queueSizeCiq, unblockedLoggedIn, unblockedUnavailable, queueSizePreferred, callsOfferedToday, callsAnsweredToday, ciqsOfferedToday, ciqsAnsweredToday, callsAnsweredWithinSla, alarmFlag, ciqScheduled, callsAbandonedToday, callsAbandonedWithinSla, silentCallsToday fields in the response.
list_all_puzzel_visual_queue_ticker
Get visual queue ticker information in Puzzel for the specified ticker_period_window, and visual_queue_result. Returns id, description, call statistics, CIQ and survey results in the response.
get_single_puzzel_etask_by_id
Get details about a specific etask request in Puzzel. Requires id. Returns id, additionalInfo, requestStart, queueEntryTime, reservedUserExpiry, status, queueId, mediaType, queuePosition, iqSessionId, extendedInformations, from, to, vipScore, reservedUserId, and variables.
create_a_puzzel_etask
Add etasks or emails in Puzzel. Returns the created etask object including from, to, subject, uri, vipScore, reservedUserId, reservedUserWaitTime, category, description, variables, queueKey, and xdrCopy fields.
delete_a_puzzel_etask_by_id
Delete an existing etask/email request in Puzzel by id. Returns code indicating operation completion.
update_a_puzzel_etask_by_id
Update etask or email request in Puzzel. Returns updated fields including subject, uri, vipScore, reservedUserId, reservedSecondsFromNow, category, description, queueKey, variables, and xdrCopy.
update_a_puzzel_request_by_id
Update a request in queue by id in Puzzel. Returns code, id, and message fields indicating the result of the operation.
get_single_puzzel_request_by_id
Get details about a specific request in Puzzel. Requires id. Returns fields such as remoteAddress, destination, requestStart, status, variables, extendedInformations, and outboundInfo.
delete_a_puzzel_request_by_id
Delete a request in Puzzel. Requires id. Returns code, id, and message indicating the operation result.
list_all_puzzel_missed_calls
List missed calls in Puzzel for a specific queue using queue_id. Returns key fields for each missed call: queueId, queueName, requestId, requestRemoteAddress, destination, queueEntered, inQueueSeconds, category, description, reservedUserId, mediaType, tagLevel, userIdTagged, userNameTagged, and dateTimeTagged.
puzzel_missed_calls_tag
Tag a missed call in Puzzel. Requires missed_call_id. Returns code, id, and message fields indicating the tagging operation result.
list_all_puzzel_user_missed_calls
List missed calls for a user in Puzzel by id. Returns fields such as queueId, queueName, requestId, requestRemoteAddress, destination, queueEntered, inQueueSeconds, category, tagLevel, userIdTagged, userNameTagged, dateTimeTagged, and others.
get_single_puzzel_user_request_by_id
Get details of a specific user request in Puzzel using id. Returns fields such as remoteAddress, destination, status, queueId, vip, mediaType, variables, and extendedInformations.
puzzel_user_requests_reserve
Reserve a user-request in Puzzel by user_id and request id. Returns code, id, and message indicating the reservation result.
delete_a_puzzel_user_request_by_id
Cancel a reserved user-request in Puzzel. Requires user_id, and id. Returns code, id, and message indicating the result of the cancellation.
puzzel_user_requests_events
Create session request event in Puzzel for a specific user and request. Requires user_id, and request_id. Returns code, id, and message fields in the response indicating the result.
list_all_puzzel_request_extended_information
Get extended information about a specific request in Puzzel. Requires request_id. Returns fields: time, message, fullUserName, userId, type, and userName for each entry in the response.
list_all_puzzel_user_call_logs
List last 20 request logs for a specific user in Puzzel, including queueName, queueId, accessPoint, requestId, mediaType, callType, requestRemoteAddress, answeredAt, and speakTimeSeconds. Requires user_id. These fields are returned in the response.
create_a_puzzel_user_callout_request
Create an outgoing callout request for a user in Puzzel using user_id. Returns callout execution details including destination, scheduling, and agent assignment fields.
delete_a_puzzel_user_callout_request_by_id
Delete a specific callout request for a user in Puzzel. Returns code (operation status), id (request id), and message (operation result).
create_a_puzzel_user_email
Send an email message for a specific user in Puzzel. Requires user_id. Returns code, id, and message fields indicating the email send status and message id.
create_a_puzzel_user_enquiry_registration
Create enquiry registration for a user in Puzzel. Requires user_id. Returns code (status code), id (enquiry registration id), and message (response information).
list_all_puzzel_enquiry_registrations_categories
Get enquiry registration categories and topics in Puzzel using user_id, and result. Returns code, id, and message fields in the response.
list_all_puzzel_outbound_request_feedback
Update an outbound dialler request with feedback in Puzzel. Requires user_id. Returns code, id, and message indicating the result of the update.
list_all_puzzel_call_recordings
Get recording details of the connected call in Puzzel using user_id. Returns recordingIndex, recordingStart, recordingState, forcedOnQueue, forcedOnUser, and lengthSeconds fields.
puzzel_call_recordings_command
Send a recorder command for a user session in Puzzel. Requires user_id. Returns code, id, and message indicating the command status.
puzzel_user_sessions_command
Execute a command for an active user session in Puzzel using user_id and session_id. Returns code, id, and message indicating the command status.
list_all_puzzel_languages
List languages in Puzzel. Returns each language's id, code, and description in the response.
list_all_puzzel_system_date_time
Get system date and time in Puzzel. Returns result (system dateTime), code, id, and message in the response.
list_all_puzzel_system_properties
Retrieve a list of property settings for a specified property_group in Puzzel. Returns key, value, and typeId for each property.
create_a_puzzel_system_property
Set property value for a property group in Puzzel. Requires property_group. Returns code, id, and message fields in the response indicating result and operation info.
get_single_puzzel_system_property_by_id
Get details about a system property in Puzzel using property_group, id, and userId. Returns key, value, and typeId fields in the response.
list_all_puzzel_queues
List queues in Puzzel. Returns id, key, description, and serviceId for each queue.
list_all_puzzel_services
List services in Puzzel. Returns id, number, and description fields for each service in the response.
list_all_puzzel_service_qualities
List service qualities in Puzzel. Returns id, number, description, serviceId, and elements (with id, name, userLevel) fields in the response.
list_all_puzzel_user_service_labels
List service labels for a specific user in Puzzel. Returns nodeType, label, and nodeId for each service label.
puzzel_user_service_labels_search
Search for service labels in Puzzel for a specific user using user_id. Returns nodeType, label, and nodeId for each matched service label.
list_all_puzzel_access_logs
List access logs in Puzzel for the last 14 days. Returns entries containing id, dateTime, ip, clientType, clientInfo, logInResult, userId, and userName.
list_all_puzzel_changelogs
Search change logs in Puzzel for the past 3 months. Returns entries with id, dateTime, userId, auditType, operation, key, and value for each change.
puzzel_access_token_logout
Log out and destroy access token in Puzzel. Returns code, id, and message fields in the response.
list_all_puzzel_pause_types
List pause types in Puzzel. Requires userId. Returns id and description for each pause type in the response.
list_all_puzzel_users_search
Search for users in Puzzel using user_id. Returns user details such as userGroupName, profileName, chatState, contactCentreStatus, joined, userStatus, sessionTime, and profiles.
get_single_puzzel_profile_by_id
Get details of a specific profile for a user in Puzzel using user_id, and id. Returns profile fields including id, number, lastPhoneNumber, phoneNumber, phoneType, name, groupProfile, and qualities.
create_a_puzzel_profile_element
Add a quality element/skill to a specific user profile in Puzzel. Requires user_id, and profile_id. Returns code, id, and message indicating the result.
delete_a_puzzel_profile_element_by_id
Remove a skill from profile in Puzzel. Requires user_id, profile_id, and id. Returns code, id, and message fields in the response indicating the operation result.
list_all_puzzel_iq_session_state_info
Get IQ session state information for a specific user_id in Puzzel. Returns iqSessionId, iqSessionState, requestIds, user session details, and request metadata for the given user_id.
list_all_puzzel_available_users
List available users (Ready) in Puzzel for a specific user. Requires user_id. Returns the users who are logged on and available.
list_all_puzzel_query_users
Search users by queue or user filter in Puzzel. Requires user_id. Returns sourceSearchResultType, contactCentreStatus, queueDescription, queueKey, userFullName, userId, userName, userStatus, and chatState fields in the response.
How it works
From Puzzel account to governed MCP endpoint
Connect
Link a Puzzel 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 Puzzel 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.