Runs secure and isolated on your Mac
Claude Design integration
MCP for agent-based operations

Your Mac.
Your server.
Your URL.

Self-host apps, sites and Docker services on the Mac you already own. Each app you host is a Runner, and every Runner lives in its own protected space with a public HTTPS URL in one click. No cloud, no bills.

Free during beta · macOS 14+ · Apple Silicon (M1–M4)
A Mac opening into a rack of Runners
Isolated by default
Every Runner boots inside its own protected space. The blast radius stops there, never your Mac.
A public URL in one click
Sign in with Apple and each Runner is reachable at an HTTPS URL, a secure connection that never touches your Mac's network settings.
No cloud, no bills
The hardware is the Mac already on your desk. Ship side projects, staging and demos without a monthly invoice.
Claude Design integration
Design in Claude and push straight to your live urlyup.com site, versioned and one-click reversible.
MCP for agent-based operations
A built-in MCP server lets Claude Code and any agent deploy, update, roll back and manage Runners in plain language.
One-click deploy

A catalog of apps, ready to run on your Mac.

Pick a template and UrlyUp pulls the images, wires the ports and hands you the URL. Popular self-hosted apps, pre-configured.

Jellyfin
Media server
Ollama + WebUI
Local LLMs
Ghost
Publishing
WordPress
CMS + MySQL
Nextcloud
Files & sync
Postgres + Adminer
Database
Redis
Cache / store
C
Centrifugo
Realtime
…and more, MongoDB, MediaMTX live streaming, Funkwhale, plain nginx, Node & Python starters.
UrlyUp one-click template picker, including OBS live streaming
Vibe coding

Made for your
AI coding agent.

Point Claude Code, Codex, OpenCode, any agent, at a Runner's folder. It writes and runs the code; UrlyUp serves every change at your secure URL. No build step, no deploy, no config, and it drops right into a Claude Design workflow.

Claude Code Codex OpenCode Claude Design + any LLM agent
claude code
$ claude
› add a pricing page edited app/pricing.tsx saved, UrlyUp picked up the change
https://my-app-on.urlyup.com live · auto-served
Deploy from your AI · MCP built in

Your AI ships it, not just writes it.

UrlyUp speaks MCP: connect Claude Code or Claude Design and let them create, deploy, version and roll back your Runners, and push updates straight to your site, right from the chat. No dashboards, no clicking.

Point any MCP-capable AI at UrlyUp. Locally, Claude Code manages the Runners on your Mac: list, deploy from a git repo, update to a new version, roll back, tail logs. In the cloud, Claude Design pushes updates to your live site through a scoped, revocable token, so your platform key never leaves the server. Standards-based Model Context Protocol, so it works with the tools you already use.

Claude deploying a Runner and rolling out v2 over MCP
See & inspect
List Runners, with type, state & portCheck status, uptime & portRead recent logs to debug
Deploy & ship
Deploy straight from a git repoUpdate to a new version, zero downtimeRoll back to any version in one stepBrowse full deploy history
Control
Start, stop & restart a RunnerStop keeps its files intact
💬
"Deploy github.com/me/api to a new Runner, then roll it out as v2." Claude creates it, deploys and versions it, and can roll back if v2 misbehaves.

One-click setup: install the UrlyUp extension in Claude Desktop, enter your key, done. It talks to Mac Hosting on your machine, so your key never leaves it. Optional cloud deploys push updates to your live urlyup.com site through a scoped, revocable token.

Claude Design

Design it,
then ship it live.

Connect Claude Design to UrlyUp and push updates straight to your live urlyup.com site, right from the chat. Iterate on the design, say the word, and it's online.

Publish to your live site without leaving the design chat
Scoped, revocable token, your platform key never leaves the server
Every push is versioned, roll back in one step
UrlyUp Runners listed via Claude Design
One tool, whole spectrum

From a one-minute page to the whole enterprise.

Ask an AI for a website and it's live on your own public URL in seconds. Grow into databases, container stacks and compliance-grade setups without ever switching tools.

Spin one up in minutes
Anyone can, in a minute.

Have Claude or any AI generate a site, drop the folder in, and UrlyUp serves it at a public URL straight from your Mac. No Vercel, no Netlify, no hosting bill. And your cost stays flat whether it's 10 visitors or 10,000.

my-site-on.urlyup.com
LORA
WomanManCashmereGiftsStories
The Autumn Collection
Quiet luxury,
woven by hand.
Discover
Scale to serious
Enterprise when you need it.

When a static page isn't enough, the same app runs Node, Python, PHP and full Docker Compose stacks with real databases, each isolated in its own protected space, with optional Always On failover.

Multi-service stacks, queues, caches and databases
Per-runner isolation, custom domains, IP allowlists
Data stays on-premise for GDPR, HIPAA and finance
Flat cost, any load. Cloud bills climb with traffic. Your Mac doesn't.
Simple sites

Know HTML? You're already hosting.

