KwaFlux MCP Not Working? Fixes for Missing Tools, app_not_running, and Timeouts
Tools missing, every call says app_not_running, waits time out, or a job is refused: what each KwaFlux MCP symptom means and how to fix it.
Key takeaways
- Work from the outside in: does the host start the server, does the server reach the app, does the app accept the job?
- If no KwaFlux tools appear, the cause is nearly every time the host config: invalid JSON or YAML, the wrong file, Node.js not found, or no reload.
app_not_runningmeans the server works but KwaFlux isn't open (or isn't on the same computer).- Long waits that fail after about a minute are a host timeout, not a failed job. The job keeps running in KwaFlux.
When KwaFlux's MCP connection doesn't work, the symptom tells you which layer to look at. Either the host didn't start the server, or the server couldn't reach the app, or the app refused the request. Each has a short list of causes, and each cause has an exact fix.
In this guide, you'll learn how to tell the three layers apart, the fixes for each, the error messages KwaFlux returns, and a two-minute check you can run without any AI host.
Contents
- What can go wrong, layer by layer
- Layer 1: no KwaFlux tools in the host
- Layer 2: tools appear, but calls fail with app_not_running
- Layer 3: the app refuses the job
- Waits that time out
- Jobs that fail or produce nothing
- A check without any AI host
- Quick reference
- FAQ
What can go wrong, layer by layer
A request passes through three pieces:
- The host (Cursor, Claude, Codex, DeepSeek Harness, Hermes, OpenClaw) reads its config and starts KwaFlux's MCP server.
- The MCP server, a Node.js script on Windows or a helper inside the app on Mac, connects to the running KwaFlux app.
- KwaFlux checks the request and queues the job.
| What you see | Layer | Go to |
|---|---|---|
| No KwaFlux tools at all | Host config | Layer 1 |
Tools appear; every call says app_not_running | Server to app | Layer 2 |
| Some calls work; jobs are refused | App checks | Layer 3 |
| Waits fail after a minute or so | Host timeout | Waits |
| A job runs but fails or leaves no file | Job | Jobs |
Layer 1: no KwaFlux tools in the host
1. The config file is invalid. One error can make the host drop every server in the file.
- JSON (Cursor, Claude, OpenClaw): Windows paths need double backslashes,
C:\\Program Files\\.... No comments, no trailing commas. - TOML (Codex): use single quotes around Windows paths, as KwaFlux's snippet does, or double every backslash.
- YAML (DeepSeek Harness, Hermes): keep the indentation of the snippet; single quotes keep backslashes as they are.
2. It's in the wrong file or scope.
| Host | Common mistake | Right place |
|---|---|---|
| Cursor | Added to one project's .cursor/mcp.json | ~/.cursor/mcp.json |
| Claude Code | Added with the default local scope in another folder | claude mcp add --scope user ... |
| Codex | Key written as mcpServers or mcp-servers | [mcp_servers.kwaflux] in ~/.codex/config.toml |
| DeepSeek Harness | Row in a profile you don't run | The home patch ~/.dsh/cordis.patch.yml |
| Hermes | Nested as mcp: › servers: | Top-level mcp_servers: in ~/.hermes/config.yaml |
| OpenClaw | Written under mcpServers | mcp.servers in ~/.openclaw/openclaw.json |
3. Node.js isn't found. On Windows, the host starts the server with Node.js 18 or newer. KwaFlux's Settings card looks for it and writes its full path into the config. If the card says "Node.js not found. Hosts start this server with Node.js 18 or later; install it first." or that your version "is too old", install the current LTS release, click Check for Node.js again, and copy the config again. If you wrote the config by hand with plain "node", replace it with the full path, such as C:\Program Files\nodejs\node.exe, or restart the host so it picks up the new PATH.
4. The path to the server is wrong. The script is kwaflux_mcp.mjs in Tools\kwaflux-mcp inside the KwaFlux install folder. If you installed KwaFlux somewhere other than C:\Program Files\KwaFlux, copy the snippet from KwaFlux's Settings › Agent (MCP) card, which fills in the real path. If the card warns "No bundled MCP server was found, so the path below is only a placeholder," reinstall KwaFlux.
5. The host wasn't reloaded. Each host has its own way:
| Host | Reload |
|---|---|
| Cursor | Toggle the server under Customize, or restart Cursor |
| Claude Code | Start a new session; check with /mcp |
| Claude Desktop | Quit fully, including from the tray, then reopen |
| Codex | Restart, or run /mcp |
| DeepSeek Harness | Saves hot-reload; otherwise restart the session |
| Hermes | /reload-mcp |
| OpenClaw | Reload its MCP servers, or restart the gateway |
Per-host walkthroughs: Cursor, Claude Code and Claude Desktop, Codex, DeepSeek Harness, Hermes and OpenClaw.
Layer 2: tools appear, but calls fail with app_not_running
This is the easiest one. On Windows, the full message looks like this:
app_not_running: Error: app_not_running: no control file of a running KwaFlux in C:\Users\<you>\AppData\Local\KwaFlux\agentIt means the server started fine but found no running KwaFlux to talk to. Fixes:
- Open KwaFlux and wait until its window is up, then ask again. You don't need to reload the host.
- Same computer, same user. The server only reaches a KwaFlux running on the same computer under the same Windows or macOS account. An agent on a VPS, a Cursor Cloud Agent, or a session under another user account can't reach it.
Layer 3: the app refuses the job
When KwaFlux refuses a request, the tool result says why. The common ones:
| Reason | Meaning | Fix |
|---|---|---|
not_signed_in | The job writes a file and you're not signed in | Sign in to KwaFlux, then ask the assistant to retry |
entitlement_denied | Your account's plan doesn't cover this job | See the plan note at the end of this guide |
agent_download_disabled | Agent downloads are off | Set Let agents start downloads under Agent access to Ask every time, or download in the app |
user_declined / approval_expired | You clicked Deny or closed the approval popup, or nobody answered within 2 minutes | Nothing to fix; ask again if you do want the download |
agent_control_disabled | The master switch is off | Turn on Allow AI agents to control KwaFlux under Agent access |
| Path rejected | A network/UNC path, a relative path, or a typo | Give the full local path, such as D:\Videos\clip.mp4 |
Rate limited (app_busy) | Too many new jobs in a short time | Ask the assistant to queue them one at a time |
Network paths like \\server\share\clip.mp4 are refused on purpose, before any file is opened. Copy the file to a local drive first. For why, see path and privacy rules.
Waits that time out
KwaFlux's wait tool waits up to 300 seconds in one call, 60 by default. Some hosts give an MCP call less than that:
| Host | Setting | Suggested value |
|---|---|---|
| Codex | tool_timeout_sec (default 60) | 330 |
| DeepSeek Harness | toolCallTimeoutMs (60,000 reported by a third-party guide) | 330000 |
| Claude Code | timeout on a .mcp.json entry, in milliseconds | 330000 |
| Hermes | timeout on the server entry | Above 300 seconds |
A timed-out wait doesn't stop the job. It keeps running in KwaFlux's task list, and the assistant can wait again or check its status.
Jobs that fail or produce nothing
- Read the task's error reason. Ask the assistant: "Get the KwaFlux task and tell me its error." The task details include the reason.
- Check where the output went. Results are written next to the input, not to a folder the assistant names, and an existing file with the same name is kept: the new one is renamed
name(1).ext. Converted files end in_kwaflux_<format>-<tier>, repaired files in_repair. - Repair needs a reference. If the diagnosis says a reference file is required, give a healthy clip from the same camera. See Video File Repair.
- Not available from chat. Frame interpolation and the matting and replace tools aren't offered over MCP. Do them in the app.
- Still failing? Retry once in the KwaFlux window itself. If it fails there too, it's not an MCP problem; send the task's error reason to support.
A check without any AI host
If you're not sure whether the server can start at all, run it by hand in a terminal:
node "C:\Program Files\KwaFlux\Tools\kwaflux-mcp\kwaflux_mcp.mjs"A healthy server prints nothing and waits for input, because it's waiting for a host to talk to it. Press Ctrl+C to stop it. If you see an error instead, such as "not recognized" (Node.js isn't on PATH) or "Cannot find module" (wrong path), fix that first; no host will do better.
Quick reference
| Symptom | Most likely fix |
|---|---|
| No tools, JSON host | Double the backslashes; validate the file |
| No tools, Claude Code | Re-add with --scope user |
| No tools, DeepSeek Harness | Put the row in ~/.dsh/cordis.patch.yml |
| Server won't start | Install the current Node.js LTS; restart the host |
app_not_running | Open KwaFlux on the same computer |
not_signed_in | Sign in to KwaFlux |
agent_download_disabled | Set agent downloads to Ask every time, or download in the app |
agent_control_disabled | Turn the master switch back on |
| Waits fail at about a minute | Raise the host's tool timeout |
| File not where expected | Look next to the source file |
Final thoughts
Find the layer first. No tools means the host config; app_not_running means the app isn't open on this computer; a refusal names its own reason; a one-minute failure is a host timeout. When in doubt, run the server by hand: if it waits quietly, the problem is in the host or the app, not the server.
Get KwaFlux working with your assistant
KwaFlux includes a local MCP server for Cursor, Claude, Codex, DeepSeek Harness, Hermes, OpenClaw, and other MCP apps. AI processing runs locally on your GPU — media files are not uploaded for processing. It runs on Windows 10 (64-bit, version 1809 or later), Windows 11, and macOS 12 or newer on Apple Silicon. Importing files and exploring the app need no account. Signing in with an active paid plan is required only to export, convert, repair a file, or download a file from a link.
Try It on Your Own Footage
Download KwaFlux and preview effects on your own footage for free before you pay — no account needed, and your media is processed on your GPU, not uploaded for processing. Video previews run 1, 3, or 5 seconds; stabilization previews run 5, 15, or 30 seconds.
Frequently asked questions
Why don't my MCP tools show up?
Usually because the host couldn't read its config or start the server. Check for invalid JSON, YAML, or TOML, the right file and scope, Node.js on PATH, and a reload. One syntax error can hide every server in that file.
Why does an MCP server fail with "node is not recognized"?
Because Node.js isn't installed or isn't on the PATH the host sees. Install it, then quit and restart the host. If that doesn't help, put the full path to node.exe in the server's command.
What does app_not_running mean?
It means the MCP server started but found no running app to connect to. Open the app on the same computer and under the same user account, then try again. Reloading the host isn't needed. For setup steps, see the Cursor guide.
Why do long MCP tool calls time out?
Because many hosts limit one tool call to about 60 seconds by default, while some tools are designed to wait longer. Raise the host's per-server tool timeout. The underlying job usually keeps running.
Can an MCP server use files on a network drive?
It depends on the server. Some refuse network paths on purpose, because opening one can make Windows sign in to that server automatically. Copy the file to a local drive first.
Sources
- Model Context Protocol, "Transports" (2026-07-28; stdio over the standard streams of a client-launched subprocess) (accessed 2026-10-26)
- OpenAI, Codex documentation, MCP page (tool_timeout_sec default 60) (accessed 2026-10-26)
- Claude Code Docs, MCP page (scopes; per-server timeout) (accessed 2026-10-26)
- ZensInk, "DeepSeek Harness (DSH): A Hands-On Setup Guide with MCP Integration" (toolCallTimeoutMs default) (accessed 2026-10-26)
- Microsoft Security Response Center, "Microsoft Mitigates Outlook Elevation of Privilege Vulnerability" (UNC paths and automatic NTLM sign-in) (accessed 2026-10-25)


