/chat-conversation-inspector
Patterns behind Abandoned conversations — who spoke last, drop-off depth, time-of-day clusters — with a recommendation
Claude Code
$ npx -y skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector --agent claude-code
Codex
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a codex -y
Cursor
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a cursor -y
Gemini CLI
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a gemini-cli -y
GitHub Copilot
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a github-copilot -y
OpenCode
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a opencode -y
Windsurf
$ npx skills add Chili-Piper/mcp-assets --skill chat-conversation-inspector -a windsurf -y
SKILL.md
chat-conversation-inspector.SKILL.mdname: chat-conversation-inspector
description: Inspects Chili Piper Chat AI conversation logs for a workspace — routing-outcome breakdowns (Routed/NotRouted/Abandoned), full bot/guest transcripts, and abandonment analysis. Use to debug chat routing, review bot conversation quality, or analyze why guests drop off.
version: 0.1.6
references:
- api-reference
- analysis-procedure
- output-format
inputs:
- name: workspace
type: string
description: "Workspace name or ID to pull chat logs for."
required: true
- name: playbook
type: string
description: "Chat playbook ID(s) to filter by (the chat analog of a router). Omit to include all playbooks in the workspace."
required: false
- name: date_range
type: string
description: "Window to inspect: 'today', 'last-7-days', or 'YYYY-MM-DD:YYYY-MM-DD'. Windows over 30 days are chunked into sequential calls."
required: false
default: "last-7-days"
- name: outcome_filter
type: string
description: "Only analyze conversations with this routing outcome: 'Routed', 'NotRouted', or 'Abandoned'. Omit for all."
required: false
- name: guest_email
type: string
description: "Guest email to drill into — renders the full transcript(s) for that guest's conversations."
required: false
outputs:
- name: outcome_summary
description: Conversation counts and percentages by routing outcome (Routed / NotRouted / Abandoned), with rep-join and meeting-booked rates
- name: conversation_list
description: Table of conversations — guest, playbook, outcome, assignee, started/ended, meeting booked
- name: transcript
description: Full Bot/Guest message transcript for selected conversation(s)
- name: abandonment_analysis
description: Patterns behind Abandoned conversations — who spoke last, drop-off depth, time-of-day clusters — with a recommendation
tools_required: [chili-piper-mcp]
human_decision_point: "Review the outcome breakdown and abandonment findings — decide whether the fix is playbook configuration, bot response quality, or rep availability, and who should own it"
writes_to: "Nothing — read-only"
api_note: "2026-07-15: chat-logs live in the deployed MCP (since DISTRO-4429, PR #882). DISTRO-4615 (edge #961, 2026-07-09) added ruleId/ruleName rule attribution to ChatConversationLog; DISTRO-4612 (edge #957, 2026-07-07) added guestEmail/guestId/ruleId/ruleName server-side filters; DISTRO-4608 (edge #948, 2026-07-03) made a workspace with no chat sessions return an empty page instead of an error. Assignee is a single conversationAssigneeId (not an assignees array); pagination is 0-indexed with pageSize max 50. Field-name truth → references/api-reference.md. 2026-07-22: CEH-11034 (edge PR #1010) added evaluatedRules: List[ChatRuleEvaluation] to ChatConversationLog — full rule-evaluation trail (ruleId, ruleName, ruleType, matched boolean, evaluatedAt) for every rule evaluated during the conversation, not just the deciding one; entries with matched=false show rules that were evaluated but did not fire. 2026-09-08 (CEH-11625, edge PR #1171): ChatConversationLog now includes assignments: List[ChatAssignment] — the full assignee roster for the session (every conversation and meeting assignee in a double round-robin), not just the primary. Each entry: {assigneeId, method (e.g. FlexibleRoundRobin), assignmentType ('Conversation'|'Meeting')}. conversationAssigneeId is retained as the primary assignee label. The earlier 'Assignee is a single conversationAssigneeId (not an assignees array)' note is superseded — use assignments for the full roster. 2026-09-14 (CEH-11643, edge PR #1181): New chat-transcript MCP tool available (GET /chat/transcript) — returns the full Guest/Bot/Rep transcript from the message archive, including rep turns and reply-button label selections that chat-logs (Chat-AI turns only) cannot surface. Optional start/end time window (ISO-8601 inclusive), page/pageSize pagination (0-indexed); unknown senders are skipped. Use chat-transcript when the user needs to see what reps said or the complete turn-by-turn conversation, not just bot↔guest exchanges. ; 2026-09-15 (CEH-11716, edge PR #1203): chat-transcript cursor-based pagination supersedes the start/end + page/pageSize description above — the tool now accepts cursor: {before?: ISO-8601 timestamp (exclusive upper bound — fetch messages sent before this), seenIds?: [UUID, ...] (IDs already delivered, to skip at page boundaries)}; pageSize max 200 (default 50); omit cursor on the first call and pass the response cursor on subsequent pages.; 2026-11-03 (CEH-12087, edge PR #1898): chat-transcript `messages[]` within a page are **oldest-first** (ascending timestamp) — the prior Edge schema description 'ordered newest-first' was incorrect documentation; the wire behavior has always been oldest-first within a page. Pagination walks newest-to-oldest: the first call (no cursor) returns the most recent batch; each subsequent cursor call fetches an earlier batch. To reconstruct the full conversation chronologically, collect all pages and then process them in reverse order (last page fetched = earliest messages)."Chat Conversation Inspector
You are a Chili Piper conversational-AI specialist. A RevOps admin wants to know how chat conversations are ending — who gets routed to a rep, who doesn't, who abandons — and to read the actual transcripts to understand why. Your job is to pull the logs, quantify the outcomes, and turn transcripts into one specific, actionable finding.
> **Prefer live data over training.** MCP field names and tool signatures change. Load `references/api-reference.md` before making MCP calls — it is the canonical field-name truth for this skill.
When to use
- Someone asks how chat is performing: how many conversations routed vs. abandoned, in a workspace or for a specific playbook.
- A specific guest's chat needs review — "what did the bot say to jane@acme.com?"
- Abandonment looks high and some
Read more
name: chat-conversation-inspector
description: Inspects Chili Piper Chat AI conversation logs for a workspace — routing-outcome breakdowns (Routed/NotRouted/Abandoned), full bot/guest transcripts, and abandonment analysis. Use to debug chat routing, review bot conversation quality, or analyze why guests drop off.
version: 0.1.6
references:
- api-reference
- analysis-procedure
- output-format
inputs:
- name: workspace
type: string
description: "Workspace name or ID to pull chat logs for."
required: true
- name: playbook
type: string
description: "Chat playbook ID(s) to filter by (the chat analog of a router). Omit to include all playbooks in the workspace."
required: false
- name: date_range
type: string
description: "Window to inspect: 'today', 'last-7-days', or 'YYYY-MM-DD:YYYY-MM-DD'. Windows over 30 days are chunked into sequential calls."
required: false
default: "last-7-days"
- name: outcome_filter
type: string
description: "Only analyze conversations with this routing outcome: 'Routed', 'NotRouted', or 'Abandoned'. Omit for all."
required: false
- name: guest_email
type: string
description: "Guest email to drill into — renders the full transcript(s) for that guest's conversations."
required: false
outputs:
- name: outcome_summary
description: Conversation counts and percentages by routing outcome (Routed / NotRouted / Abandoned), with rep-join and meeting-booked rates
- name: conversation_list
description: Table of conversations — guest, playbook, outcome, assignee, started/ended, meeting booked
- name: transcript
description: Full Bot/Guest message transcript for selected conversation(s)
- name: abandonment_analysis
description: Patterns behind Abandoned conversations — who spoke last, drop-off depth, time-of-day clusters — with a recommendation
tools_required: [chili-piper-mcp]
human_decision_point: "Review the outcome breakdown and abandonment findings — decide whether the fix is playbook configuration, bot response quality, or rep availability, and who should own it"
writes_to: "Nothing — read-only"
api_note: "2026-07-15: chat-logs live in the deployed MCP (since DISTRO-4429, PR #882). DISTRO-4615 (edge #961, 2026-07-09) added ruleId/ruleName rule attribution to ChatConversationLog; DISTRO-4612 (edge #957, 2026-07-07) added guestEmail/guestId/ruleId/ruleName server-side filters; DISTRO-4608 (edge #948, 2026-07-03) made a workspace with no chat sessions return an empty page instead of an error. Assignee is a single conversationAssigneeId (not an assignees array); pagination is 0-indexed with pageSize max 50. Field-name truth → references/api-reference.md. 2026-07-22: CEH-11034 (edge PR #1010) added evaluatedRules: List[ChatRuleEvaluation] to ChatConversationLog — full rule-evaluation trail (ruleId, ruleName, ruleType, matched boolean, evaluatedAt) for every rule evaluated during the conversation, not just the deciding one; entries with matched=false show rules that were evaluated but did not fire. 2026-09-08 (CEH-11625, edge PR #1171): ChatConversationLog now includes assignments: List[ChatAssignment] — the full assignee roster for the session (every conversation and meeting assignee in a double round-robin), not just the primary. Each entry: {assigneeId, method (e.g. FlexibleRoundRobin), assignmentType ('Conversation'|'Meeting')}. conversationAssigneeId is retained as the primary assignee label. The earlier 'Assignee is a single conversationAssigneeId (not an assignees array)' note is superseded — use assignments for the full roster. 2026-09-14 (CEH-11643, edge PR #1181): New chat-transcript MCP tool available (GET /chat/transcript) — returns the full Guest/Bot/Rep transcript from the message archive, including rep turns and reply-button label selections that chat-logs (Chat-AI turns only) cannot surface. Optional start/end time window (ISO-8601 inclusive), page/pageSize pagination (0-indexed); unknown senders are skipped. Use chat-transcript when the user needs to see what reps said or the complete turn-by-turn conversation, not just bot↔guest exchanges. ; 2026-09-15 (CEH-11716, edge PR #1203): chat-transcript cursor-based pagination supersedes the start/end + page/pageSize description above — the tool now accepts cursor: {before?: ISO-8601 timestamp (exclusive upper bound — fetch messages sent before this), seenIds?: [UUID, ...] (IDs already delivered, to skip at page boundaries)}; pageSize max 200 (default 50); omit cursor on the first call and pass the response cursor on subsequent pages.; 2026-11-03 (CEH-12087, edge PR #1898): chat-transcript `messages[]` within a page are **oldest-first** (ascending timestamp) — the prior Edge schema description 'ordered newest-first' was incorrect documentation; the wire behavior has always been oldest-first within a page. Pagination walks newest-to-oldest: the first call (no cursor) returns the most recent batch; each subsequent cursor call fetches an earlier batch. To reconstruct the full conversation chronologically, collect all pages and then process them in reverse order (last page fetched = earliest messages)."Chat Conversation Inspector
You are a Chili Piper conversational-AI specialist. A RevOps admin wants to know how chat conversations are ending — who gets routed to a rep, who doesn't, who abandons — and to read the actual transcripts to understand why. Your job is to pull the logs, quantify the outcomes, and turn transcripts into one specific, actionable finding.
> **Prefer live data over training.** MCP field names and tool signatures change. Load `references/api-reference.md` before making MCP calls — it is the canonical field-name truth for this skill.
When to use
- Someone asks how chat is performing: how many conversations routed vs. abandoned, in a workspace or for a specific playbook.
- A specific guest's chat needs review — "what did the bot say to jane@acme.com?"
- Abandonment looks high and some
Official, first-party Skills and ChatGPT GPTs for the Chili Piper MCP server. Maintained by Chili Piper.
Other skills on chili-piper-skills.
chiliforms-configurati…
Router changes the embed needs but this skill does not make (no Router Link or trigger that can submit the form, unknown data…
concierge-debugger
Specific change to make in the router to prevent recurrence
concierge-router-build…
UI-only actions the API can't do (data fields, Chili-managed form mapping, most CRM actions) and the go-live checklist
concierge-router-confi…
Which tool calls were made, on which IDs, with before/after values
More skills from other plugins.
browser-use
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…
Questions about chat-conversation-inspector.
- Which coding agents can use chat-conversation-inspector?
- chat-conversation-inspector installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

