feat: web access via MCP (Firecrawl search/scrape) + mcp server attach support

- agent/web_mcp.py: stdio MCP server exposing web_search and web_scrape,
  backed by the self-hosted Firecrawl stack on xNAS (no API key needed)
- agent.py: Agent now attaches mcp_servers built from config; EXTRA_MCP_SERVERS
  env var allows adding arbitrary HTTP/SSE MCP servers as JSON
- Dockerfile: installs livekit-agents[mcp], copies web_mcp.py
- .env.example: WEB_MCP_ENABLED, FIRECRAWL_BASE, EXTRA_MCP_SERVERS documented
This commit is contained in:
Shane
2026-08-22 12:29:04 -04:00
parent 6f2b231938
commit 045ddabac7
12 changed files with 452 additions and 87 deletions
+11
View File
@@ -17,3 +17,14 @@ LIVEKIT_API_SECRET=devsecret
# Web UI port
WEB_PORT=8090
# ── Web access (MCP tools: web_search + web_scrape) ────────────────────────
# Backed by the self-hosted Firecrawl stack on xNAS.
WEB_MCP_ENABLED=true
FIRECRAWL_BASE=http://192.168.86.2:3002
# Only needed if your Firecrawl instance requires an API key
# FIRECRAWL_API_KEY=
# Extra MCP servers (optional). JSON list of {url, transport} objects.
# transport: "sse" | "streamable_http" | omit for auto-detect
# EXTRA_MCP_SERVERS=[{"url":"http://192.168.86.2:3001/mcp","transport":"streamable_http"}]