# Add Stacktree to Claude.ai as a custom connector

Source: https://stacktr.ee/claude-ai-connector

[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 September 20, 2026          for Claude.ai

#  Add Stacktree to Claude.ai as a custom connector.

   Paste https://api.stacktr.ee/mcp as a custom Claude.ai connector and Claude can publish any HTML it generates to a private, unguessable URL, straight from chat. No CLI, no API key.

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

##  What is the Stacktree Claude.ai connector?

It's an MCP server reachable over streamable HTTP at `https://api.stacktr.ee/mcp`. Claude.ai discovers the OAuth 2.1 metadata, registers a client via Dynamic Client Registration, and Claude can then call `publish_html` + the seventeen other Stacktree verbs from any conversation, including filing a page under a client space. The result: HTML Claude generates in chat can be handed back to you as a private link without leaving the browser.

## The 30-second install

  - Open [claude.ai/settings/connectors](https://claude.ai/settings/connectors) (Settings → Connectors) and click Add custom connector.
 - Paste https://api.stacktr.ee/mcp as the server URL. Leave OAuth Client ID and Client Secret blank.
 - Claude.ai performs OAuth discovery + DCR automatically.
 - Approve the consent screen with your Stacktree account. No API key changes hands.
 - Done. Stacktree's twenty-nine tool calls are now visible to Claude in every chat, and in Claude Code sessions signed in with the same account.

## What changes in your chats

Suppose you ask Claude.ai to draft a one-page status report for stakeholders. Without the connector, Claude shows you the HTML in the chat and you copy it somewhere. With the connector, Claude can say "I'll publish that for you privately" and call `publish_html` directly. You get a URL back in the chat that's private, expiring, and replaceable.

## Per-link controls Claude can apply

  - Password. Claude calls set_password when you ask it to lock the link.
 - Email-domain gate. "Lock to @yourco.com" → Claude calls set_email_gate with the domain.
 - Expiry. "Expire in 24 hours" → set_expiry handles it.
 - Replace in place. Asking Claude to revise the report later → update_site updates the same URL.

## Privacy + security

 The connector runs against your authenticated Stacktree account. Claude.ai cannot see your other sites, your billing, or any data outside the OAuth scope. Revoke the connector at any time from Stacktree settings; the token is invalidated immediately and Claude.ai loses access on the next request.

FAQ

## Frequent questions

     How do I add a custom MCP connector to Claude.ai? +  In Claude.ai go to Settings → Connectors → Add custom connector. Paste `https://api.stacktr.ee/mcp` as the server URL. Claude.ai reads the OAuth 2.1 metadata, performs Dynamic Client Registration, and prompts you to authorise. After that, the twenty-nine Stacktree tool calls are available in any chat.   Does this work on the free Claude.ai plan? +  Custom connectors are available on Claude.ai's paid plans. The Stacktree side is free; the only requirement is having an account that can add connectors.   What transport does Claude.ai use? +  Streamable HTTP (the MCP transport for hosted clients). Stacktree exposes `POST /mcp` and `GET /mcp` with Server-Sent Events for streaming responses.   How does authentication work? +  OAuth 2.1 with Dynamic Client Registration (RFC 7591). Claude.ai registers itself at `/oauth/register`, you authorise via `/oauth/authorize`, and Claude.ai stores the token. You can revoke it at any time from Stacktree settings.   Can Claude in the browser still publish HTML it generates? +  Yes. Once the connector is installed, Claude can call `publish_html` with HTML it generated in the chat, get back a private URL, and paste it for you to share.   Does the connector work in Claude Code too? +  Yes. Claude Code signed in with the same Claude account picks up the connectors you add in Claude.ai. You can also add the server straight from the terminal with `claude mcp add --transport http stacktree https://api.stacktr.ee/mcp`; it uses the same OAuth sign-in, with no API key. A local stdio install (`npx stacktree-install`) exists for agents that cannot use remote servers.
Keep reading

## Related guides

   -  [ Security at Stacktree How Stacktree protects agent-generated HTML: unguessable URLs, password and email-domain gates, end-to-end encryption. ](/security)
-  [ What is Claude Cowork The desktop app where Claude works with files and connected tools, and what happens to what it makes. ](/what-is-claude-cowork)
-  [ Publish from Claude Code The same connector added from the terminal, one command. ](/claude-code)
-  [ Publish from Cursor Same MCP server in Cursor's mcp.json. ](/cursor)
-  [ The MCP publish tool Every verb the server exposes. ](/mcp-publish-html)
-  [ Share Claude artifacts privately Why the connector beats the built-in publish button. ](/share-claude-artifacts)

References

## Sources and further reading

   -  [ Claude.ai: custom connectors ↗ Anthropic's help docs for adding MCP servers to Claude.ai. ](https://support.anthropic.com/en/articles/custom-connectors)
-  [ MCP authorization spec ↗ The OAuth 2.1 + DCR flow Claude.ai performs. ](https://modelcontextprotocol.io/specification/draft/basic/authorization)
-  [ RFC 7591: Dynamic Client Registration ↗ The IETF spec that defines how Claude.ai registers itself. ](https://datatracker.ietf.org/doc/html/rfc7591)

##  Wire Stacktree into Claude.ai.

 Paste one URL. Claude can hand you private links from any chat.

 [ Sign up free → ](https://app.stacktr.ee/?join=1&from=cta_claude_ai_connector)   install https://api.stacktr.ee/mcp
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

- [Page video](/page-video)
- [Ask this page](/ask-this-page)
- [Client spaces](/client-spaces)
- [Templates](/templates)
- [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)
- [Claude Cowork](/what-is-claude-cowork)
- [Meta Muse](/muse)
- [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)
- [Where AI output should live](/where-ai-output-lives)
- [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
