Skip to main content

glados-voice-mcp

A warm, shared GLaDOS text-to-speech server for agents, exposed as an MCP tool. It builds on nimaid/GLaDOS-TTS, included unmodified as a git submodule.

Using an AI agent? Point it at this repository and ask it to follow AGENTS.md; it contains every step to install, register and verify the server.

  • Fast: about 100 ms to first audio once the models are loaded; text is split into sentences and the first one plays while the rest is still being synthesized.
  • Lazy and shared: the MCP process is a thin proxy. The first speak starts one shared daemon (127.0.0.1:18765) that loads the models, serves every agent on one audio device, and exits after 10 minutes without requests or speech.
  • In character: the persona is part of the tool description and speak rejects calls with in_character=false. The server cannot verify the style of the text itself.
  • One voice at a time: if a message is loading or playing, speak returns BUSY ... Retry in about N seconds so agents never talk over each other. speak with empty text cuts speech for everyone.

Install

No clone or project directory is needed: uv installs the glados-voice-mcp package from PyPI. Pick exactly one onnxruntime extra: cpu or cuda (NVIDIA, CUDA 13 wheels).

# 1. Build the environment and download the models once (about 125 MB, stored in your user data dir)
uvx --from "glados-voice-mcp[cpu]@latest" glados-voice download-models

# 2. Try it (plays audio)
uvx --from "glados-voice-mcp[cpu]@latest" glados-voice say "Hello, test subject."

Prefer a persistent command? uv tool install "glados-voice-mcp[cpu]" or pipx install "glados-voice-mcp[cpu]" puts glados-voice-mcp on your PATH. To develop, clone with git clone --recurse-submodules https://github.com/bkmeneguello/glados-voice-mcp and run uv pip install ".[cpu]" in a venv.

Register the MCP server

claude mcp add glados-voice -- uvx --from "glados-voice-mcp[cpu]@latest" glados-voice-mcp

For other clients use the command uvx with the arguments --from "glados-voice-mcp[cpu]@latest" glados-voice-mcp; AGENTS.md has Codex, Gemini and JSON examples.

Tool: speak(text, in_character, wait=false). Empty text stops the current speech.

Configuration (environment variables)

Variable Default Meaning
GLADOS_IDLE_SECONDS 600 Idle time before the daemon exits and unloads the models
GLADOS_PORT 18765 Localhost port of the shared daemon
GLADOS_BACKEND cpu cpu (lowest latency for sentences), cuda, or auto (CPU for short chunks, CUDA for long)
GLADOS_MODELS_DIR OS user data dir Model files, e.g. %LOCALAPPDATA%\glados-voice\models on Windows, ~/.local/share/glados-voice/models on Linux

The daemon log is glados_voice_daemon.log in the system temp directory. The daemon accepts requests from any local process and has no authentication, but it rejects browser requests (Origin header, non-JSON Content-Type, foreign Host).

Python use

from glados_voice import VoiceEngine

engine = VoiceEngine().start()   # loads in the background
engine.speak("Hello. This is a test.")
engine.wait_idle()

Credits and license

The code is MIT, see LICENSE and NOTICE.md for third-party notices.

  • Voice models: they come from dnhkng/GlaDOS and are downloaded at first use. They are not stored or distributed in this repository and are not covered by its MIT license. The voice imitates a character and recordings owned by Valve Corporation, so it is for personal, non-commercial fan use only.
  • Unofficial: GLaDOS and Portal belong to Valve Corporation; this project is not affiliated with or endorsed by Valve.
  • cuda extra: it installs proprietary NVIDIA libraries from PyPI under NVIDIA's license terms. The cpu extra does not.

Metadata

Release files for glados-voice-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for glados-voice-mcp 0.1.0
File Size Uploaded Provenance Actions
glados_voice_mcp-0.1.0.tar.gz 2.3 MB With provenance Details for glados_voice_mcp-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for glados-voice-mcp 0.1.0
File Interpreter ABI Platform Actions
glados_voice_mcp-0.1.0-py3-none-any.whl Python 3 none any Details for glados_voice_mcp-0.1.0-py3-none-any.whl

Total release size: 4.6 MB

Release files / glados_voice_mcp-0.1.0.tar.gz

Download URL glados_voice_mcp-0.1.0.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
88e095ecbfbd14e034839c1a81b31c5b688047922280c57982abf17a89b4e97e
BLAKE2b-256 checksum
How to use checksums
319396bd7c0b41de3dcdaf892f8c85a69b6463b3fc7168a2e8c9750e457b6c38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.

Transparency log

Release files / glados_voice_mcp-0.1.0-py3-none-any.whl

Download URL glados_voice_mcp-0.1.0-py3-none-any.whl
Size 2.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
fe350d5b724ae9469efac8d7ca0bfbee75df10312a249449580dd0374cb64f12
BLAKE2b-256 checksum
How to use checksums
28222caa7615e64bbb44390eb7ade11581ebd6961d1e541f97f359a05fd0f7f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.

Transparency log

Security for glados-voice-mcp 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for glados_voice_mcp-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page