Troubleshooting
Fix installation, authentication, scanner, sync, and coverage failures.
Command not found
Run pipx ensurepath, restart the terminal, then confirm pipx list contains Aevrin. On Windows,
open a new PowerShell session after changing PATH.
Login expired or revoked
aevrin logout
aevrin loginScanner exited 1
An exit code can mean findings or execution failure depending on the scanner. Aevrin recognizes each tool's finding codes and parses JSON before deciding. Malformed or empty JSON, timeout, missing image, mount denial, or network failure marks coverage unreliable instead of returning zero findings.
Docker or mount failure
Start Docker, select Linux containers on Windows, allocate at least 4 GB, and allow drive or temp- directory sharing. Rerun the same command. Do not accept the old incomplete score as clean.
No MCP entrypoint discovered
This is a non-applicable tool-description check, not a source-scanner failure. Confirm the target contains an MCP SDK dependency and recognizable server entrypoint. Source findings remain valid even when the target is not an MCP server.
CLI scan missing from dashboard
Confirm the terminal printed Saved to your Aevrin dashboard, --no-upload was not used, and
the CLI account matches the browser account. A network failure after local completion does not
change the scan exit code; rerun after connectivity returns if persistence is required.
Aevrin MCP refuses every tool call
Each refusal is a sentence rather than an empty result, so read the one you got.
- "This Aevrin API key is invalid or revoked." The key is missing, malformed, unknown or
revoked, and all four look the same on purpose. Run
aevrin mcp-headerto check the key the CLI would supply, runaevrin loginif it errors, then start a new agent session. See Connect Aevrin MCP. - "Capability execution is not available yet." Running a capability on Aevrin's servers is
switched off until the host for it has been prepared. Searching and
get_capabilitywork, so use the capability's instructions instead. Nothing is counted against your limits while it is off. - "No published capability has that slug." Search first and use a slug exactly as it came back. A slug is not guessable and is not built from a project name.
- "Your Aevrin credits for this billing period are used up." Searching still works, because it is never counted, and the sentence carries the reset date and a plans link. A top-up adds credits immediately. See Aevrin MCP limits.
- "Aevrin is temporarily unavailable." or "Aevrin could not be reached." Transport or availability, not your request. Retry once after a few seconds.
An agent can read the full list, with what to do about each one, at
/.well-known/skills/aevrin-mcp/SKILL.md.
Aevrin MCP finds nothing
An empty search result is a normal answer. The Registry holds only what an Aevrin administrator has reviewed and published, and it is still being filled, so there may be nothing matching yet. Describe the goal rather than a product name, and do not re-run the same query.
Claude Code blocks every Bash and Write call after upgrading Aevrin
Aevrin's Claude Code hook has been retired, and from version 0.8.0 the file it ran is gone. If you
set the hook up in an earlier release, Claude Code still tries to run aevrin_cli/hook_script.py
on every Bash and Write call, fails to find it, and blocks the call. Remove the PreToolUse entry
that points at hook_script.py from your Claude Code settings (.claude/settings.json in the
project, or ~/.claude/settings.json). You can also delete ~/.aevrin/hook_credentials and
revoke its key under Settings → API Keys.
Still stuck? Email ujjwal@aevrin.net with the Aevrin version, target type, stage name, and redacted error text.