Open source · local first · Cloudflare Pages

Ship it from
the conversation.

Give your AI coding assistant a deploy button. Publish a landing page, a React app, or a full directory of assets to Cloudflare Pages with one plain-language request.

Your files go from your machine directly to Cloudflare. No hosted middleman.
Codex · mcp-cloud-deploylocal
You asked
› Deploy my website as mystoreabc
  from ./dist. I have no domain yet.
Tool · deploy_to_cloudflare_pages
Project created · assets uploaded
Deployment status: success
Live at: https://mystoreabc.pages.dev
Works with the tools you already use
OpenAI CodexVS CodeClaude DesktopJetBrains AI
From local build to live URL

Three tools. One less thing to context-switch for.

The MCP server runs on your computer and gives your assistant a safe, direct path to Cloudflare Pages.

↑

Deploy a site

Upload a build directory with nested images, fonts, scripts, and styles. A missing Pages project is created for you.

⌘

Bring your domain

Attach a domain you own. If its DNS zone is in Cloudflare, create the CNAME automatically; otherwise get the exact record to add.

◷

Check what shipped

See recent deployment status, live URLs, and custom-domain bindings without leaving your conversation.

A tiny setup, a real deploy

Build here.
Publish there.

Keep your framework and your workflow. The server ships the output directory; it never tries to run your app as a server.

01

Build your app

Run your normal build command. Point the deploy at dist, build, or out.

02

Ask in plain language

Pick a project name. Say whether it is a React SPA and whether you have a domain.

03

Share the live URL

Get a pages.dev address right away, with optional DNS and SSL details.

EXAMPLE · YOUR ASSISTANT
You
Deploy my website as mystoreabc from ./dist.
I don't have a domain yet.

Assistant
I'll deploy ./dist to Cloudflare Pages.
✓ Created project mystoreabc
✓ Uploaded 42 files
✓ Deployment successful

Live URL
https://mystoreabc.pages.dev
Static sites · image-rich pages

Every asset makes the trip.

Nested images, fonts, and front-end bundles keep their paths. Great for product pages, docs, portfolios, and marketing sites.

Nested image and asset files bundled with a static site
React · Vite · single-page apps

Deep links work, too.

Ask to enable SPA mode and client-side routes fall back to index.html. Server rendering and Node backends need a separate runtime.

A React single-page app deep link served with a Pages fallback
Install once. Keep shipping.

Your assistant can deploy in minutes.

Clone the public repo, add a scoped Cloudflare token, build, then connect your MCP client.

Keep the token private. Create a Cloudflare API token with Pages Write. Add Zone Read and DNS Edit only if you want automatic DNS changes. Store credentials in the ignored local .env.
TERMINAL · ONE-TIME SETUP
$ git clone https://github.com/hoangtrietdev/cloudflare-mcp.git
$ cd cloudflare-mcp && npm ci
$ cp .env.example .env
$ npm run build

# Add your Cloudflare credentials to .env
# Then choose your MCP client below
~/.codex/config.toml
A domain is your choice

Have one? Bring it. Don't? You're live anyway.

Cloudflare Pages gives every project a free pages.dev address. A custom domain is optional and can be attached later. The domain itself must already be registered.

When DNS is outside Cloudflare, the assistant gives you the exact record to add at your registrar. Existing conflicting DNS records are left untouched.

TypeNameTarget
CNAMEwwwmystoreabc.pages.dev
Proxy—On · when managed in Cloudflare
SSL—Managed by Cloudflare Pages

Ready when your build is.

Open source · MIT licensed · Your credentials and files stay local until you deploy.

Get mcp-cloud-deploy on GitHub ↗