tidio_query_ agent_ detailsAnalytics: every human agent, with name, email, role, and whether active or deleted.
Find and assign tickets, reply to customers, read a contact's chats, teach Lyro what it should know, and report on your team's week, all by asking.
PopMCPTidio
Every endpoint in Tidio's API is here, on both its live records and its analytics tables: contacts, tickets, operators, departments, Lyro knowledge and product recommendations, plus daily statistics for your project, agents, Flows and Lyro. The everyday tools load by default and the rest are one search away. A few do a whole job at once, such as assigning a ticket to a person by name or filtering tickets, which Tidio's own list cannot do.
56 tools in the full catalog: 37 read and 19 write. 38 load by default, and the rest are found with tool search.
tidio_query_ agent_ detailsAnalytics: every human agent, with name, email, role, and whether active or deleted.
tidio_query_ agent_ statistics_ dailyAnalytics: each agent's day, with conversations replied to, first response time, conversation length and satisfaction.
tidio_query_ agent_ thread_ detailsAnalytics: one row per human agent conversation thread, with times, first response, intent, and whether it was missed.
tidio_query_ live_ chat_ rating_ detailsAnalytics: customer satisfaction ratings on live chats, for human agents and Lyro.
tidio_query_ lyro_ thread_ detailsAnalytics: one row per conversation Lyro handled, with how it ended and whether it went to a human.
tidio_query_ project_ statistics_ dailyAnalytics: the whole project per day: tickets, agent threads, Lyro, Flows, sales and new leads.
tidio_query_ ticket_ detailsAnalytics: one row per ticket with status, priority, source, tags, and when created and solved.
tidio_query_ ticket_ rating_ detailsAnalytics: customer satisfaction ratings on tickets.
tidio_support_ reportA support report for a date range: totals, each day, and each agent by name, covering tickets, live chat, Lyro and Flows.
tidio_assign_ ticketAssign a ticket by name: assignee is an operator's name or email, or a department's name, or an id.
tidio_contact_ overviewEverything about one person in one call: the contact, their live chat messages and the pages they viewed in the past 30 days.
tidio_create_ contactAdd one contact.
tidio_create_ ticketOpen a new ticket in a contact's name, from their email address, with a subject and a first message.
tidio_delete_ contactDelete a contact for good.
tidio_delete_ ticketDelete a ticket.
tidio_find_ ticketsFind tickets by status, priority, assignee, contact or words in the subject.
tidio_get_ contactGet one contact and its properties.
tidio_get_ ticketGet one ticket with all its messages, public and internal.
tidio_list_ contact_ propertiesList the contact properties this project has, with name, label and type.
tidio_list_ contact_ viewed_ pagesList the pages a contact viewed on your website in the past 30 days, with times.
tidio_list_ contactsList contacts with their properties, or find them by exact email.
tidio_list_ ticket_ custom_ fieldsList this project's ticket custom fields with id, name, type, whether required, and allowed values.
tidio_list_ ticket_ tagsList this project's ticket tags with id and name, in alphabetical order.
tidio_list_ ticketsList tickets with subject, status, priority, contact and who is assigned, without messages.
tidio_reply_ to_ ticketAdd a message to a ticket.
tidio_ticket_ overviewOne ticket in one call: its messages, its contact, and the names of the operator and department it is assigned to.
tidio_update_ contactChange a contact.
tidio_update_ ticketChange a ticket's status (open, pending, solved), priority (low, normal, urgent), assignee, tags or custom fields.
tidio_upsert_ contactSave a contact without making a duplicate: updates the contact with this email if there is one, otherwise adds them.
tidio_add_ lyro_ websiteHave Tidio read a website and add it to what Lyro knows.
tidio_create_ lyro_ qaTeach Lyro one question and answer.
tidio_list_ lyro_ data_ sourcesList what Lyro knows: question and answer items (kind qa) and folders such as websites and files (kind folder).
tidio_update_ lyro_ qaReplace the title and content of a question and answer Lyro uses.
tidio_list_ contact_ messagesRead a contact's live chat conversation: messages from the contact, operators and bots, plus a link to the conversation in Tidio.
tidio_project_ overviewStart here: this Tidio project's id and status, its operators, departments, ticket tags, ticket custom fields and contact properties, with the ids other tools need.
tidio_upsert_ lyro_ productsSend up to 100 products for Lyro to recommend, one entry per variant.
tidio_list_ departmentsList departments with id and name.
tidio_list_ operatorsList the people on this project with id, name, email, role, and when last seen.
tidio_get_ analytics_ identityCheck the keys work with the Analytics API and see which project they belong to.
tidio_get_ analytics_ statusCheck whether Tidio's Analytics API is up.
tidio_query_ agent_ thread_ intent_ statistics_ dailyAnalytics: human agent threads per day, counted by the reason people got in touch.
tidio_query_ flow_ statistics_ dailyAnalytics: each Flow's day, with triggers, interactions, actions and helpfulness votes.
tidio_query_ live_ chat_ message_ detailsAnalytics: one row per live chat message from anyone, for reading or counting chat history.
tidio_query_ lyro_ data_ source_ detailsAnalytics: what Lyro knows, question by question, with when it was added and changed.
tidio_query_ lyro_ message_ intent_ statistics_ dailyAnalytics: Lyro messages per day, counted by the reason people got in touch.
tidio_query_ lyro_ suggestion_ detailsAnalytics: the suggestions Lyro makes for its knowledge: questions people ask and how often.
tidio_query_ smart_ action_ statistics_ dailyAnalytics: each Smart Action's day, with how often it ran and its results.
tidio_query_ ticket_ message_ detailsAnalytics: one row per ticket message.
tidio_query_ visitor_ detailsAnalytics: one row per visitor to your website.
tidio_create_ contactsAdd up to 100 contacts in one call.
tidio_update_ contactsUpdate up to 100 contacts in one call, each with its id.
tidio_ask_ lyro_ to_ answer_ ticketAsk Lyro, Tidio's AI agent, to answer the first message of a ticket from the details you send, and get the text back.
tidio_upsert_ lyro_ web_ pageGive Lyro a web page's content as HTML you provide, under a URL that identifies it.
tidio_delete_ lyro_ productRemove one product from Lyro's recommendations for good.
tidio_get_ projectGet this Tidio project's id and whether it is online.
tidio_send_ message_ as_ contactAdd a message as if the contact wrote it, 1 to 5000 characters.
Credentials off one Tidio screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.
In your Tidio panel, open Settings, then Developer, then OpenAPI, and select Generate OpenAPI key. Copy the Client ID and the Client Secret, because Tidio only shows the secret once. Open Tidio in PopMCP, paste both and connect. PopMCP finds your project from them, so there is nothing else to fill in.
ci_...••••••••••••3f7aA public reply to a ticket goes straight to the customer, and deleting a contact or ticket usually cannot be undone, so ask the AI to confirm first. New connections start read-only until an owner or admin allows writes in PopMCP, because a Tidio key has no read-only setting of its own. Tidio's API cannot send an operator's reply in a live chat, so the AI reads those and answers only on tickets.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Tidio credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
Which tickets are open and urgent, and what does each customer need?
tidio_list_ticketsok
Then just ask for the work
“Which tickets are open and urgent, and what does each customer need?”
“Reply to this ticket and mark it as solved”
“Find this customer by email and show me their chats and the pages they viewed”
“Add our new returns policy to what Lyro knows”
“How did my team and Lyro do last month, and which chats did we miss?”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Tidio behind an AI client.
No. An owner or admin of the project generates a key pair under Settings, Developer, OpenAPI in the Tidio panel, and pastes the Client ID and Client Secret into PopMCP.
Tidio's documentation says its API is on the Plus and Premium plans. With a paid Lyro plan alone, only product uploads for Lyro work, and PopMCP tells you so when you connect.
It can read them, but Tidio's API has no way to send an operator's live chat reply. It can reply to tickets, publicly or as an internal note, and it can mark, assign and tag them.
Tidio loads its analytics once a day, and yesterday's arrive at about 10:00 UTC. Contacts, tickets and chat messages are live, so the AI uses those for what is happening now.
Only if you allow it. New connections start read-only. Once writes are on, replies, updates and deletions are real, so ask it to confirm first.
No. Tidio's webhooks are set up by hand in its panel, under Settings, Developer, Webhooks, and it has no API to manage them.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect Tidio in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Tidio on the consent screen. The Tidio tools are then available in that session, and no Tidio credential is stored on your machine.
Loading 56 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 38-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 56 here. A trigger is something PopMCP watches for you: 9 Tidio events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Tidio.
Launch a hosted MCP endpoint for Tidio, keep tool access under control, and start testing real workflow prompts right away.