If you can write an index.html, generate one with a static site generator, or have an AI agent make one, you can be online from your own Mac in minutes. Drop the folder in and UrlyUp hands it a public URL.

Hand-written or generated
Plain HTML, CSS and JS, or output from Hugo, Astro, Eleventy and Jekyll.
Made by an AI agent
Sites from Claude Desktop and Claude Code drop straight in, no build tooling needed.
Handled for you
SPA fallback, gzip and cache headers, set with a toggle.
UrlyUp static Runner configuration
Git workflow

git push,
and it's live.

Connect a repo and every push triggers an automatic update. UrlyUp pulls, builds and reloads your Runner, then verifies a real 200 before it goes live.

Push-to-deploy webhooks from any Git host
Deployment history with one-click rollback
Never ships .git, .env or node_modules
$ git commit -m "ship it"
$ git push origin main

 webhook received
 build + reload runner
 200 verified · live at your-app-on.urlyup.com
How it works

From download to a live URL in about a minute.

01
Download & sign in with Apple
Drag UrlyUp to Applications and open it. Sign in with Apple claims your public URL and turns on Mac Hosting.
02
Add a Runner
Point it at a folder, a Git repo, or a docker-compose file. Static site, Node, Python, PHP or a full container, UrlyUp builds and runs it in its own protected space.
03
Share the URL
Flip on the public URL and your Runner is live for anyone, anywhere, protected by that isolation the whole time.
Inside the app

A real control panel for everything running on your Mac.

Manage Docker Compose stacks, edit configs, watch live logs and fix broken deployments, without leaving a native macOS window.

UrlyUp, testdocker-001 Configuration
Docker Compose, managed
Run, stop, update and recreate full container stacks. UrlyUp injects the ${URLYUP_API_PORT} scheme so your services publish on the public URL automatically.
Fix with AI
When a compose file won't validate, one click rewrites it against UrlyUp's port and networking contract, no more guessing at YAML.
machosting-on.urlyup.com
RÓST.
BeansSubscriptionsCafé
Order
SINGLE-ORIGIN · OAKLAND
Mornings,
made better.

Small-batch beans, roasted the day we ship them. Fresh to your door every two weeks.

Shop beans →
ETHIOPIA·COLOMBIA·GUATEMALA·KENYA
Live on the internet
Reachable from anywhere, served from your desk.

The public URL terminates inside that protected space over an encrypted connection. Your visitors hit a real HTTPS address; your Mac's own network is never exposed.

Live logs, streamed & searchable, with an AI diagnose button
Git webhooks & deployment history with one-click rollback
Light & dark, native controls, feels like it shipped with macOS
Runtimes

Run almost anything.

Each runtime is isolated in its own network namespace with a per-Runner user, the same isolation used in production hosting.

Static
HTML, SPA fallback, dynamic OG tags. Drop a dist/ and go.
Node.js
npm, yarn, pnpm or bun. Pin a version, set a start command, expose extra ports.
Python
Flask, Django or FastAPI with a per-Runner venv from requirements or pyproject.
PHP
Front-controller routing, custom document root, pick your PHP version.
Docker
Full docker-compose stacks run in their own protected space with a real container engine. Multi-service, volumes, the lot.
WASMfor the adventurous
WebAssembly under WasmEdge, compile Rust to wasm32-wasip1 and serve it. Yes, it really runs on your Mac.
Who it's for

Find your use case.

Tap a pill to see the self-hosted apps that fit. Every one ships as Docker, so it runs on your Mac in one click.

Batteries included

Email, already
set up.

Half the apps you host need to send email, signups, password resets, notifications. Wiring up SMTP, a provider account, DNS records and API keys is the worst part. UrlyUp does it for you.

A real mailbox per Runner
Every Runner gets its own address on your UrlyUp domain, no signup, no DNS, no deliverability tuning.
Send with SMTP or one API call
Credentials are injected into your Runner automatically. Use them from any framework, or POST to the send API, no keys to copy around.
Inbox that catches the replies
Confirmation links and inbound mail land in a real inbox you can read, handy while you test.
Runner · EmailReady
Fromhello@your-app.urlyup.email
SMTPsmtp.urlyup.email:587auto
API keyuk_live_••••••••••••injected
# send from anywhere in your Runner
curl $URLYUP_EMAIL_API/send \
  -H "Authorization: Bearer $URLYUP_EMAIL_KEY" \
  -d '{"to":"user@x.com","subject":"Verify"}'
Security & isolation

Server power,
desktop peace of mind.

UrlyUp doesn't run your code on macOS. It gives every app its own hardened, isolated space using Apple's built-in security technology, and everything you host lives safely inside it.

