Borrowing it
Nothing to install: this file belongs to scottschram/kokoro-tts-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/scottschram/kokoro-tts-mcp/main/CLAUDE.mdgit clone --depth 1 https://github.com/scottschram/kokoro-tts-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/scottschram/kokoro-tts-mcp/claude-md)<a href="https://agentmods.dev/instructions/scottschram/kokoro-tts-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/scottschram/kokoro-tts-mcp/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/scottschram/kokoro-tts-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/scottschram/kokoro-tts-mcp/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01118 | $0.01118 |
| Opus 5 | $0.00559 | $0.00559 |
| Sonnet 5 | $0.00224 | $0.00224 |
| Haiku 4.5 | $0.00112 | $0.00112 |
Grade A, and why
kokoro-tts-mcp CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 86 lines — stays where its author put it; the contents beside it link to each section on GitHub.
kokoro-tts-mcp
See README.md for setup, usage, and voice reference.
Architecture
- Single file:
mcp_server.py— FastMCP server with 8 tools - Lazy-loads Kokoro-82M on first
speak()/speak_and_save()call - Model stays resident in memory (~600 MB) for fast subsequent calls
speak()is non-blocking — streams audio chunk-by-chunk in background thread- Chunks generated lazily via pipeline (510 phoneme limit per chunk), played as produced
- Single
sd.OutputStreamkept open across all chunks for seamless audio - Kills previous playback before starting new
speak()— prevents audio overlap - Pause/resume via sentinel file
/tmp/kokoro-tts-pause - Stop via sentinel file
/tmp/kokoro-tts-stop— clears pause state too user_stop_requested()checks and clears stop sentinel — lets Claude detect external stops (e.g. Stream Deck) when playing multiple segments sequentially- Short text (<25 chars) padded with
... ...to avoid mlx-audio hang bug stdoutredirected tostderrduring model load and generation to avoid corrupting the MCP JSON-RPC transport
Key Constraints
- Requires Python 3.12 (not 3.13+ — spacy/pydantic incompatibility)
- Pin
misaki[en]<0.9— 0.9+ breaksEspeakWrapper.set_data_path - Do NOT install
phonemizer— it shadowsphonemizer-forkand breaks espeak fallback (OOD words get silently skipped) - Requires
brew install espeakon macOS
Design Decisions
- In-process model, not CLI subprocess: Shelling out on every
speak()would mean full Python startup + model load each time (~1.7s). Lazy in-process loading amortizes this — first call ~3.2s, every subsequent call ~1.5s. - Separate venv: Keeps the full TTS dependency stack isolated.
- Sentinel files for external control: Allows Stream Deck, Keyboard Maestro, or any script to pause/stop without going through Claude. The MCP tools use the same mechanism, keeping both paths consistent.
- Embedded voice list:
list_voices()returns a hardcoded dict — no computation needed, instant response. - FastMCP decorator pattern: Auto-generates JSON tool schemas from Python type hints and docstrings.
- Streaming generate-and-play:
speak()returns immediately; a background thread iteratesmodel.generate()lazily, playing each chunk as it's produced. This avoids blocking the MCP client for long text (previous approach collected all audio before playback, causing timeouts on 500+ word text).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 86 lines · 1,118 tokens per session scan A ea1e5172923f
kokoro-tts-mcp CLAUDE.md is an instructions file published in the GitHub repository scottschram/kokoro-tts-mcp (4 stars, last pushed 2mo ago), licensed MIT. It adds 1,118 tokens to every session, about $0.0056 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
spec-kit AGENTS.md
AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
codex AGENTS.md
AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).