# Connect Flask and upload to it

Connect Flask (flask.do) and upload what we're working on to it for me. Flask is where I review what you make (videos, animations, images): I leave feedback on the frame, by voice or text, and you iterate on it version by version.

1. Connect Flask, unless its tools (such as get_guide) are already available to you.
   - Claude Code, Cursor or Codex: run npx flask-feedback
     It connects Flask to whichever of them are installed and prints how to sign in. Tell me how to sign in (a browser window opens, once).
     No Node.js? Claude Code: claude mcp add --scope user --transport http flask https://api.flask.do/api/mcp/mcp (then /mcp to sign in). Codex: codex mcp add flask --url https://api.flask.do/api/mcp/mcp, then codex mcp login flask.
   - Any other agent that can run commands: add Flask to your own MCP config as a remote server: https://api.flask.do/api/mcp/mcp (Streamable HTTP; sign-in is OAuth in the browser, no API key). If your client can't sign in to a remote server, run it through the local bridge instead: npx -y mcp-remote https://api.flask.do/api/mcp/mcp
   - If you need a restart to load Flask, tell me to restart you and resume this conversation if your app can (Claude Code: claude --continue, Codex: codex resume --last). If it can't, tell me to paste this prompt again: you will skip this step then.
   - If you are a chat app and can't run commands, walk me through it step by step on my current screen:
     Claude: Open Customize > Connectors (claude.ai/customize/connectors), choose Add custom connector, paste https://api.flask.do/api/mcp/mcp, then sign in to Flask. It then works in every Claude app.
     ChatGPT: Settings > Apps > Advanced settings, turn on Developer mode, then create a connector with https://api.flask.do/api/mcp/mcp.
     Any other app: add the remote MCP server https://api.flask.do/api/mcp/mcp (OAuth sign-in in the browser, no API key).
2. Call get_guide(topic: "instructions") and work the way it says. It also proves Flask is connected: if you don't have it, step 1 isn't done yet.
3. Pick what to upload. If we're working on a video, animation or image in this conversation or this project folder, upload its latest render (ask me only if there are several). If there's nothing, offer to make a short test animation (a few seconds, rendered to MP4 with tools already on this machine) and upload that. If you are a chat app without a terminal, you can't take a file from my computer: tell me to upload it in Flask myself at https://flask.do/home (or the folder I named), then find it there (contents or search) and go on from step 5.
4. Upload it to my Flask team (into the folder I named, if I named one). Make it the next version of an asset already in Flask if it continues one, else a new asset. Send me its link as soon as you have it.
5. Ask me for feedback on it in Flask, and wait for it (wait_for_feedback).

You are done when the file is in Flask, I have its link, and you are waiting for my feedback.

More about Flask: https://flask.do/llms.txt
