Metadata-Version: 2.4
Name: punt-tts
Version: 0.1.0
Summary: Text-to-speech CLI, MCP server, and Claude Code plugin (ElevenLabs, AWS Polly, OpenAI)
Keywords: tts,text-to-speech,mcp,elevenlabs,aws-polly,openai
Author: Punt Labs
Author-email: Punt Labs <hello@punt-labs.com>
License-Expression: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Requires-Dist: boto3>=1.35.0
Requires-Dist: boto3-stubs[polly]>=1.35.0
Requires-Dist: botocore-stubs>=1.35.0
Requires-Dist: click>=8.1.0
Requires-Dist: elevenlabs>=2.0.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: openai>=1.0.0
Requires-Dist: pydub>=0.25.0
Requires-Dist: audioop-lts>=0.2.1
Requires-Dist: mypy>=1.14.0 ; extra == 'dev'
Requires-Dist: pyright>=1.1.390 ; extra == 'dev'
Requires-Dist: ruff>=0.9.0 ; extra == 'dev'
Requires-Dist: pytest>=8.3.0 ; extra == 'dev'
Requires-Dist: pytest-cov>=6.0.0 ; extra == 'dev'
Requires-Python: >=3.13
Project-URL: Homepage, https://github.com/punt-labs/tts
Project-URL: Repository, https://github.com/punt-labs/tts
Project-URL: Bug Tracker, https://github.com/punt-labs/tts/issues
Provides-Extra: dev
Description-Content-Type: text/markdown

# punt-tts

Text-to-speech CLI, MCP server, and Claude Code plugin.

Supports ElevenLabs (premium), AWS Polly, and OpenAI TTS providers.

## Install

```bash
uv tool install punt-tts
```

## Quick Start

```bash
tts doctor                                    # Check setup
tts synthesize "Hello world"                 # Synthesize with default provider
tts synthesize "Hello" --provider elevenlabs  # Use specific provider
tts install                                   # Register MCP server
```

## Providers

| Provider | API Key Env Var | Default Voice |
|----------|----------------|---------------|
| ElevenLabs | `ELEVENLABS_API_KEY` | matilda |
| AWS Polly | AWS credentials | joanna |
| OpenAI | `OPENAI_API_KEY` | nova |

Auto-detection: ElevenLabs (when `ELEVENLABS_API_KEY` set) > Polly (default).

## Environment Variables

| Variable | Description | Default |
|----------|-------------|---------|
| `TTS_PROVIDER` | TTS provider | auto-detect |
| `TTS_MODEL` | Model override | provider default |
| `TTS_OUTPUT_DIR` | Output directory | `~/tts-output` |

## License

MIT
