Add MCP runtime support and update configuration: Introduce MCP_ENABLED setting in settings.py and .env.example, enhance README with MCP runtime details, and implement MCP runtime decision logic in agent.py. Update agent instructions and ensure fallback to legacy runtime when MCP is unavailable.
Update dependencies and enhance logging: Modify pyproject.toml to include additional features in livekit-agents and update transformers version. Add cryptography package to uv.lock and refactor metrics logging in agent.py to improve clarity and remove unused code. Adjust maximum endpointing delay in settings.py and update UI tooltip descriptions for better user understanding.
Integrate Langchain usage patch and update UI metrics: Apply Langchain usage patch in agent.py, adjust pipeline stage layout in index.html, and enhance metric descriptions in main.js for improved clarity and functionality.
Enhance metrics handling and add EOU support: Update ChannelPublisher and TurnTracer to include end-of-utterance (EOU) metrics, refactor latency calculations, and improve metric attribute handling. Modify UI tooltips for clarity and adjust test cases to validate new metrics structure.
Add LLM connection settings and enhance error handling: Introduce new parameters for LLM connection timeout, retry attempts, and stall timeout in .env.example and settings.py. Update agent.py to log errors and session closures, and implement a watchdog for LLM stall detection in MetricsCollector.
Update PocketTTS configuration and logging: Change sample rate handling to enforce native 24kHz, adjust idle process count in .env.example, and enhance audio diagnostics in main.js for better tracking of remote audio track events.