My MCP zip uploads have been failing pretty regularly, which then leads to needing to push files in batches that Retool’s AI likes to edit and fabricate. Leads to intense AI credit burn that seems avoidable.
Is there some other instruction I need to give to Claude Code to get him to upload ‘prepare for import’ zips properly?
This is the typical attempt at a zip push (removed the file path and token):
SP="C:/.../scratchpad"
curl -sS -X PUT --max-time 45 --connect-timeout 15
-H "Authorization: Bearer ..."
-H "Content-Type: application/zip"
--data-binary "@$SP/home-import.zip"
-w "\n[HTTP %{http_code}] connect=%{time_connect}s total=%{time_total}s\n"
"http://a132fb0b8111f4aeb80d396974cec15f-b0a509fe80776354.elb.us-west-2.amazonaws.com:80/sandbox/sandbox-7a2ed941-5a96-4335-9dca-1be976873212/_/upload" 2>&1 | tail -20
And the result:
The zip-upload path is still broken — the signed URL is an internal AWS ELB address that never completes a TCP connect from outside Retool's network:
curl: (28) Connection timed out after 15007 milliseconds
[HTTP 000] connect=0.000000s total=15.007622s
Summary
Using the new app builder on a Cloud instance, MCP-based ZIP uploads fail regularly because the returned upload URL is an internal AWS ELB hostname that never completes a TCP connect from outside Retool's network (curl error 28 timeout), forcing file pushes in batches that burn AI credits.
AI Response
The documented React app import flow does not involve manually PUTing a 'prepare for import' zip to a raw sandbox '_/upload' endpoint, which is why the internal ELB URL is unreachable and times out. Instead, there are two supported paths: upload the .zip (50 MB or smaller) directly in the app builder's Chat tab via the 'Import React code' file picker, or from the repository root simply ask the MCP agent to import the app and let it drive the import rather than issuing raw curl uploads. Steering Claude Code toward the agent-driven import (or the in-builder file picker) avoids the failing manual upload path and the associated credit burn.
Sources
Import external React apps | Retool Docs
Documents the two supported ways to import a React app zip — the in-builder 'Import React code' file picker and the MCP agent-driven import from the repo root — instead of a manual curl upload.
Import apps using MCP
Official announcement of importing apps via the MCP server, confirming the intended agent-driven import workflow rather than manual zip PUTs to a sandbox endpoint.
The Community Team is testing out a new automation. Let us know if it's helpful (or not) by leaving a
,
, or
. Or by marking this post as the "Solution"! Let us know if you have any feedback here. 