sitebox
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@siteboxupload index.html to myapp"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sitebox
Self-hosted static site host — upload pages via REST API or MCP, serve them immediately.
Upload files or ZIP archives to named destinations
Serve from
/dest/pathinstantlyAuth — shared API key for uploads, optional password-protected pages
TTL — auto-expire pages after a set time
MCP — AI agents can manage pages via the built-in Model Context Protocol server
Quick start
docker run -e API_KEY=my-secret-key -v /path/to/pages:/app/data -p 8000:8000 ghcr.io/zarguell/siteboxUpload a page:
curl -X POST http://localhost:8000/api/upload \
-H "X-API-Key: my-secret-key" \
-F "file=@index.html" \
-F "dest=myapp"Open http://localhost:8000/myapp/index.html in your browser.
Related MCP server: webserver-mcp
Features
REST API
Method | Path | Description |
|
| Upload file or ZIP to a destination |
|
| List all pages |
|
| Delete a page |
All require X-API-Key header matching the API_KEY environment variable.
Upload parameters (multipart form):
Field | Required | Description |
| yes | The file (ZIP auto-extracts and flattens) |
| yes | Destination path (e.g. |
| no |
|
| no | Auto-delete after N seconds |
MCP Server
Connect an MCP-compatible AI agent (Cursor, Claude Desktop) to http://host:8000/mcp with header X-API-Key.
Available tools:
upload_page— upload base64 content or ZIPlist_pages— browse page treeread_file— read file contentdelete_page— remove a page
Browser Auth
When auth_required=true on upload, visitors are redirected to a login form. The password is the shared API_KEY. Sessions last 24 hours (in-memory).
Configuration
Env var | Required | Default | Description |
| yes |
| Shared secret for all auth (upload + login) |
Development
git clone https://github.com/zarguell/sitebox
cd sitebox
uv sync
API_KEY=dev-key uv run uvicorn sitebox.app:app --reloadDesign
config.py — shared env vars and in-memory state (
AUTH_PREFIXES,DATA_DIR)storage.py — file operations (stdlib only)
auth.py — login form, session tokens, browser auth helper
rest_api.py — REST endpoints with API key check
mcp_api.py — MCP server with Streamable HTTP transport
app.py — FastAPI wiring, middleware, mounts
ponytail: session tokens and auth prefixes are in-memory (lost on restart). Add Redis or SQLite when multi-process persistence is needed.
This server cannot be deployed
Maintenance
Related MCP Connectors
Publish, update, read, rename, and share single-URL web pages from any AI agent.
Instant web publishing for AI agents. POST HTML, get a live URL. No account needed.
Deploy AI-generated HTML/CSS/JS to instant public HTTPS URLs from any MCP-compatible agent.
Hosted MCP for creating, checking, deploying, and hosting static sites for AI agents.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to deploy and manage static websites directly through EdgeOne Pages. It provides a self-hosted solution for hosting website files using KV storage and managing content through the Model Context Protocol.-
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to edit and serve a static website via natural language, providing file management tools over MCP and HTTP hosting.-
- AlicenseAqualityCmaintenanceEnables AI agents to build, edit, and publish live websites with hosting, database, auth, and domains via the Model Context Protocol.136 npm1MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to deploy and manage static websites on EdgeOne Pages via the Model Context Protocol.-