drpr MCP Server
Publish, refresh, and manage hosted static sites without leaving your AI agent. The drpr MCP server gives Claude Code — or any Model Context Protocol client — a small set of tools that turn a file into a live URL in one step.
Install
The fastest path in Claude Code is the bundled skill — just run it in a session:
/install-drpr-mcpOr register the server manually:
# Build the server
cd mcp-drpr && npm install && npm run build
# Register with Claude Code
claude mcp add drpr node /path/to/mcp-drpr/dist/index.jsAuthenticate
On first use, the tools open a browser window so you can sign in to drpr.host; the API key is then saved locally and reused automatically. You can also log in or set a key explicitly:
drpr_login # browser sign-in, saves the key for you
drpr_set_api_key # or paste a key from your dashboardGenerate or copy a key any time from your dashboard API keys.
Tools
Once installed and authenticated, these tools are available to your agent:
drpr_publishPublish file content and get a public shareable URL.
Pass the file content and a filename. Optionally choose a subdomain or a team to publish under — when omitted the tool picks an available subdomain and either auto-selects your only team or asks which one to use.
drpr_refreshRepublish new content to an existing project, in place.
Updates the files of a project you already published without deleting and recreating it — the subdomain and URL stay exactly the same. Ideal for iterating on a page or redeploying a fresh build.
drpr_list_teamsList the teams (workspaces) your API key can publish to.
Returns each team's name and slug. Use the slug as the team argument to drpr_publish to publish into a shared workspace.
drpr_loginLog in through the browser and save your API key automatically.
Opens a browser window, waits for you to confirm, then stores the key locally — no copy-pasting. Every other tool calls this for you automatically when no key is saved or it has expired.
drpr_set_api_keySave an API key manually.
Paste a key generated from your dashboard if you prefer not to use the browser login flow. drpr_logout removes the saved key.
Refreshing a site in place
Iterating on a published page should not mean deleting it and starting over. Both the drpr_refreshtool and the REST endpoint behind it replace a project's files in place: the new files are written first and stale ones pruned afterwards, so the project — its subdomain, URL, and share tokens — never goes away and the site stays reachable the whole time.
# Authenticated with an API key
curl -X POST https://drpr.host/api/v1/sites/<subdomain>/refresh \
-H "Authorization: Bearer <api_key>" \
-F "file=@build.zip"
# Or, for an anonymous upload, using its site token
curl -X POST https://drpr.host/api/v1/sites/<subdomain>/refresh \
-H "x-site-token: <site_token>" \
-F "file=@index.html"HTTP API
The tools wrap a small REST API you can call directly. Authenticate with Authorization: Bearer <api_key>.
| Endpoint | Purpose |
|---|---|
POST /api/v1/upload | Publish a file or zip as a new site. |
POST /api/v1/sites/<subdomain>/refresh | Refresh an existing site's files in place. |
GET /api/v1/sites | List the sites owned by your API key. |
DELETE /api/v1/sites/<subdomain> | Delete a site. |
GET /api/v1/workspaces | List the teams your API key can publish to. |
Auto-publish from Claude Code on the web
Pair the MCP server with Claude Code lifecycle hooks to deploy automatically — on session start, or right after a build — with no manual step. The full walkthrough lives in the auto-publishing guide.
Ready to publish from your agent?
Create a free account, grab an API key, and ship your first site in one tool call.
Get started