Content
# Brainiall Speech AI - MCP Server
MCP server providing AI-powered pronunciation assessment, speech-to-text, and text-to-speech tools via [Brainiall](https://brainiall.com) Speech AI APIs.
## Tools
| Tool | Description |
|------|-------------|
| `assess_pronunciation` | Score how accurately a speaker pronounced a given text (0-100), with per-word and phoneme-level feedback |
| `transcribe_speech` | Transcribe speech audio into text with automatic language detection |
| `synthesize_speech` | Convert text to natural-sounding speech audio (MP3) |
| `list_voices` | List all available text-to-speech voices |
## Prerequisites
Get your free API key at **[app.brainiall.com](https://app.brainiall.com)**.
## Installation
### Using pip
```bash
pip install fastmcp httpx
```
### Using Docker
```bash
docker build -t brainiall-mcp .
docker run -e BRAINIALL_API_KEY=your-key -p 8000:8000 brainiall-mcp
```
## Configuration
Set the `BRAINIALL_API_KEY` environment variable:
```bash
export BRAINIALL_API_KEY=your-api-key
```
### Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"brainiall-speech-ai": {
"command": "fastmcp",
"args": ["run", "server.py"],
"env": {
"BRAINIALL_API_KEY": "your-api-key"
}
}
}
}
```
### Cursor / VS Code
Add to your MCP settings:
```json
{
"mcpServers": {
"brainiall-speech-ai": {
"command": "fastmcp",
"args": ["run", "/path/to/server.py"],
"env": {
"BRAINIALL_API_KEY": "your-api-key"
}
}
}
}
```
### Streamable HTTP (Docker / Remote)
```bash
docker run -e BRAINIALL_API_KEY=your-key -p 8000:8000 brainiall-mcp
```
Connect your MCP client to `http://localhost:8000/mcp`.
## Running Locally
```bash
# stdio (default for Claude Desktop / Cursor)
BRAINIALL_API_KEY=your-key fastmcp run server.py
# streamable-http
BRAINIALL_API_KEY=your-key fastmcp run server.py --transport streamable-http --port 8000
```
## API Reference
All tools communicate with the Brainiall Speech AI API at `https://api.brainiall.com`. Full API documentation is available at [app.brainiall.com](https://app.brainiall.com).
### assess_pronunciation
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Reference text the user should have read |
| `audio_base64` | string | Yes | Base64-encoded audio (WAV or MP3) |
| `language` | string | No | Language code, default `en-US` |
### transcribe_speech
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `audio_base64` | string | Yes | Base64-encoded audio (WAV, MP3, WEBM, OGG) |
| `language` | string | No | Language hint for transcription |
### synthesize_speech
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | Text to convert to speech |
| `voice` | string | No | Voice ID, default `alloy` |
| `speed` | float | No | Speed multiplier (0.5-2.0), default `1.0` |
### list_voices
No parameters. Returns available voice options with IDs and supported languages.
## License
MIT
## Links
- [Brainiall](https://brainiall.com) - AI model provider
- [Get API Key](https://app.brainiall.com) - Sign up and get your free API key