fix: move media server to 8093 — YOURLS/Apache owns 8092 on xNAS
Rebuild & Deploy / rebuild (push) Successful in 1m0s

The Unraid deployment's /media/api requests were answered by an
Apache/YOURLS stack squatting on 8092, surfacing as UI 503s; the CI
healthcheck (curl without -f) counted that 503 as healthy, so run #15
deployed green against a broken media server.

- media server port 8092 -> 8093 everywhere (server, MCP, agent, nginx,
  compose, CI, .env.example, docs, tests).
- healthchecks use curl -f in compose and rebuild.yml so HTTP error
  statuses fail deployment.
- tests default to the Unraid deployment (VOICE_WEB_URL=
  https://192.168.86.2:9178); token goes through nginx (loopback :8091
  is unreachable off-host); bind-mount-coupled tests skip on remote
  targets. AGENTS.md documents the convention and both failure modes.
This commit is contained in:
snowspeeder committed 2026-08-29 16:01:26 -04:00
1 parent d7c385301e
commit ce8fd1e046
11 files changed
+72 -28

No files matched your search

+1 -1
View File
@@ -688,7 +688,7 @@ def build_mcp_toolsets(user_profile: dict, task_dir: str) -> list[mcp.MCPToolset
# Media tools talk to the local media server; the room name scopes player
# state so concurrent sessions don't fight over one virtual player.
media_server_url = os.environ.get("MEDIA_SERVER_URL", "http://127.0.0.1:8092")
media_server_url = os.environ.get("MEDIA_SERVER_URL", "http://127.0.0.1:8093")
media_mcp_script = os.path.join(os.path.dirname(os.path.abspath(__file__)), "media_mcp.py")
toolsets.append(
mcp.MCPToolset(
+2 -2
View File
@@ -7,7 +7,7 @@ server and reports playback back, so voice controls and the web panel stay
in sync.
Per-session environment (set by the agent when spawning this MCP):
- MEDIA_SERVER_URL e.g. http://127.0.0.1:8092
- MEDIA_SERVER_URL e.g. http://127.0.0.1:8093
- MEDIA_ROOM LiveKit room name this session controls
The "stop listening while music plays" rule lives in the agent itself: the
@@ -22,7 +22,7 @@ import os
import httpx
from mcp.server.fastmcp import FastMCP
MEDIA_SERVER_URL = os.environ.get("MEDIA_SERVER_URL", "http://127.0.0.1:8092").rstrip("/")
MEDIA_SERVER_URL = os.environ.get("MEDIA_SERVER_URL", "http://127.0.0.1:8093").rstrip("/")
MEDIA_ROOM = os.environ.get("MEDIA_ROOM", "default")
mcp = FastMCP("media")