• v3.8.0 cee8015ccc

    ric_harvey released this 2026-03-24 15:04:53 +00:00 | 175 commits to main since this release

    What's new

    Optional bearer token authentication

    OmniMem now supports built-in authentication on both the MCP server and web UI, enabled via environment variables:

    • MCP_AUTH_TOKEN — protects the MCP SSE endpoint (port 8765) using a custom FastMCP TokenVerifier subclass
    • WEB_UI_AUTH_TOKEN — protects the web dashboard (port 8080) using Starlette middleware

    Both are fully optional. When unset or blank, behaviour is unchanged from previous versions. No new dependencies required.

    The /metrics endpoint and /static/ assets are exempt from web UI auth so Prometheus scraping continues to work without credentials.

    Connection guides

    New guides/ directory with setup instructions for six coding agents:

    Agent Transport
    Claude Code Native SSE
    GitHub Copilot Native SSE
    Cursor SSE (known quirks)
    AWS Kiro Native SSE
    OpenCode Native SSE
    OpenAI Codex CLI Needs supergateway bridge

    Configuration

    Add to your .env:

    MCP_AUTH_TOKEN=your-secret-token      # Protects MCP endpoint
    WEB_UI_AUTH_TOKEN=your-secret-token   # Protects web dashboard
    

    Generate a secure token:

    python3 -c "import secrets; print(secrets.token_urlsafe(32))"
    

    Add the token to your Claude Code config:

    {
      "mcpServers": {
        "omnimem": {
          "type": "sse",
          "url": "http://localhost:8765/sse",
          "headers": {
            "Authorization": "Bearer your-secret-token"
          }
        }
      }
    }
    

    See docs/reverse-proxy.md for full documentation including reverse proxy examples.

    Full changelog: v3.7.1...v3.8.0

    Downloads