htmlsharechecking · v0.0.1

free · no signup · 7-day retention

drop an html file.
get a public url.

html · htm · 10mb max · live in < 1s

/01 — what people use this for

three jobs we see every day.

/01 · sharesend a claude-generated report to a teammate without zipping the artifact.
/02 · previewspin up a public preview of an html email or one-pager before it ships.
/03 · hoststand up a landing page, demo, or pitch link in under a second — without a dashboard.
/02 — api

or skip the page entirely. one post, one url back — works from claude, your shell, your code.

mcp · claude

~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"htmlshare": {
"url": "https://api.htmlshare.net/v1/mcp"
}
}
}

then ask claude: “publish this as an htmlshare link” — it just works. (restart claude desktop once after adding the config.)

curl

terminal
# publish from the terminal
curl -X POST https://api.htmlshare.net/v1/publish \
-H "content-type: application/json" \
-d '{"html":"<!doctype html><h1>hello</h1>"}'
# → { "url": "https://htmlshare.net/p/k9m2qa42", "expiresAt": "..." }

accepts application/json (html field) or multipart/form-data with a file. 10mb max.

node.js

publish.mjs
import { readFile } from 'node:fs/promises';
const html = await readFile('./report.html', 'utf-8');
const { url } = await fetch('https://api.htmlshare.net/v1/publish', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({ html }),
}).then((r) => r.json());
console.log(url); // → https://htmlshare.net/p/k9m2qa42

works anywhere with fetch — node ≥ 18, bun, deno, browsers.

/03 — limits

boring details, on purpose.

max size10 mb
retention7 days
acceptshtml only
costfree