{
  "markdown": "# Tough Tongue AI Skills\n\n[![MCP Registry](https://img.shields.io/badge/MCP_Registry-com.toughtongueai%2Fmcp-blue)](https://registry.modelcontextprotocol.io/v0.1/servers?search=com.toughtongueai/mcp)\n\nAgent skills and MCP server for [Tough Tongue AI](https://app.toughtongueai.com),\nthe platform for handling tough conversations. Some, the AI takes: voice\nagents that answer and place calls, qualify leads, run demos, screen\ncandidates, and book meetings. Others, you nail: hyper-realistic roleplay\nthat gets you ready for negotiations, interviews, and coaching conversations.\n\nInstall once, then work with Tough Tongue AI from Claude Code, Codex, Cursor, or\nany agent that supports the Agent Skills format:\n\n- *\"Pull the last 3 lost deals from our call notes and create a practice\n  scenario for the pricing objection.\"*\n- *\"For the Enterprise Discovery Call scenario, pull the last 50 sessions.\n  What are the top 5 improvement areas?\"*\n- *\"The onboarding agent keeps ending calls too early. Pull the low-scoring\n  sessions, find out why, and fix the scenario.\"*\n\nThese compose with the rest of your MCP ecosystem: Gong, Notion, calendar,\nslides, email. See [What you can do](#what-you-can-do) for the full journeys.\n\n## Table of contents\n\n- [What's included](#whats-included)\n- [Prerequisites](#prerequisites)\n- [Which setup fits you?](#which-setup-fits-you)\n- [Set up](#set-up)\n  - [One command, every agent](#one-command-every-agent)\n  - [Claude Code](#claude-code)\n  - [Codex](#codex)\n  - [Cursor](#cursor)\n  - [Copilot / Windsurf / Gemini CLI / other agents](#copilot--windsurf--gemini-cli--other-agents)\n  - [Skills only](#skills-only)\n  - [MCP only](#mcp-only)\n- [Verify your setup](#verify-your-setup)\n- [What you can do](#what-you-can-do)\n- [MCP Server](#mcp-server)\n- [Troubleshooting](#troubleshooting)\n- [Repository structure](#repository-structure)\n- [Related](#related)\n- [License](#license)\n\n## What's included\n\nThis repo ships two layers that work together, plus plugins that bundle both:\n\n**Skills** — workflow guidance your agent loads automatically when the\nconversation matches:\n\n| Skill | When it activates | What it does |\n|---|---|---|\n| [getting-started](skills/getting-started) | \"Get started with Tough Tongue AI\", \"is my Tough Tongue AI MCP working?\" | Post-install onboarding. Verifies the MCP connection and PAT, looks at what's in your account, and routes you into your first workflow. |\n| [scenario-creator](skills/scenario-creator) | \"Create a scenario\", \"build a practice roleplay\", \"prep me for this meeting\" | Create production-ready scenarios from a brief, URL, or call transcript. Classifies the type (cold call, sales roleplay, coaching), applies proven authoring patterns, validates, and creates via MCP. |\n| [scenario-refiner](skills/scenario-refiner) | \"Fix the scenario\", \"it ended the call too early\", \"make it sound more natural\" | Fix a live scenario from real evidence. Pulls the scenario and low-scoring session transcripts, diagnoses the root cause, and applies the smallest possible edit via MCP. |\n| [session-analyst](skills/session-analyst) | \"How is my team doing?\", \"top improvement areas\", \"build me a coaching report\" | Turn session data into answers. Aggregates scores, report cards, and weaknesses across a team or scenario into structured reports: ready to hand off to slides or email tools. |\n| [browser-demo-builder](skills/browser-demo-builder) | \"Record browser demo steps\", \"make my demo deterministic\", \"the demo clicks the wrong thing\" | Turn a product-demo flow into pre-recorded browser steps. Interviews the flow, harvests stable selectors, writes the steps into the scenario via MCP, and sets up persistent login for authenticated demos. |\n\n**MCP server** — live actions in your Tough Tongue AI account. 27 tools over the\npublic API: scenarios (create, update, generate, access tokens), sessions\n(list with evaluations, single and batch fetch, ingest, post-process),\nanalytics and organizations, SIP phone calls, meeting bots, and collections.\nFull catalog in [MCP.md](MCP.md).\n\n**Plugins** (Claude Code, Codex, Cursor) — bundle the skills **and** the MCP\nserver registration in one install.\n\nHow the layers relate:\n\n- **Skills add judgment** — the agent knows *what* good Tough Tongue AI work\n  looks like: how to author a scenario, diagnose a failing one, aggregate\n  session data into a report.\n- **MCP adds action** — the agent *can* do it: create scenarios, pull\n  sessions, update configs, place calls.\n- With skills only, your agent can advise. With MCP only, it can call tools.\n  With both, it picks the right workflow and completes it. The plugin gives\n  you both in one step.\n\n## Prerequisites\n\nEvery path needs a **Tough Tongue AI account** — sign up at\n[app.toughtongueai.com](https://app.toughtongueai.com).\n\nThat's it for interactive setups. Authentication is **OAuth-first**: the\nfirst time your agent calls a Tough Tongue AI tool, the client opens a\nbrowser consent page — approve once and the client stores the token\n(Claude Code and Codex use your system keychain). No environment variables,\nno app restarts.\n\n> **Upgrading from a PAT-based install?** After updating the plugin you'll\n> see a one-time OAuth prompt (Claude Code: run `/mcp` and authenticate;\n> Codex: `codex mcp login ttai` or approve the automatic prompt). Your\n> existing PAT keeps working for manual/headless configs.\n\n<details>\n<summary>Headless / CI / automation: use a PAT instead</summary>\n\nBrowser OAuth can't run in headless environments. Create a **Personal Access\nToken (PAT)** at\n[app.toughtongueai.com/developer](https://app.toughtongueai.com/developer)\nand export it where your agent runs:\n\n```bash\nexport TTAI_PAT=\"<your-token>\"\n```\n\nThen register the server manually with a bearer header — per-client commands\nin [MCP only](#mcp-only) and [MCP.md](MCP.md).\n\n> **Note**: never commit the PAT or paste it into config files — reference it\n> only through the `TTAI_PAT` environment variable.\n\n</details>\n\n## Which setup fits you?\n\n| Setup | Best for | What you get |\n|---|---|---|\n| **Plugin** (recommended) | Claude Code, Codex, Cursor | Skills + MCP, auto-configured in one install |\n| **Skills + MCP, manual** | Copilot, Windsurf, Gemini CLI, other agents | Same capability, assembled in two steps |\n| **Skills only** | Any Agent Skills client, no live tools needed | Workflow guidance; the agent advises but can't act |\n| **MCP only** | Developers who want raw API tools | 27 tools; no workflow guidance |\n\nNot sure? Use the plugin — it's the least setup. Per-client instructions\nbelow.\n\n## Set up\n\n### One command, every agent\n\nThe fastest path. The [`plugins` CLI](https://www.npmjs.com/package/plugins)\ndetects the coding agents on your machine — Claude Code, Cursor, Codex,\nGrok Build, Kimi Code, GitHub Copilot CLI, VS Code — and installs the\nskills plus the MCP server into all of them at once:\n\n```bash\nnpx plugins add tough-tongue/toughtongue-skills\n```\n\nRestart your agent, then say \"get me started with Tough Tongue AI\". On the\nfirst tool call your client opens the browser OAuth consent — approve once\nand you're connected.\n\nThis repo is also a standard [Agent Plugin](https://agent-plugins.org)\n(root `plugin.json`, `skills/`, `mcp.json`), so clients that load Agent\nPlugins natively can point straight at it. Prefer your client's own plugin\nsystem? Per-client instructions below.\n\n### Claude Code\n\nThe plugin bundles the skills and registers the Tough Tongue AI MCP server\n(`.mcp.json`) in one install: no separate `claude mcp add` step needed.\nOn the first tool call, Claude Code opens a browser OAuth consent — approve\nonce and you're connected (re-authenticate anytime with `/mcp`).\n\nInside Claude Code:\n\n```text\n/plugin marketplace add tough-tongue/toughtongue-skills\n/plugin install toughtongue@toughtongue-skills\n```\n\nOr from the terminal:\n\n```bash\nclaude plugin marketplace add tough-tongue/toughtongue-skills\nclaude plugin install toughtongue@toughtongue-skills\n```\n\nThen run `/toughtongue:getting-started`: it verifies the connection, looks\nat your account, and starts your first workflow.\n\nSkills are namespaced after install: invoke them as\n`/toughtongue:scenario-creator`, `/toughtongue:scenario-refiner`,\n`/toughtongue:session-analyst`, `/toughtongue:browser-demo-builder`: or just\ndescribe the task and Claude picks the right skill automatically.\n\n<details>\n<summary>Upgrade / local development</summary>\n\n**Upgrade** — refresh the marketplace catalog, then move the installed pin\nto the latest version:\n\n```bash\nclaude plugin marketplace update toughtongue-skills\nclaude plugin update toughtongue@toughtongue-skills\n```\n\nThen run `/reload-plugins` in your session to apply.\n\n**Local development / testing** — load the plugin without installing:\n\n```bash\nclaude --plugin-dir /path/to/toughtongue-skills\n# after edits, run /reload-plugins inside the session\n```\n\n</details>\n\n### Codex\n\nThe plugin bundles the skills and registers the Tough Tongue AI MCP server\n(`.mcp.json`) in one install:\n\n```bash\ncodex plugin marketplace add tough-tongue/toughtongue-skills\ncodex plugin add toughtongue@toughtongue\n```\n\nThen restart Codex and start a new thread. Codex detects the server's OAuth\nsupport and prompts you to log in (or run `codex mcp login ttai`). Say \"get\nme started with Tough Tongue AI\" to verify the setup and start your first\nworkflow.\n\n<details>\n<summary>Upgrade / local development</summary>\n\n**Upgrade** — both steps are needed; the first refreshes the marketplace\nsnapshot, the second re-pins the installed plugin to it:\n\n```bash\ncodex plugin marketplace upgrade toughtongue\ncodex plugin add toughtongue@toughtongue\n```\n\n**Local development / testing** — register the checkout as a local\nmarketplace:\n\n```bash\ncodex plugin marketplace add /path/to/toughtongue-skills\ncodex plugin add toughtongue@toughtongue\n```\n\n</details>\n\n### Cursor\n\nIn Cursor, go to **Settings > Plugins > Team Marketplaces > Add Marketplace\n> Import from Repo**, point it at\n`https://github.com/tough-tongue/toughtongue-skills`, then install\n**toughtongue**.\n\nOr assemble it manually in two steps:\n\n1. Install the skills:\n\n   ```bash\n   npx skills add tough-tongue/toughtongue-skills\n   ```\n\n2. Add the MCP server:\n   [**Install in Cursor**](cursor://anysphere.cursor-deeplink/mcp/install?name=ttai&config=eyJ1cmwiOiJodHRwczovL2FwaS50b3VnaHRvbmd1ZWFpLmNvbS9hcGkvcHVibGljL21jcCJ9)\n   — one click adds the server; Cursor prompts for OAuth consent on first\n   use. Or add it manually via \"Cursor Settings\" > \"MCP\" (config JSON in\n   [MCP.md](MCP.md#cursor)).\n\n<details>\n<summary>Upgrade</summary>\n\nRe-import the marketplace from **Settings > Plugins > Team Marketplaces**.\nIf you installed the skills via the CLI, refresh them with\n`npx skills update`.\n\n</details>\n\n### Copilot / Windsurf / Gemini CLI / other agents\n\nNo plugin for these yet — install the skills and the MCP server as two\nsteps:\n\n**1. Install the skills.** Works with any Agent Skills-compatible client:\n\n```bash\nnpx skills add tough-tongue/toughtongue-skills\n```\n\nThe CLI prompts you to pick which skills to install and which agents to\nconfigure. To install everything non-interactively:\n\n```bash\nnpx skills add tough-tongue/toughtongue-skills --all\n```\n\nUpdate existing skills later with:\n\n```bash\nnpx skills update\n```\n\n**2. Add the MCP server.** Point your client at the hosted server — the\ngeneral shape is:\n\n```json\n{\n  \"mcpServers\": {\n    \"ttai\": {\n      \"url\": \"https://api.toughtongueai.com/api/public/mcp\"\n    }\n  }\n}\n```\n\nClients with OAuth support prompt for consent on first use. For clients (or\nheadless setups) that need a bearer token instead, add\n`\"headers\": { \"Authorization\": \"Bearer ${TTAI_PAT}\" }` with the PAT from\n[Prerequisites](#prerequisites). Exact config per client (Copilot/VS Code,\nWindsurf, Gemini CLI) is in [MCP.md](MCP.md#connect-your-client).\n\n**Stdio-only clients** (Claude Desktop, Zed, older VS Code): bridge to the\nhosted server with [mcp-remote](https://github.com/geelen/mcp-remote) — see\n[MCP.md](MCP.md#clients-without-remote-mcp-support).\n\n### Skills only\n\nWant the workflow guidance without connecting your account?\n\n```bash\nnpx skills add tough-tongue/toughtongue-skills\n```\n\nThe agent can advise on scenario design, evaluation rubrics, and coaching\npatterns — but it can't create or modify anything in Tough Tongue AI. Add the\nMCP server later (step 2 above) when you want action.\n\n### MCP only\n\nIf you only want the tools (no skills) — OAuth flow starts on first use:\n\n```bash\n# Codex\ncodex mcp add ttai --url https://api.toughtongueai.com/api/public/mcp\ncodex mcp login ttai\n\n# Claude Code\nclaude mcp add --transport http ttai https://api.toughtongueai.com/api/public/mcp\n# then run /mcp in a session to authenticate\n```\n\nHeadless / CI (PAT bearer auth instead of OAuth):\n\n```bash\n# Codex\ncodex mcp add ttai --url https://api.toughtongueai.com/api/public/mcp \\\n  --bearer-token-env-var TTAI_PAT\n\n# Claude Code\nclaude mcp add --transport http ttai https://api.toughtongueai.com/api/public/mcp \\\n  --header \"Authorization: Bearer ${TTAI_PAT}\"\n```\n\nMore clients in [MCP.md](MCP.md).\n\n## Verify your setup\n\nAsk your agent:\n\n```text\nCall the ttai MCP tool list_organizations and show me the result.\nThen list my scenarios.\n```\n\nYou should see two things:\n\n- The agent reaches your Tough Tongue AI account and returns real data — the\n  MCP connection works.\n- The agent reasons in Tough Tongue AI terms — scenarios, sessions, rubrics,\n  report cards — the skills are loaded.\n\nOn a **skills-only** setup, verify with \"What can I do with Tough Tongue AI?\" —\nthe agent should describe the workflows but won't be able to call tools.\n\n## What you can do\n\nCoding agents are where work happens now. These journeys show Tough Tongue AI\ncomposing with the other tools already connected to your agent: copy any\nprompt to start.\n\n### 1. Practice this sales call\n\nA sales manager spots an AE struggling with pricing objections in real calls.\n\n> Pull the last 3 calls from Gong where we lost on pricing. Create a\n> Tough Tongue AI scenario to practice handling that objection, using our\n> positioning doc from Notion. Give me the shareable practice link.\n\nGong MCP (`search_calls` / `list_calls` → `get_call_transcript`) + Notion MCP\n→ **scenario-creator** builds a sales roleplay from the real objections →\n`create_scenario` → shareable practice link.\n\n### 2. How is my team doing?\n\nA VP of Sales wants the team's skill gaps, not raw transcripts.\n\n> For the \"Enterprise Discovery Call\" scenario, pull the last 50 sessions.\n> What are the top 5 improvement areas? Build me a 3-slide deck.\n\n**session-analyst** → `list_sessions` (scores, strengths, weaknesses per\nsession) → aggregates report-card topics and weakness themes → slides MCP for\nthe deck.\n\n### 3. Refine from real conversations\n\nA CS manager notices low scores on the onboarding scenario.\n\n> Pull the 5 lowest-scoring sessions for our onboarding scenario, figure out\n> what went wrong, and fix the scenario.\n\n`list_sessions` (sorted by score) → `get_sessions_batch` (full transcripts +\nevaluations) → **scenario-refiner** diagnoses the root cause → surgical\n`update_scenario`: live for the next session.\n\n### 4. Prep me for this meeting\n\nA sales rep has a discovery call in 30 minutes.\n\n> I have a call with Sarah Chen from Acme Corp in 30 minutes. Create a quick\n> practice scenario so I can rehearse.\n\nCalendar MCP + web search for attendee/company context → **scenario-creator**\n→ `create_scenario` → start practicing in minutes.\n\n### 5. Automated post-call coaching\n\nAn engineering team wires coaching into their call pipeline.\n\n> Every time a call ends in Gong, analyze the transcript and email the rep a\n> coaching report.\n\nWebhook script → `create_session` (ingest transcript against a coaching\nscenario) + `post_process_session` → poll `get_sessions_batch` until analysis\ncompletes → email MCP sends the report. Full recipe in\n[session-analyst's report templates](skills/session-analyst/references/report-templates.md).\n\n## MCP Server\n\nThe plugin registers Tough Tongue AI's hosted MCP server at\n`https://api.toughtongueai.com/api/public/mcp` (Streamable HTTP, OAuth 2.1\nwith dynamic client registration; PAT bearer auth for headless setups).\nThere is nothing to install and no local process to run. It exposes 27 tools\nover the public API: scenarios (create, update, generate, access tokens),\nsessions (list with evaluations, single and batch fetch, ingest,\npost-process), analytics and organizations, SIP phone calls, meeting bots,\nand collections.\n\n**See [MCP.md](MCP.md)** for the full tool catalog, per-client setup\n(Claude Code, Codex, Cursor, Copilot, Windsurf, Gemini CLI), and\ntroubleshooting.\n\nThe same OAuth flow powers the web connectors. In claude.ai, add a custom\nconnector (Settings > Connectors) pointing at the server URL with the Client\nID and Secret left empty. In ChatGPT (Business/Enterprise/Edu), enable\ndeveloper mode and create a custom MCP app with OAuth. Full steps for both\nare in [MCP.md](MCP.md#claudeai-web).\n\n## Troubleshooting\n\n- **Fewer than 27 ttai tools listed**: your agent trimmed or cached tool\n  discovery. Start a fresh thread; if it persists, remove and re-add the MCP\n  server.\n- **401 / authentication errors**: the OAuth login hasn't completed for this\n  client. Claude Code: run `/mcp` and authenticate in the browser. Codex:\n  `codex mcp login ttai`. Cursor: Cursor Settings > MCP > log in on the ttai\n  server. If you're on a manual PAT config instead, check `TTAI_PAT` is\n  visible to the agent process (re-export, `launchctl setenv` on macOS,\n  fully restart the app).\n- **Skills installed but the agent can't do anything**: skills are guidance\n  only — the agent also needs the MCP server for live actions. See\n  [Which setup fits you?](#which-setup-fits-you) and add the MCP server for\n  your client.\n- **Using claude.ai or ChatGPT web?**: same OAuth flow, via custom\n  connectors. See the [web connector sections](MCP.md#claudeai-web) in\n  MCP.md.\n- **Scenario edits not taking effect in a running call**: scenario changes\n  apply to new sessions only; sessions compile their prompt at start.\n\n<details>\n<summary>Reinstalling the plugin (Claude Code)</summary>\n\nIf `/plugin install` fails or `claude plugin list` shows stale entries, do a\nclean reinstall — run these in order in any Claude Code session:\n\n1. `/plugin marketplace remove toughtongue-skills`\n2. `/plugin marketplace add tough-tongue/toughtongue-skills`\n3. `/plugin marketplace update toughtongue-skills`\n4. `/plugin install toughtongue@toughtongue-skills`\n\nStep 3 forces Claude Code to re-read the marketplace manifest. After step 4,\n`claude plugin list` should show one `toughtongue@toughtongue-skills` entry.\n\n</details>\n\n## Repository structure\n\n```\ntoughtongue-skills/\n├── plugin.json            # Agent Plugins 1.0.0 manifest (agent-plugins.org)\n├── mcp.json               # Agent Plugins MCP config (streamable-http; no credentials)\n├── .plugin/               # Marketplace entry for the `npx plugins` CLI\n├── .claude-plugin/        # Claude Code plugin + marketplace manifests\n├── .codex-plugin/         # Codex plugin manifest\n├── .cursor-plugin/        # Cursor plugin manifest\n├── .agents/plugins/       # Codex plugin-marketplace entry\n├── .mcp.json              # Claude-native MCP server registration (OAuth; no credentials)\n├── MCP.md                 # MCP server docs: setup per client, tool catalog\n├── skill-evals/           # Evaluation scenarios per skill\n└── skills/                # Each: SKILL.md + references/ + agents/openai.yaml\n    ├── getting-started/       # Post-install onboarding: verify, orient, first journey\n    ├── scenario-creator/      # Type-specific authoring references\n    ├── scenario-refiner/      # Runtime behavior reference\n    ├── session-analyst/       # Report templates\n    └── browser-demo-builder/  # Deterministic browser demo steps: format, selectors, example\n```\n\n## Related\n\n- [Sign up](https://app.toughtongueai.com) ·\n  [Developer portal / PAT](https://app.toughtongueai.com/developer) ·\n  [Platform docs](https://app.toughtongueai.com/docs) ·\n  [llms-full.txt](https://app.toughtongueai.com/llms-full.txt) (AI-readable\n  API reference)\n- [Privacy policy](https://app.toughtongueai.com/privacy-policy/) ·\n  [Terms of service](https://app.toughtongueai.com/terms/) — the canonical\n  legal URLs for Tough Tongue AI, required when submitting the MCP server to\n  the Claude Connectors Directory or a plugin marketplace. Note the paths:\n  `/privacy-policy/` and `/terms/`, not `/privacy` or `/tos`.\n- [voice-ai-quickstart](https://github.com/tough-tongue/voice-ai-quickstart):\n  starter templates for building apps on Tough Tongue AI (Next.js, Flask,\n  co-navigation demo, scenario-as-code CLI) and the `toughtongue-ai`\n  integration skill for developers embedding the platform.\n\n## License\n\nMIT\n",
  "bytes": 20809,
  "sha": "ea939258fae598481b45a4b187e275134f84a7b080163af26682fe5870d9d775",
  "repo_slug": "tough-tongue/toughtongue-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_toughtongueai_mcp_2d14bf48/readme"
}