Connect CXP to ChatGPT and Codex
The CXP Plugin brings your customer support work into ChatGPT and Codex. Ask questions in plain language to find Conversations, prepare handoff briefs, compare support trends, check team workload, and discover Concierge Agents. With the appropriate permissions, you can also update Conversations and use the Optimization Agent to analyze transcripts or improve agent drafts. You can connect up to 100 organizations that your CXP account can access. When you work across organizations, name the ones you want to include so the answer keeps their results clear.The CXP Plugin is currently distributed as a private beta. Your ChatGPT or Codex workspace administrator must make the Plugin available before you can connect it.
Prerequisites
Before connecting, confirm that:- you can sign in to CXP;
- your CXP role can read Conversations in each organization you want to connect;
- your membership is active; and
- your ChatGPT or Codex workspace allows development apps or plugins.
Connect organizations
- Add the CXP app or Plugin from the development interface supplied by your workspace administrator.
- Select Connect.
- Sign in on the CXP page using any method enabled for your account.
- Select one or more available organizations. Your current organization is selected by default. You can select up to 100, or choose Select all currently available when no more than 100 are listed.
- Confirm the consent page is labeled CXP for AI Agents, then review Read CXP data. When requested by the host, also review Modify CXP data. Expand Analyst sessions, Conversations & notes, and Optimization workspace to see the included actions. These groups explain one shared write permission; they are not separate permission switches.
- Select Allow.
get_my_cxp_context to show your connected organizations and approved access. Your current CXP role still determines which actions you can perform in each organization.
Choose the right permissions
Coming soon: User joins Viewer in Conversation read access. Neither role can update or assign a Conversation or add an internal note, even with Modify CXP data. The role alignment leaves connection setup and already approved OAuth permissions unchanged; reconnecting is not required. See Roles and permissions.
Both permissions respect your current CXP role. The Plugin cannot send customer-visible replies, and the Optimization Agent cannot publish a Concierge Agent.
Deep transcript analysis uses the Optimization Agent and requires Modify CXP data, even when you request analysis alone. You can explicitly ask for findings without changes. That instruction defines the task; the session still has permission to make changes.
What you can do in ChatGPT
The examples below also work in Codex. Include the organization, date range, time zone, and any specific Conversation or Concierge Agent when they matter to your request.Find a Conversation and prepare a brief
Search by contact, subject, status, priority, date, or keywords. Ask ChatGPT to read the Conversation details and history, summarize the issue, and identify unresolved questions or next steps.Explore support trends and create charts
Count Conversations, compare statuses or priorities, and track keyword matches over time. You can compare connected organizations and ask for a chart alongside the written findings.Check team workload
Ask for agent availability, active Conversation backlog, and work waiting in the routing queue. You can specify a team and time zone.Update Conversations
With Modify CXP data and the corresponding CXP role permissions, you can change a Conversation’s status, priority, Pending On, or Pending Reason; assign it to yourself, an agent, or a team; clear its assignment; or add an internal note as yourself.Find Concierge Agents and review their details
Ask for an inventory or narrow the list by agent name, description, latest update date, or updater. You can request an exact name or names containing a phrase, and combine criteria.list_concierge_agents returns each agent’s id, name, description, version, releaseNotes, updated, and updatedBy. You can ask questions about these details without starting an Optimization Agent session. Missing values are reported as unavailable.
Exact text matching is case-sensitive; phrase matching ignores case. The supported filters are name, description, update time, and updater. Version and release notes are included in results but are not additional search filters.
Update dates describe each agent’s most recent update, not every edit in its history. An agent updated in June and again in July will not appear in a search for latest updates in June. Updater names are reported as recorded in CXP.
Large lists arrive in pages. When you ask for all matches, ChatGPT should continue through the remaining pages and tell you if it cannot finish. Recent agent changes may take up to five minutes to appear. If a listing expires before it finishes, ask ChatGPT to restart the search.
Analyze transcripts in depth
Use the Optimization Agent to review full Conversation transcripts and identify recurring topics, questions associated with handoffs, or opportunities to improve support.Improve a Concierge Agent
Ask the Optimization Agent to use its findings to improve a selected agent’s draft, instructions, or evaluations. It can also update requirements or skills shared by Concierge Agents in the same organization, so describe the changes you want clearly.Continue or stop an Optimization Agent session
You can answer a session’s follow-up questions, request additional work after it finishes, or ask it to stop. Keep the session details and CXP link from the answer so you can return to the same work later.Available MCP tools
ChatGPT and Codex select these tools for your request. You do not need to write tool calls to use the Plugin.Read, analyze, and visualize
These tools require Read CXP data, along with any applicable CXP role permissions.Change Conversations
These tools require Modify CXP data and the corresponding Conversation permissions in CXP.Work with the Optimization Agent
All four session tools require Modify CXP data and Optimization access in CXP, including for analysis-only sessions.Investigate with Insight Analyst
Insight Analyst is the data-insight agent, separate from the Optimization Agent.
Its session tools require Modify CXP data (
cxp.write) and your current
Analyst access. A read-only connection needs fresh consent; refreshing its token
does not add permission. Each session belongs only to its creator in the
selected organization.
Use start_insight_analyst_session with tenantId, a UUID requestId, and your
prompt. Optional timeFrame is P7D, P30D, or P90D (default P30D);
optional model is gpt-5.4, gpt-5.4-mini, or gpt-5.4-nano.
Start returns sessionId and generationId while analysis continues.
Use get_insight_analyst_session_progress with that exact pair to read status
and the saved answer. Answers are capped at 64 KiB and explicitly marked when
truncated. Leaving the chat does not cancel analysis; execution limits still apply.
Use send_insight_analyst_message with the same session ID and a new request ID
for an intended follow-up once the session is idle. If a start or follow-up
response is lost, retry the original input with the same request ID. A busy
session rejects a different request rather than queueing it.
When interactive capacity is full, start/send can return analyst_unavailable;
wait and retry with the same request ID. Progress and Stop remain available.
This also applies to retries while capacity is full; it does not mean an
earlier admitted run was cancelled.
outcome_unknown means completion could not be established after execution
was interrupted or expired. Do not assume success or automatically restart.
stop_insight_analyst_session requests cancellation of one exact generation;
it does not undo work or stop a newer turn. Poll progress to confirm completion
or cancellation. A required_action result reports an Optimization proposal;
these session tools cannot approve it or start Optimization on your behalf.
Read Applied Insights dashboard results
Ask: “Find our weekly support dashboard and explain its latest widget results. Show the reporting period and a chart if it helps.” The connected agent useslist_applied_insights_dashboards to identify widgets and
get_applied_insights_widget_result to read their stored results. Ambiguous
dashboard or widget names need clarification.
All three stored-data tools require Read CXP data and current Applied Insights read access
in the selected organization. They do not require write permission or the
native Analyst workspace to be enabled. Existing read connections need no new
OAuth scope; each tool still checks your current access independently.
These tools do not run widgets, execute new queries or start Analyst sessions.
The latest result can cover a different period from the dashboard setting.
Exact reads require both an execution timestamp and reporting-period key;
there is no automatic history fallback. Unknown legacy periods remain unknown,
and current widget presentation is not guaranteed to match its historical run.
A failed execution or missing result is not a zero value.
For comparisons, ask: “Find this widget’s runs from yesterday and today, then
compare their stored results.” The agent can use
list_applied_insights_widget_executions to discover executions before reading
the selected results. You do not need to know their exact timestamps first.
Optional executedFrom (inclusive) and executedTo (exclusive) select when a
run executed, not the period it analyzed. Include your timezone when asking
about relative days. A run from yesterday may contain a rolling 30-day total.
History pages contain timestamps, reporting-period keys when known, success or
failure status, and duration when available—not the full results. Pages default
to 20 entries, with a maximum of 100. The agent follows nextCursor with unchanged
filters and page size until null, or tells you it reviewed only part of history.
An expired cursor requires fresh discovery. New runs may appear in that fresh
snapshot. Unknown legacy period keys prevent exact rereads, and retained history
is not a guarantee that every past run is still available.
The complete directory is limited to 100 dashboards, and each complete result
to 256 KiB. Over-limit requests fail rather than return partial data. Optional
charts reuse the existing visualization tool; text/table answers remain useful
if your host cannot display a chart. Existing restricted tool diagnostics and
your external host may retain results; deleting a source does not remove those
copies.

