Setting it up
- Go to Settings → Integrations → Add Integration.
- Pick an LLM provider — Anthropic, OpenAI or Gemini — and enter your API key and model.
- Optionally add Firecrawl to give the assistant web access.
Only workspace owners can add or edit integrations. API keys are encrypted before they are stored. Until an LLM integration exists, the assistant panel shows a link to the settings page instead of a chat box.
Where you’ll find it
Each one opens from a button in the editor it belongs to, and each already knows what is on screen — the current email tree, the current post, the current period and filters — so “make the header tighter” or “why did last week drop” need no further context from you.
Composing email templates
The email assistant works on the same block tree as the visual editor, so anything it produces is editable by hand afterwards.
After it edits the template, the MJML is compiled and any error is reported in the thread — a broken generation is never presented as a success.
The email assistant is available in the visual editor. Switch the template to MJML code mode and the panel hides, since the assistant edits the block tree rather than raw source.
Composing blog posts
In the blog post editor, the assistant writes into the rich-text document itself — headings, lists, quotes, code blocks, links, images and YouTube embeds — rather than dropping a wall of plain text.Querying web analytics
The Web Analytics assistant answers questions about your own traffic by running the same queries the dashboard runs, so an answer and the chart next to it cannot disagree. It also changes the period, applies filters and opens Explore reports for you. It is deliberately fenced: it never groups or filters by visitor email address, never reports per-session coordinates, and does not invent figures. See the Web Analytics assistant page for the full detail.Web access with Firecrawl
Add the Firecrawl integration and two tools become available to the assistant everywhere it appears:
That is what turns “write a post about X” into a researched post, and lets you say “read our pricing page and write the launch email from it”. Each call runs on your Notifuse server and appears as a step in the conversation, so you can see what it read.
Choosing a provider
Because the OpenAI integration accepts a Base URL, it also covers OpenRouter — one key for hundreds of models from Google, Meta, Mistral, DeepSeek, Qwen and others — as well as Azure OpenAI and self-hosted runtimes such as Ollama, vLLM and LiteLLM. Point Base URL at
https://openrouter.ai/api/v1, paste your sk-or-v1-... key, and type the model ID you want.
Cost
For Anthropic and Gemini, the running cost of the conversation is shown at the bottom of the panel, split into input and output, and it resets when you start a new conversation. It is computed from the token counts your provider returns and the published price of the model you picked. The OpenAI integration accepts any model ID — including everything on OpenRouter and any self-hosted runtime — so there is no price list to compute against, and no cost is shown. Track that spend in your provider’s dashboard. Costs land on your provider account, not on Notifuse. Tool use makes a conversation more expensive than a plain chat of the same length: each step is another request, and a scraped page or a query result is more input tokens to read.Good to know
Related
- Anthropic, OpenAI, Gemini — provider setup, models and pricing
- Firecrawl — web search and scraping
- Templates — the email editor the assistant works in
- Blog posts — the post editor the assistant writes into
- Web Analytics assistant — the analytics-specific behaviour and its limits
