Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/z…
@kuyazee
About Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/z…
Self-hosted artifact publishing — POST HTML/JSX/Markdown/zip, get an unguessable public URL. MCP server built in.
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"artifacts": {
"command": "docker",
"args": [
"run",
"-d",
"-p",
"3000:3000",
"-v",
"artifacts-data:/data",
"\\"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/zip → unguessable URL)?
Artifacts is a self-hosted service that lets you publish HTML, JSX/TSX React components, Markdown, or zipped static sites to public, unguessable URLs on your own domain. It includes a built-in MCP server for AI coding agents and a drag-and-drop web UI for humans.
How to use Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/zip → unguessable URL)?
Deploy with Docker Compose, Docker, or bare Node (requires Node ≥22 and setting ARTIFACTS_API_KEY and BASE_URL environment variables). Then publish artifacts via curl, the included CLI (node cli.js), or MCP tools (e.g., publish_artifact). The web UI at / allows drag-and-drop management after authenticating with the API key.
Key features of Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/zip → unguessable URL)
- Four content types: HTML, JSX/TSX, Markdown, and zip static sites.
- MCP server at
/mcpfor AI agents (publish, update, disable, list, delete). - Web UI with drag-and-drop upload and lifecycle management.
- Lifecycle controls: rename slugs, disable/enable, auto-expiry (410).
- Non-crawlable:
noindexheaders and deny-allrobots.txt. - Zip upload validation: requires
index.html, static extensions only, rejects traversal/symlinks.
Use cases of Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/zip → unguessable URL)
- AI agents publishing generated dashboards, prototypes, or reports.
- Human developers quickly sharing static sites or React components.
- Self-hosted alternative to Claude’s hosted artifact URLs.
- Sharing ephemeral content with auto-expiry and slug management.
FAQ from Artifacts — self-hosted artifact publishing (HTML/JSX/Markdown/zip → unguessable URL)
How is security handled?
Write access requires a bearer token (ARTIFACTS_API_KEY). Host on a dedicated subdomain with no cookies. Responses include X-Robots-Tag: noindex, CSP, and other security headers. Reads are public by design—the unguessable slug is the access control.
What are the runtime requirements?
Node.js ≥22 is required. No database, no accounts—artifacts are stored as plain files under /data. The server is a single Express process (~600 lines).
Where are artifacts stored?
All artifacts are stored as plain files in DATA_DIR (default: /data). You must mount a persistent volume to /data (e.g., -v artifacts-data:/data).
What are the upload limits?
JSON body limit: 10 MB. Zip body limit: 50 MB input, max 100 MB uncompressed, max 2000 files. Zip archives must contain an index.html and only static-friendly extensions are allowed.
Do JSX/TSX artifacts require internet to render?
Yes. React components are rendered client‑side via esm.sh and Tailwind CDN, so the browser needs internet access. First load typically takes 1–3 seconds.
Frequently asked questions
How is security handled?
Write access requires a bearer token (`ARTIFACTS_API_KEY`). Host on a dedicated subdomain with no cookies. Responses include `X-Robots-Tag: noindex`, CSP, and other security headers. Reads are public by design—the unguessable slug is the access control.
What are the runtime requirements?
Node.js ≥22 is required. No database, no accounts—artifacts are stored as plain files under `/data`. The server is a single Express process (~600 lines).
Where are artifacts stored?
All artifacts are stored as plain files in `DATA_DIR` (default: `/data`). You must mount a persistent volume to `/data` (e.g., `-v artifacts-data:/data`).
What are the upload limits?
JSON body limit: 10 MB. Zip body limit: 50 MB input, max 100 MB uncompressed, max 2000 files. Zip archives must contain an `index.html` and only static-friendly extensions are allowed.
Do JSX/TSX artifacts require internet to render?
Yes. React components are rendered client‑side via `esm.sh` and Tailwind CDN, so the browser needs internet access. First load typically takes 1–3 seconds.
Basic information
More Other MCP servers
Inbox Zero AI MCP
elie222The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.

YOUB
Connect your AI assistant to your own YOUB endurance training account. Read recorded activities with full analysis, planned sessions, race goals, wellness (HRV, sleep, resting HR) and your athletic profile. Create or mov
🪟 Windows-MCP
CursorTouchMCP Server for Computer Use in Windows
Reactive Resume
amruthpillaiA one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
Blender
ahujasidOpen-source MCP to use Blender with any LLM
Comments