# Troubleshooting

> Each error and its fix.

Canonical: https://dvt.dev/docs/troubleshooting/

Find the message you saw, then apply the fix.

## It connected but the agent sees no flurry tools

Restart the app after adding flurry; most hosts load their tool list at start. In Claude Code, run `claude mcp list` and check flurry shows as connected. In flurry, **Connect AI** turns green once your agent has connected.

## The address can't be reached

On a laptop, flurry must be running: start it with `uv run --project service flurry dev` and keep that terminal open. The address ends in `/mcp`, with no slash after it.

## Claude or ChatGPT can't connect to a laptop

Both run in the cloud and can't reach `127.0.0.1`. Use Claude Code, Cursor or VS Code on the laptop, or install flurry in Snowflake.

## 401 Network policy is required

Your Snowflake programmatic access token needs a network policy attached. Ask your admin to attach one, then make a new token.

## 302 redirect to a login page

The token was sent in the wrong form. Use `Authorization: Snowflake Token="<PAT>"`, never `Bearer`. Copy the command from **Connect your AI** again.

## 403 No Organization Membership

You haven't signed in to Snowflake in a browser yet. Open flurry's URL in a browser once, sign in, then try again.

## 406 Not Acceptable

Cortex Code needs both `-t http` and `--snowflake-connection <CONNECTION>`. Without `-t http` it reports `spawn ENOENT` instead.

## Claude says the sign-in failed

People who use the Claude connector must not hold an admin role, not even as a secondary role. Ask your admin for a non-admin role. Also check the admin pasted the right client ID in **Admin › Access**.

## flurry dev fails to start

Run `uv run --project service flurry dev --check`; it prints the step that failed. If a package step fails, run `npm ci` again in the flurry folder. If the port is busy, add `--port 8800`.

## A change was refused

Change notes need at least three specific words; "update", "changes" and "wip" are refused. A write the app's rule doesn't allow is blocked and listed in the app's History with the rule that stopped it.