Isolation is the boundary
A misbehaving app can't reach your files, your keychain, or the rest of your Mac. Worst case, you reset that space.
Reach, not exposure
The public URL comes up over an encrypted connection inside that protected space. Your Mac's network settings are never touched, no ports opened on your machine.
Per-Runner isolation
Inside that protected space, each Runner gets its own isolated network and user. Runners don't see each other unless you connect them.
Verified by Apple, private by design
Sign in with Apple protects your personal data and online identity: Apple shares only the bare minimum with us and lets you hide your email. That same check lets us safely offer the service and act against misuse of the network, while assuring the public that you are who you say you are.
isolation model
Protected space · on your Mac
glamorousnetns + uid
testdocker-001netns + uid
nodetest-001netns + uid
Your Mac (macOS)
files · keychain · network, untouched
safe
Architecture

How the connection works.

Your app runs inside the UrlyUp Mac app, so it inherits the same protection macOS gives every app you install. UrlyUp just relays your public URL to it.

Visitors
Anyone, anywhere
UrlyUp service
api.urlyup.com
Your Mac macOS protection
UrlyUp app sandboxed by macOS
Protected environment · isolated space
your-app Runner
Boundary 1, the Mac app
Your app runs inside a normal macOS app, so it can't do anything a Mac app isn't already allowed to.
Boundary 2, the protected space
Inside the app, every Runner sits in its own protected space. The blast radius stops there, never your files or your Mac.
WebAssembly

Bare-metal speed,
zero overhead.

WASM Runners execute directly on your Mac through WasmEdge, with no container and no isolation layer in the path. You get near-native performance, instant cold starts, and it costs you nothing extra.

Runs on bare metal
No virtualization tax. Modules run straight on the CPU at full speed.
Tiny & instant
Kilobyte-sized binaries that cold-start in milliseconds, not seconds.
Sandboxed by nature
The WebAssembly capability model is a hard security boundary on its own.
R
In Rust we trust.
Rust developers are first-class here.
# build once$ cargo build --target wasm32-wasip1 --release

# UrlyUp serves it, live https://my-wasm-on.urlyup.com  ✓ 200

Compile Rust to wasm32-wasip1, drop it in, and it's public in seconds. Go, C, Zig and any WASI target work too.

UrlyUp wasmtest Configuration
Optional add-on Coming soon

Always On, even
when your Mac isn't.

A paid upgrade that keeps a warm mirror of your Runners in the UrlyUp cloud. If your Mac restarts, loses power, or goes down for maintenance, your public URL keeps serving without a blip.

Automatic failover
Traffic switches to the cloud mirror the moment your Mac drops offline, then hands back when it returns.
Reboot & update freely
Do maintenance on your Mac without dropping a single visitor.
Same URL, always live
Your address stays reachable around the clock, 99.9% of the time.
Join the waitlist Pricing announced at launch.
Right now
Your Mac
offline, installing updates
down
UrlyUp cloud mirror
serving your Runners
live
your-app-on.urlyup.com 200 OK
FAQ

Questions, answered.

Do I need to know Docker or the command line?+

No. Static sites, Node, Python and PHP Runners just need a folder or a repo, UrlyUp handles the rest. Docker is there when you want it, and the one-click catalog plus "Fix with AI" mean you rarely touch YAML.

Is my Mac exposed to the internet?+

No ports are opened on your Mac. The public URL is a secure connection that terminates inside that protected space, so traffic reaches your Runner without ever touching your Mac's own network configuration.

What happens when I close the app or restart?+

Quitting closes the window; you decide whether hosting keeps running. UrlyUp can auto-start Mac Hosting on launch so your Runners come back on their own, and it protects your data on shutdown so nothing is lost.

Does it keep running when my Mac sleeps?+

Your Runners are live while your Mac is awake and hosting is on. For always-on serving, keep the Mac awake, a Mac mini on a shelf is the classic setup this was built for.

How much does it cost?+

UrlyUp is free during the beta. The compute is your own Mac, so there are no per-app or per-URL hosting bills. We even provide the bandwidth to serve your Mac-hosted products to your own users, free, so anyone can reach what you host.

Why sign in with Apple?+

It's the only account step, and it protects everyone. Apple verifies your identity but passes us only the bare minimum about you (you can even hide your email), so your personal data and online presence stay private. That verified identity is also what lets us safely run the service: we can hold accounts accountable and shut down misuse of the network, while the public gets Apple's guarantee that you are who you say you are. No separate password to manage.

UrlyUp

Download, open, and you're live in seconds.

Turn the Mac on your desk into your own private cloud.

Download for macOS urlyup.com/download
Apple silicon · notarized by Apple · v0.1.0 · ~6 MB
Before you download

What you need

💻
Apple Silicon
Any M1, M2, M3 or M4 Mac.
🍎
macOS Sonoma (14)+
Or later. Built on Apple's Virtualization framework.
🧠
8 GB memory
Runs comfortably at 8 GB, 16 GB to really fly.
💾
10 GB free
Free space on your hard drive to get going.
🌐
Internet connection
That's what turns your Mac into a public server.
🔑
Sign in with Apple
To claim your public URL. Live in seconds.