Explore with AI
Open this article in an AI assistant, with a prompt that asks it for a summary and the takeaways.
Pipeline_Wk14_FINAL_v2.html, attach it, and answer the reply-all asking whether v2 replaces FINAL.Building the report was never the slow part. Getting it from the chat to the reader was.
The HTMLvault Claude connector cuts that down to one sentence. HTMLvault is listed in Claude's connector directory, so you add it from inside Claude. After that, Claude can publish what it builds as a private, tracked link, update the page later without changing the URL, and tell you how it was read. This guide covers setup, the tools Claude gets, one weekly job from start to finish, and the limits.
What the connector does, and what the directory listing changes
A connector is Claude's name for an outside service it can use during a chat. It runs on MCP, the Model Context Protocol: an open standard that lets an AI assistant call tools in other software. HTMLvault's MCP server gives Claude a set of tools for publishing and managing the links in your account.
The directory listing changes how you connect. The manual MCP setup still works, and it's how you connect clients that take a server configuration, such as Cursor. With the listing at claude.ai/directory/htmlvault, you connect from inside Claude and sign in to HTMLvault. There's no config file to edit.
The connector is for anyone who makes something in Claude and then has to send it: an analyst with a weekly report, a rep with a proposal, a consultant with a client deliverable, an operator with a dashboard. If you've been copying artifacts out of Claude to share them, the connector does that step for you.
The connector works on every HTMLvault plan, Free included. Your plan decides what the links can do, which the limits section below covers.
How to connect HTMLvault to Claude
- Open the listing. Go to claude.ai/directory/htmlvault, or search for HTMLvault in Claude's connector directory.
- Connect and sign in. Claude sends you to HTMLvault to sign in and approve the connection. Sign in the usual way, with Magic Auth or a passkey. HTMLvault doesn't use passwords.
- Check that it works. In a new chat, ask: "List my HTMLvault links." Claude calls
list_linksand shows your links, or tells you there aren't any yet. - Set tool permissions. Claude asks before it runs a connector tool unless you've told it to always allow that tool. Always allowing the read and publish tools saves clicks. Keep
delete_linkon ask.
If you use Claude through a company workspace, an owner may need to turn on the connector for the workspace before members can connect it.
What Claude can do once it's connected
The connector gives Claude twelve tools. You rarely name them. You describe the job ("publish this," "change the Q3 number," "how many people opened it") and Claude picks the tool. Knowing which tools exist tells you what you can ask for.
Claude writes the page and HTMLvault serves it exactly as written. The rules below decide whether a page publishes cleanly and stays easy to update. Put them in your Claude project instructions so every page follows them:
- Make the page self-contained. Put all the CSS in the document and load fonts explicitly. HTMLvault adds no stylesheet or fonts of its own. Scripts run, so Chart.js or Mermaid from a CDN works.
- Close every tag. HTMLvault refuses malformed HTML instead of repairing it. Write every
</p>,</li>,</td>,</tr>and</tbody>explicitly. Leaving out end tags can push nesting past the 1,000-level limit. - Link images by URL instead of embedding them in
src. Adata:URL in ansrcattribute is removed. Use an image hosted at an https URL, or draw charts as inline SVG. - Build big pages in chunks. One document can be up to 5 MB. For a long one, Claude starts a draft with
create_draft_link, sends chunks of up to 200 KB withappend_html, and finalizes on the last call. Nothing is public until then. - Anchor everything you'll update. Give each section, table and headline figure a unique
idordata-attribute, and write each value in only one place. - Set the preview. When the link is pasted into Slack or email, the
<title>,og:title,og:descriptionandog:imagebecome the preview card.
Worked example: a weekly pipeline report on one URL
Liz's job is to turn a CRM export into a leadership pipeline report every Monday, send it, and keep it current.
Week one: publish
She attaches the CSV and asks:
Build this week's pipeline report from the attached CSV as one
self-contained HTML page. Give every section, table and headline
number a unique id. Publish it to HTMLvault as "Pipeline report:
leadership" and give me the link.
Claude builds the page and calls create_link. HTMLvault checks the page and returns a URL. Liz sends leadership that URL, and that's what they bookmark. There's no file to forward.
Choose the expiry on purpose. On Free, links expire after 30 days, which would cut off a standing report mid-quarter. On Pro, you can set expiry anywhere from one hour to never.
Week two: patch, don't republish
The next Monday, she attaches the new CSV and asks Claude to update the pipeline report in place, changing only the numbers that moved. Claude calls get_link to read the stored HTML, then calls patch_link with one find-and-replace for each changed value:
find: <td id="stage-commit">$1.8M</td>
replace: <td id="stage-commit">$2.1M</td>
Every patch follows these rules:
- The find string is plain text, matched exactly against the stored HTML. Regex isn't supported.
- Without
replace_all, the find string must appear exactly once in the page. Theidis what makes it unique. - One call can carry up to 200 patches, applied all or nothing. If one find string doesn't match, nothing changes, so readers never see a half-updated page.
When the layout itself changes, update_link replaces the whole page instead. Either way, the URL stays the same. Editing published HTML without changing the URL covers both in detail.
Reading it from the chat
Liz asks Claude how the report was read this week. get_analytics returns views, unique and repeat visitors, scroll depth, time on page, country and city, device and browser, and referrer. For a report, scroll depth is the most useful number: it shows how far down readers actually get, so you know what belongs at the top. Per-link analytics explains each metric.
Limits and caveats
Your plan's limits apply to what Claude publishes. Free allows 50 links a month, links expire after 30 days, and data is kept for 90 days. Pro removes the monthly cap, lets you set expiry anywhere from one hour to never, and lets you set data retention from 7 days to 2 years. Shared team folders come with Teams and Enterprise.
Every publish and edit is checked. Pages Claude publishes or patches get the same checks as any other page. Your account's PII and secret-scanning policy runs on regex and uses no tokens, and every outside URL is checked against Google's unsafe-URL lists. If a publish is refused, you get the findings instead of a URL. Claude can show you what was flagged, such as a customer's phone number left in the export, and you decide what to remove. Teams and Enterprise can also run a BYOK AI scan after publishing.
The stored page isn't byte-for-byte what Claude sent. Publishing drops the DOCTYPE and HTML comments, lowercases tag and attribute names, puts attribute values in double quotes, and decodes entities such as . It also removes attributes with empty values, so write hidden="hidden", not a bare hidden. Patches must match the stored bytes, so Claude should read the page with get_link before patching. For the same reason, an HTML comment can't serve as an anchor. To see the stored version before you publish, run scan_html with normalize: "full".
Keep scripts and styles outside SVG. Inside an <svg>, a script or style that contains markup or a CDATA section can get the publish refused. A style of plain CSS inside SVG is fine.
You control access. Every link is noindex, so search engines don't list it. Add a password or expiry when a page needs one. A password-protected or expired link shows no preview card when pasted. Deleting the Claude chat doesn't delete the link. To remove a link, use delete_link or delete it in your HTMLvault account.
Start with the report you already send
Pick the one document you rebuild and resend every week. Connect HTMLvault from the directory and publish that document once, with an id on each section. From then on, the weekly update is one sentence in a chat. The URL in leadership's bookmarks never changes, and before the meeting, scroll depth tells you whether anyone read past the summary.
