# Publish HTML from n8n · Stacktree

Source: https://stacktr.ee/n8n

[Skip to content](#main) [Stacktree](/)[Developers](/developers)[Agents](/agents)[Docs](/docs)[Use cases](/use-cases)[Pricing](/pricing)[Blog](/blog)[Dashboard](https://app.stacktr.ee)[Sign in →](https://app.stacktr.ee)      By [ Steve Smith ](/about) · Founder, Stacktree  ·  Last updated August 16, 2026          for n8n

#  Publish HTML from any n8n workflow.

   Install n8n-nodes-stacktree and the HTML your workflows produce, reports, dashboards, client pages, gets a private, unguessable URL the next node can send anywhere. Update in place on the same link, gate it, expire it, and collect viewer feedback your workflow can read back.

  [ Get started free ](https://app.stacktr.ee/?join=1&from=seo_n8n)   install npx stacktree-install
Copy
     No card · 3 pages free · about a minute

##  How do you publish HTML from n8n in 2026?

Install the `n8n-nodes-stacktree` community node (Settings, Community nodes), add the Stacktree node to a workflow, and point its Publish operation at HTML from a previous node. It returns a private, unguessable stacktr.ee URL plus the site id, ready for a Slack, email, or CRM node downstream. The node also works as a tool inside n8n AI Agent workflows.

## The install

 Self-hosted n8n: Settings, Community nodes, Install, enter `n8n-nodes-stacktree`. On n8n Cloud, search for Stacktree in the nodes panel. The node ships two resources: Site (publish, update, get, list, delete, settings) and Feedback (list, resolve).

## Why a node rather than an HTTP Request

 You could call the Stacktree API with n8n's HTTP Request node, and some people do. The node earns its place by handling the fiddly parts: multipart uploads from text or binary data, the credential test, sensible defaults for expiry and the PII scan, and typed operations an AI Agent can pick up as tools. It also passed n8n's security review, which is the bar for running on n8n Cloud.

## The loop, not just the publish

 Publishing is one node, but the interesting workflows close a loop. Enable the feedback toolbar on a published page and viewers can annotate it in the browser, no account needed. Your workflow reads those comments with the Feedback resource, regenerates the HTML, updates the site in place on the same URL, and marks the feedback resolved. That is a review cycle with no meetings in it.

## Typical flow

  - Schedule trigger fires Monday 8am.
 - A query node pulls the week's numbers; a code or LLM node renders them as a single-file HTML report.
 - The Stacktree node publishes with a 7-day expiry, gated to @yourco.com.
 - A Slack node posts the link. Every recipient opens it with no account, via a magic-link email check.
 - Next Monday the workflow updates the same site: one URL, always the latest report.

FAQ

## Frequent questions

     How do I install the Stacktree node in n8n? +  Self-hosted: Settings, Community nodes, Install, enter `n8n-nodes-stacktree`, restart if prompted. n8n Cloud: search for Stacktree in the nodes panel; the node has passed n8n's security review, which is what makes community nodes installable there. Either way you get a Stacktree node with Site and Feedback resources.   What operations does the node support? +  Nine, mirroring the Stacktree MCP server: publish a site (from text or a binary file), update it in place on the same URL, get its raw HTML, list your sites, delete a site, change settings (password, email-domain gate, expiry, the feedback toolbar), plus read and resolve viewer feedback. Publish options include expiry hours, burn-after-read, and the PII pre-flight scan.   Does it work in n8n AI Agent workflows? +  Yes. The node is registered as usable-as-tool, so an AI Agent node can call Stacktree operations itself: ask the agent to publish the report it just wrote and it calls the publish operation, gets the link back, and can pass it onward, all inside one workflow.   Do I need a Stacktree account? +  Not for the first publish. Without credentials the node publishes anonymously: the link lives 24 hours and the response includes a claim token you can use to adopt the site into an account later. For longer-lived sites, create a free account, generate an API key at app.stacktr.ee/api-keys, and add it as the node's credential; there is a built-in credential test. Free-account pages live 7 days; from Solo up they stay until you delete them.   What does a typical workflow look like? +  A schedule trigger runs a query, a code or LLM node renders the result as an HTML report, the Stacktree node publishes it with a 7-day expiry and an email-domain gate, and a Slack node posts the link to the channel. Because update-in-place keeps the URL stable, a weekly report can reuse one link forever: bookmark it once, and every Monday it shows the new numbers.   Is the published page public? +  No. The URL is unguessable and unlisted by default, and you can add a password or restrict viewers to a company email domain, set an expiry, or burn-after-read for one-time links. Viewers never need an account.
Keep reading

## Related guides

   -  [ Host AI reports The report-publishing pattern the schedule-trigger flow automates. ](/host-ai-reports)
-  [ Client feedback loop The on-page feedback the Feedback resource reads and resolves. ](/client-feedback-loop)
-  [ The MCP publish tool The same operation set, exposed to MCP agents instead of workflows. ](/mcp-publish-html)
-  [ Share with clients Gates, expiry, and your own domain on the pages workflows produce. ](/share-with-clients)

References

## Sources and further reading

   -  [ n8n-nodes-stacktree on npm ↗ The package n8n installs, published with npm provenance. ](https://www.npmjs.com/package/n8n-nodes-stacktree)
-  [ stacktree-n8n on GitHub ↗ Source for the node: two resources, nine operations, MIT. ](https://github.com/stevysmith/stacktree-n8n)
-  [ n8n docs: community nodes ↗ Official installation guide for community nodes, self-hosted and Cloud. ](https://docs.n8n.io/integrations/community-nodes/installation/)

##  Give your workflows a publish step.

 Install n8n-nodes-stacktree. The next HTML your workflow makes gets a private link.

 [
Sign up free →
](https://app.stacktr.ee/?join=1&from=cta_n8n)   install npx stacktree-install
Copy
       Private hosting for the HTML your agents make.

[](https://betalist.com/startups/stacktree?utm_campaign=badge-stacktree&utm_medium=badge&utm_source=badge-featured)[Featured on](https://devhunt.org/tool/stacktree)[](https://buildlist.io)[Get started free](https://app.stacktr.ee/?join=1)

## Product

- [Example deliverables](/examples)
- [Custom domains](/custom-domains)
- [Client feedback](/client-feedback-loop)
- [One-time links](/one-time-view-links)
- [See how pages get read](/page-engagement)
- [Made with Stacktree](/made-with)
- [Security](/security)
- [Watch the demo](/demo)

## Agents

- [All integrations](/agents)
- [Claude Code](/claude-code)
- [OpenAI Codex](/codex)
- [Cursor](/cursor)
- [Claude.ai connector](/claude-ai-connector)
- [MCP server](/mcp-publish-html)
- [Deploy from Claude Code](/deploy-html-from-claude-code)
- [Skills](/skills)
- [Slack app](/slack)
- [n8n node](/n8n)
- [Agent payments (x402)](/x402)

## Alternatives

- [All comparisons](/alternatives)
- [Head-to-head comparisons](/compare)
- [Tiiny Host](/tiiny-host-alternative)
- [GitHub Pages (private)](/github-pages-private-alternative)
- [Vercel](/vercel-alternative-for-agents)
- [ngrok](/ngrok-alternative-for-html)
- [Display.dev](/display-dev-alternative)
- [Static.app](/static-app-alternative)
- [OpenAI Codex Sites](/openai-codex-sites-alternative)
- [here.now](/here-now-alternative)
- [Shippage](/shippage-ai-alternative)
- [Best private hosting](/best-private-html-hosting)

## Use cases

- [All use cases](/use-cases)
- [Share with clients](/share-with-clients)
- [Send a file to a client](/share-html-file-with-client)
- [Share Claude artifacts](/share-claude-artifacts)
- [Share Jupyter notebooks](/share-jupyter-notebook-html)
- [Host Storybook privately](/host-storybook-privately)
- [Architecture diagrams](/share-architecture-diagrams)
- [AI-generated reports](/host-ai-reports)
- [Internal HTML tools](/internal-tool-hosting)
- [Private HTML hosting](/private-html-hosting)
- [Vibe-coded page hosting](/vibe-coding-hosting)
- [Leave a website builder](/website-builder-migration)

## Learn

- [Blog](/blog)
- [Glossary](/glossary)
- [FAQ](/faq)
- [Agent-loop hosting](/agent-loop-hosting)
- [Why agents need a publish primitive](/blog/why-agents-need-a-publish-primitive)
- [MCP servers explained](/blog/mcp-servers-explained-for-developers)
- [What changed in the 2026-07 MCP spec](/blog/mcp-2026-spec-changes)
- [Sites in Codex explained](/blog/sites-in-codex-explained)
- [Private-by-default hosting](/blog/private-by-default-html-hosting)
- [An agent paid us $1 (x402)](/blog/agent-paid-to-provision-itself)
- [When a loop hits a paywall](/blog/loop-engineering-paywall)
- [Pricing](/pricing)
- [Self-host (new)](/self-host)
- [Changelog](/changelog)
- [Docs](https://stacktr.ee/docs)
- [About](/about)
© 2026 Stacktree · stacktr.ee

[Privacy](/privacy)[Terms](/terms)[Security](/security)[Dashboard](https://app.stacktr.ee)[npm](https://www.npmjs.com/package/stacktree-mcp)[Sitemap](/sitemap.xml)[llms.txt](/llms.txt)[API spec](/openapi.json)

---
Full markdown summary of the Stacktree marketing surface: https://stacktr.ee/llms-full.txt
