Validate add-ons / YAML and layout (pull_request) Successful in 9s
Validate add-ons / emby-mcp gofmt (pull_request) Successful in 11s
Validate add-ons / emby-mcp vet (pull_request) Successful in 40s
Validate add-ons / emby-mcp build (pull_request) Successful in 18s
Validate add-ons / openai-codex-proxy (pull_request) Successful in 1m30s
Validate add-ons / n95-mqtt-bridge pin (pull_request) Successful in 3s
Validate add-ons / n95-mqtt-bridge pin and upstream tests (pull_request) Successful in 1m12s
Validate add-ons / emby-mcp Go (pull_request) Successful in 1m47s
Validate add-ons / YAML and layout (push) Successful in 9s
Validate add-ons / emby-mcp gofmt (push) Successful in 20s
Validate add-ons / emby-mcp vet (push) Successful in 55s
Validate add-ons / emby-mcp build (push) Successful in 30s
Validate add-ons / emby-mcp Go (push) Successful in 48s
Validate add-ons / openai-codex-proxy (push) Successful in 1m35s
Validate add-ons / n95-mqtt-bridge pin (push) Successful in 7s
Validate add-ons / n95-mqtt-bridge pin and upstream tests (push) Successful in 32s
Split emby-mcp into gofmt/vet/build/test and n95 pin vs test so a capacity-8 runner can fill slots. Cancel superseded runs. Skip streamable HTTP e2e on CI (session handshake fails on act). Skip n95 TestCapture* (pcaps are not in the published tag).
Emby MCP
Emby Model Context Protocol (MCP) server with a Home Assistant REST bridge, packaged as a Home Assistant add-on.
Connect your Emby media server to AI clients and Home Assistant voice/conversation agents — search the library, browse shows and episodes, manage playlists, see what's playing, and control playback, all through natural-language tool calls.
Features
- Streamable MCP endpoint at
/mcpfor Claude, ChatGPT, and other MCP clients - REST tool bridge at
/call/{tool}designed for Home Assistant conversation agents (works with Assist functions) - Search films, TV series, episodes, and music with chunked results for large libraries
- Browse item children, series seasons, and episode lists with per-user played state and resume positions
- Resolve the next episode to watch (
next_unplayed/latest) - Create and modify playlists; list player sessions and control playback (PlayNow, pause, seek, skip)
- Inspect and switch audio/subtitle tracks mid-playback
- Localhost-restricted mode (default): only Home Assistant itself can call the bridge, using stored credentials — no per-request auth needed
Requirements
- A running Emby server reachable from Home Assistant
- Emby credentials: username + password, or an API key (+ user ID)
Installation
- Add this repository to Home Assistant
(Settings → Add-ons → Add-on Store → ⋮ → Repositories):
https://git.i3omb.com/gronod/ha-gronod-addons - Install Emby MCP from the add-on store
- Set
emby_server_urlplusemby_username/emby_password(oremby_api_key+emby_user_id), leave Restrict to localhost on, and start the add-on
See DOCS.md for the full option reference, conversation-agent setup, troubleshooting, and standalone (non-add-on) usage.
License
© 2026 Gordon Bolton. Based on Emby.MCP;
this is a complete rewrite. GPL v3 — see LICENCE.md.