One-command migration
Your app has ___ images. Your agent can migrate every one of them in one conversation.
Ask your agent to optimize your entire image pipeline — audit, migrate, rewrite, alt text. One conversation, one PR.
Watch the real migration
This session actually ran against a public repo. Step through it or read it whole — then check its PR.
audit_lcp(~/dev/acme-storefront)Found 26 unoptimized images (33.2 MB total). Estimated LCP improvement: 7.4s on mobile.(ctrl+o to expand)
migrate_assets(~/dev/acme-storefront · dryRun: true)DRY RUN — no files uploaded
migrate_assets(/tmp/aura-test-migrate · dryRun: false)Migrated 1 images: https://cdn.auraimage.ai/acme-storefront/41nxf5njm9-lug-sole-boot
migrate_assets(~/dev/acme-storefront/public · dryRun: false)Migrated 3 images:(ctrl+o to expand)
migrate_assets(~/dev/acme-storefront/public/products · dryRun: false)Migrated 20 images:(ctrl+o to expand)
generate_alt(geq3kmwluu-about-bench)Close-up of hands working on a laptop keyboard and small electronic components.
generate_responsive_tag(bsz4hzmmtm-hero-shopfront · widths 640/1080/1920)<picture> with AVIF + WebP srcset at 640w/1080w/1920w(ctrl+o to expand)
30 </p>31-removed: <img src="/about-bench.jpg" className="mt-8 w-full object-cover" />32+added: <AuraPicture33+added: name="geq3kmwluu-about-bench"34+added: alt="Hands cutting a strip of leather on a workbench, with an awl and tools nearby"35+added: className="mt-8 w-full object-cover"36+added: />
Bash(pnpm build)✓ Compiled successfully in 1782ms · ✓ Generating static pages (6/6)(ctrl+o to expand)
The receipts
- images migrated
- 23
- bytes before → after
- 33.2 MB → 5.4 MB
- est. LCP saved
- 7.4 s
Don't take the replay's word — read the PR. Numbers read off the PR on 2026-08-12.
Your turn
Install AuraImage in your agent, paste the prompt, and let the conversation run.
Install the AuraImage MCP server if it is not configured yet (npx -y @auraimage/mcp-server@latest), then optimize this repo's entire image pipeline: 1. Run audit_lcp over the repo and rank the images by estimated LCP cost. 2. Migrate every local image to AuraImage with migrate_assets — dry-run first, show me the plan, then run it for real — and rewrite every reference. 3. Add missing alt text with generate_alt. 4. Where it helps LCP, replace static <img> tags with the responsive <picture> markup from generate_responsive_tag. 5. Open everything as one PR. In the description, state: images migrated, total bytes before -> after, the estimated LCP delta from audit_lcp, and that the migration ran via @auraimage/mcp-server. audit_lcp and generate_alt need no credentials. The upload step needs AURA_SECRET_KEY — when you reach it, pause and ask me for the key.
The audit runs without an account, and alt text is generated server-side once your images are on AuraImage. When your agent reaches the upload step it will ask for AURA_SECRET_KEY — create your key then, not before.
The ${AURA_SECRET_KEY} form reads from your shell or .env.local, which keeps .mcp.json safe to commit.
{
"mcpServers": {
"auraimage": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@auraimage/mcp-server@latest"],
"env": {
"AURA_SECRET_KEY": "${AURA_SECRET_KEY}"
}
}
}
}claude mcp add --scope project --transport stdio auraimage -- npx -y @auraimage/mcp-server@latestInstall it in your side project. Pay when you ship.
$0 forever 20 GB bandwidth 3 GB storage hard stop at quota — never a surprise bill. Compare plans