Kokoro Text to Speech MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable debug mode (set to "true" or "1") | |
| MCP_HOST | No | Host to bind the server to | 0.0.0.0 |
| MCP_PORT | No | Port to listen on | 9876 |
| TTS_SPEED | No | Default speed for the TTS client | 1.0 |
| TTS_VOICE | No | Default voice for the TTS client | af_heart |
| AWS_REGION | No | S3 region (e.g., us-east-1) | us-east-1 |
| MP3_FOLDER | No | Path to store MP3 files (default is 'mp3' folder in script directory) | |
| S3_ENABLED | No | Enable S3 uploads (set to "true" or "1") | true |
| TTS_LANGUAGE | No | Default language for the TTS client | en-us |
| AWS_S3_FOLDER | No | Folder path within the S3 bucket | mp3 |
| MCP_CLIENT_HOST | No | Hostname for client connections to the server | localhost |
| AWS_ACCESS_KEY_ID | No | Your AWS access key ID | |
| AWS_S3_BUCKET_NAME | No | S3 bucket name | |
| MP3_RETENTION_DAYS | No | Number of days to keep MP3 files before automatic deletion | |
| AWS_S3_ENDPOINT_URL | No | Optional custom endpoint URL for S3-compatible storage | |
| AWS_SECRET_ACCESS_KEY | No | Your AWS secret access key | |
| DELETE_LOCAL_AFTER_S3_UPLOAD | No | Whether to delete local MP3 files after successful S3 upload (set to "true" or "1") |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| text_to_speechB | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool has a clearly defined purpose of converting text to speech, which cannot be confused with any other functionality.
The single tool name 'text_to_speech' follows a clear verb_noun pattern and uses snake_case consistently. With only one tool, naming consistency is inherently perfect as there are no other tools to compare against.
A single tool is too few for a server's apparent scope of text-to-speech functionality. While the tool itself is well-defined, a complete TTS service would typically include additional tools such as listing available voices, managing audio files, or configuring settings, making this server feel thin and incomplete.
The server is severely incomplete for a text-to-speech domain. It lacks essential operations such as listing available voices, checking service status, managing generated audio files (beyond the single generation tool), or handling configuration. This creates significant gaps that will limit agent workflows and cause failures in more complex tasks.