I'm trying to connect moonfin to seerr so I can access seerr directly on moonfin. There are so many different IP's that I've gathered over this whole process and I have no clue which one to put under the moonfin plug for the seerr url. I've tried a bunch of different ones and none of them seem to be working. One of them did say "No session cookie received from Seerr"
17 replies
tomspark wrote:
Hey — need a bit more to go on (title says it's broken but the post body came through blank). What specifically is happening? Drop: - The error or screen you see - Your SparkBox version: cat /opt/sparkbox/VERSION - Last 20 lines of the install log: sudo tail -20 /opt/sparkbox/state/media-finish.log One common Moonfin gotcha worth flagging up front: Moonfin is the CLIENT APP for mobile / TV / desktop (Roku, Apple TV, Fire TV, iOS, Android, Mac — search 'Moonfin' in your app store and point it at your NAS). It does NOT change Jellyfin's web UI to look Netflix-style. If you were expecting the browser tab to change, that's not what it does — the apps are the experience.
Vorx4643 wrote:
Sparkbox Version is 1.6.89! image
tomspark wrote:
That "No session cookie received from Seerr" is the hint — Moonfin's Seerr plugin needs an API KEY, not a username/password login. Two steps: 1. Get the API key: open Seerr in a browser, Settings → General → API Key (there's a copy icon next to it). 2. In Moonfin's Seerr plugin config — URL is http://<your-NAS-IP:5055 (your NAS's LAN IP, NOT an internal docker hostname like sb-seerr or localhost). API Key field gets the value from step 1. Leave any username/password fields blank — the API key on its own is enough. The many-IPs confusion: from a phone or TV, Moonfin needs an IP your phone can actually reach. That's the same IP you'd type in your laptop's browser to open Seerr's web UI — usually 192.168.x.x:5055 on most home networks.
Vorx4643 wrote:
I'm on Windows 11; Would that be my local ipv4 IP? The one that you get from ipconfig in command prompt/powershell
Vorx4643 wrote:
Also I am not seeing a spot on moonfin where you can enter in the seerr api key
tomspark wrote:
Quick correction — I was wrong about the API key. Moonfin uses your existing Jellyfin login to authenticate against Seerr, not a separate API key, so no API-key field is expected. The "No session cookie" error means Seerr isn't logged in via Jellyfin auth yet. Real fix: 1. Open Seerr in a regular browser at http://<your-IPv4-from-ipconfig:5055 (yes — that's the right IP, your Windows machine's LAN address). 2. Click "Sign in with Jellyfin user" on the Seerr login screen and use your Jellyfin admin login. That creates the session Moonfin then re-uses. One more clarifying Q — where exactly is the "Seerr URL" field you're filling in? If it's inside Jellyfin → Dashboard → Plugins → Moonfin settings, the URL there is http://sb-seerr:5055 (container-to-container, different from above). If it's inside the Moonfin desktop/mobile/TV app, it's the same IPv4 URL as step 1.
Vorx4643 wrote:
It's already signed in with jellyfin user and I have signed out of Seerr and signed back in just to verify:
tomspark wrote:
Two specific checks since the Jellyfin-auth side looks right: 1. In Seerr → Settings → General, what's the "Application URL" field set to? If Seerr has it as http://localhost:5055 but Moonfin is calling http://192.168.x.x:5055 (or vice-versa), the session cookie won't bind across origins — same site behaviorally but different origins to the browser. 2. What's the EXACT URL you're typing into Moonfin's Seerr URL field? Needs to match Seerr's Application URL character-for-character (same scheme, same host, same port). If they don't match: set Seerr's Application URL to the same IP/URL Moonfin is using, hit Save, sign out + back in once more, retry. That's the most common cause of "No session cookie" once the Jellyfin auth itself is working.
Vorx4643 wrote:
The Seerr URL on Moonfin is set to http://sb-seerr:5055 The Application URL on Seerr is set to http://sb-seerr:5055 If I put in the correct username and password (I changed username to Vorx and the password to my own) then it says the "No session cookie" error, but if I put in the incorrect username and password then it says "Authentication failed: Unauthorized"
tomspark wrote:
Found it. sb-seerr is a docker-internal hostname — only resolvable from inside SparkBox's docker network. Your Moonfin client has no DNS entry for it, so the auth request technically reaches Seerr but the cookie that comes back is domain-scoped to sb-seerr, which the client can't store or replay. That's the "No session cookie" — the cookie exists but it's bound to a name your machine doesn't recognize. Change BOTH fields to use your NAS's actual LAN IP (the same one you'd type in a regular browser to reach Seerr): - Seerr → Settings → General → Application URL → http://<your-LAN-IP:5055 - Moonfin → Seerr URL → http://<your-LAN-IP:5055 Save Seerr's setting, sign out + back into Seerr once to mint a fresh cookie against the correct host, then retry Moonfin. The sb-seerr shortname only works for container-to-container traffic (like Jellyfin's server-side plugin reaching Seerr) — not for client apps.
Vorx4643 wrote:
Nope, just get an unexpected error occurred now. I have tailscale on the machine setup as well if that changes anything but I've tried every IP I can see. http://sb-seerr:5055 http://172.29.24.XXX:5055 - The one that you can see on he SparkBox interface http://XXX.XX.XXX.XX:5055 - The one listed on Tailscale Machines http://192.168.1.XX:5055 - The one listed on command prompt on my windows machine under ipconfig
tomspark wrote:
Let's simplify the diagnostic. Forget Moonfin for a second: what URL do you type into a regular web browser (Chrome / Firefox / Edge) to open Seerr's web page successfully? The one where you see the Seerr login form and can actually sign in. THAT exact URL is what both fields need (Seerr's Application URL AND Moonfin's Seerr URL — character-for-character). If the answer is "none of those URLs open Seerr in a browser either" — that's a different problem (SparkBox is on your Windows machine, port-forwarding wonkiness via WSL2 / Docker Desktop). In that case try http://localhost:5055 from a browser on the same Windows machine — that's the most reliable from-localhost path. For reference, of your four candidates: - http://sb-seerr:5055 — docker-internal only (doesn't work from browser) - http://172.29.24.x:5055 — also docker-internal NAT (doesn't work from browser) - Tailscale IP — only works from devices on your tailnet - LAN IP from ipconfig — should work in the browser if port-forwarding is healthy Reachable-in-browser = the right URL.
fellini wrote:
To chime in, I've hit the exact same problem. I just had a go making sure my LAN IP is being used everywhere I could find (used many combos as per the thread), including any "external" fields, but I still get No session cookie when trying the final step to link Seer via the moonfin plugin on the jellyfin user setup. So: Seer General Settings Application URL: http://:5055 Jellyfin Advanced Network settings: all defaults (a lot of stuff here that might be appropriate but a bit outside my knowledge) Jellyfin Dashboard Moonfin plugins settings - Seerr URL: http://:5055 Jellyfin User Settings Moonfin settings Seer login section -- sparkbox admin/pwd, click Sign In. No session cookie. Browser network inspection: Request URL http://:8096/Moonfin/Jellyseerr/Login Request Method POST Status Code 401 Unauthorized Remote Address 192.168.1.101:8096 Referrer Policy no-referrer Payload: { "username": "sparkbox", "password": "xxxyyyzzzetc", "authType": "jellyfin" } Response: {"error":"No session cookie received from Seerr","success":false} Seer logs from event: Label API Message Found matching Jellyfin user; updating user with Jellyfin Additional Data { "ip": "::ffff:172.20.0.1", "jellyfinUsername": "sparkbox" } Jellyfin log: [2026-05-12 09:53:50.333 -04:00] [INF] [68] Jellyfin.Server.Implementations.Users.UserManager: Authentication request for "sparkbox" has succeeded. [2026-05-12 09:53:50.334 -04:00] [INF] [68] Emby.Server.Implementations.Session.SessionManager: Current/Max sessions for user "sparkbox": 3/0 [2026-05-12 09:53:50.334 -04:00] [INF] [68] Emby.Server.Implementations.Session.SessionManager: Logging out access token "xxxxyyyyeetc" [2026-05-12 09:53:50.335 -04:00] [INF] [68] Emby.Server.Implementations.Session.SessionManager: Creating new access token for user xxxxxxyyyyyyetc [2026-05-12 09:53:50.472 -04:00] [WRN] [68] Moonfin.Server.Services.JellyseerrSessionService: No session cookie received from Seerr for user "sparkbox" Both Windows desktop client and AppleTV client give a "Seerr not configured or unavailable" error when clicking it's UI button. No event logged in Seer. Jellyfin logs: [2026-05-12 09:53:14.621 -04:00] [INF] [81] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "172.20.0.1" closed [2026-05-12 09:53:15.233 -04:00] [INF] [51] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "172.20.0.1" request The appearance of the 172. IP (WSL gateway?) makes me think more needs to be added to the Jellyfin network settings? Anyway, enough for this morning, I really should be mowing my lawn right now :)
tomspark wrote:
Thanks for the precise repro — that's enough to confirm it's not config on your side. Second independent report of "No session cookie received from Seerr" with otherwise-healthy Jellyfin auth (your Seer log confirms the Jellyfin user resolved), so I'm pulling this onto the bug tracker rather than punting back as user-env. The failing line in your Jellyfin log is Moonfin's own JellyseerrSessionService — plugin code parsing Seerr's HTTP response. One diagnostic to pinpoint which side owns the fix: From a shell on the NAS: curl -i -X POST http://<NAS-IP:5055/api/v1/auth/jellyfin -H 'Content-Type: application/json' -d '{"username":"sparkbox","password":"<your-jellyfin-pw","hostname":"http://<NAS-IP:8096","port":8096}' Paste the response headers (redact cookie values). If Set-Cookie: connect.sid=… is present, bug is in Moonfin's cookie parsing (upstream). If absent, it's a Seerr setting on our side. Either way — mow first.
fellini wrote:
Halfway mowed. Lunch break :) Set-Cookie is absent. I'm getting: HTTP/1.1 500 Internal Server Error X-Powered-By: Express Content-Type: application/json; charset=utf-8 Content-Length: 48 ETag: W/"30-xxxobscured" Date: Tue, 12 May 2026 16:09:34 GMT Connection: keep-alive Keep-Alive: timeout=5 {"error":"Jellyfin hostname already configured"}
tomspark wrote:
@fellini — that 500 body pins it down. Same root cause as the v1.6.88 fix for Seerr's first-run wizard, just resurfacing on Moonfin's login flow. Seerr's /api/v1/auth/jellyfin POST handler is hard-coded as setup-only: once jellyfin.hostname is non-empty in settings.json (i.e. after you've signed into Seerr's wizard once), every subsequent POST returns 500 regardless of credentials. Moonfin's plugin uses that exact endpoint for ongoing login, so it inherits the rejection. The "No session cookie" was Moonfin trying to parse a Set-Cookie out of a 500 response — there was no cookie to parse because the request never authenticated. So the fix is on our side, not Moonfin's cookie parsing. Needs a patch-seerr-bundle.sh rule that makes the auth-jellyfin handler accept re-auth after hostname is set (sed against the compiled Seerr server bundle, same infra as the existing client-side patches). On the v1.7.x track now. Really appreciate the precise repro — without the curl headers we'd have been chasing Moonfin upstream for nothing.