Skip to main content

Crate isimud

Crate isimud 

Source
Expand description

isimud — macOS menu bar text-to-speech and MCP server for AI agents.

The functional inverse of MUNINN (speech-to-text): agents enqueue speech through MCP tools; a single worker serializes playback, routes named voices to TTS providers, and broadcasts lifecycle events to the menu-bar indicator and connected MCP peers.

Re-exports§

pub use config::AppConfig;

Modules§

config
TOML configuration loading, validation, and credential resolution. Configuration loading, validation, and secret resolution.
mcp
MCP tool handlers and speech-event notification fan-out. MCP tool handlers and speech-event notification fan-out.
playback
Shared rodio playback for cloud-provider audio bytes. Shared rodio playback for cloud-provider audio bytes.
providers
TTS provider trait, registry, and Apple/OpenAI/Google backends. TTS provider trait, registry, and Apple/OpenAI/Google backends.
server
Axum HTTP server wiring for streamable MCP over /mcp. Axum HTTP server wiring for streamable MCP.
state
Speech state machine, status snapshots, and lifecycle events. Speech state machine, status snapshots, and lifecycle events.
voices
Named-voice resolution from [voices.*] into provider parameters. Named-voice resolution from agent requests into provider parameters.
worker
Serialized speech queue, worker task, and engine API. Serialized speech queue, worker task, and engine API.

Constants§

DEFAULT_BIND_HOST
Default loopback bind address for the MCP/HTTP server.
DEFAULT_PORT
Default MCP server port — T9 keypad spelling of “ENKI” (the god isimud serves), inside the IANA registered range (1024–49151).
TARGET_CONFIG
Tracing target for configuration handling.
TARGET_DEFAULT
Catch-all tracing target.
TARGET_PROVIDER
Tracing target for TTS provider activity.
TARGET_RUNTIME
Tracing target for runtime/lifecycle events.
TARGET_SERVER
Tracing target for the MCP/HTTP server.
TARGET_SPEECH
Tracing target for speech worker / playback activity.