Autonnel
OfficialSupports Cloudflare Email as an email transport for receipts and recall emails.
Supports MinIO as an S3-compatible storage backend for media uploads.
Enables AI page generation through any OpenAI-compatible LLM endpoint, composing landing pages from real components.
Supports PayPal as a payment provider for taking payments on landing, checkout, and upsell pages.
Supports Resend as an email transport for receipts and recall emails.
Integrates Shopify as an ecommerce source of truth, syncing product and order data and writing orders back to Shopify.
Supports Stripe as a payment provider for taking payments on landing, checkout, and upsell pages.
Integrates WooCommerce as an ecommerce source of truth, syncing product and order data and writing orders back to WooCommerce.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Autonnel is a funnel builder you run yourself. It renders the whole money path - landing page, order form, order bumps, one-click upsells, thank-you page - runs A/B tests across entire funnels, sends server-side conversion postbacks that survive iOS tracking loss, and writes every order back to Shopify, WooCommerce or Picocart.
Apache-2.0, no commercial-use carve-out, no per-contact fee, no per-funnel fee. Your orders and customer data live in a Postgres database you control.
Describe a page, get a page
The agent composes real components onto the canvas, generates the imagery, and leaves every edit as diffable JSON. No black-box HTML blob.
Wire the funnel, publish it
Why people switch
Autonnel | Hosted funnel platforms | |
Licence | Apache-2.0, OSI-approved, no agency restriction | Proprietary |
Price | $0 self-hosted. Managed cloud from $29/mo + 1% GMV | $97-$297/mo, per-contact limits |
Where orders live | Your Postgres | Their platform |
If you stop paying | Nothing stops - it is the same code | Funnels go offline |
Ad attribution | Server-side postbacks, click id carried through checkout | Pixel and integration based |
Agents | MCP server + Claude skills in the box: an agent can read and write funnels, pages and orders | Not exposed |
Catalog | Shopify, WooCommerce or Picocart as source of truth | Built into their platform |
Longer, and more honest about where the hosted platforms win: Autonnel vs ClickFunnels · vs CartFlows · vs systeme.io · licences compared
Related MCP server: Avito MCP
Table of contents
Autonnel is a self-hostable application. Run the Docker image (below) if you just want the product, or clone the repository if you intend to modify Autonnel itself and deploy it to Node or Cloudflare Workers.
Run it (about 2 minutes)
curl -O https://raw.githubusercontent.com/autonnel/autonnel/master/docker-compose.yml
docker compose upOpen http://localhost:4321 and complete the /setup wizard to create the admin
account. That is the whole setup.
The compose file starts Postgres, applies the schema, and runs Autonnel. You do not need Node, an external database, an S3 bucket, an email provider or a store connected to boot it. Those are configured later in the admin UI under Settings, and only for the features that use them:
You want | Configure in Settings |
Product and order data | Ecommerce: Shopify, WooCommerce or Picocart |
Taking payments | Payments: Stripe or PayPal |
Media uploads | Storage: any S3-compatible bucket (R2, S3, MinIO, ...) |
Receipts, recall emails | Email: SMTP, Resend, Cloudflare Email or AWS SES |
AI page generation | LLM: any OpenAI-compatible endpoint |
Before putting it on a public host, set your own secrets in a .env file next
to docker-compose.yml:
AUTH_SESSION_SECRET=$(openssl rand -hex 32)
CREDENTIALS_ENCRYPTION_KEY=$(openssl rand -base64 32)
ADMIN_DOMAIN=admin.example.comBoth are required whenever NODE_ENV is not development/test, which is the
case inside the published image. The compose file ships insecure development
defaults so that the first run needs zero configuration. Generate each value once
and keep it stable: rotating them invalidates sessions and makes stored provider
credentials unreadable.
Container image
Multi-arch images (linux/amd64, linux/arm64) are published to GHCR:
docker run -p 4321:4321 \
-e DATABASE_URL="postgresql://user:pass@host:5432/autonnel" \
-e ADMIN_DOMAIN="admin.example.com" \
-e AUTH_SESSION_SECRET="$(openssl rand -hex 32)" \
-e CREDENTIALS_ENCRYPTION_KEY="$(openssl rand -base64 32)" \
ghcr.io/autonnel/autonnel:latestTags: :latest (most recent stable), :1.3.0 (exact version, recommended for
production), :1.3 (auto-update on patches), :1 (auto-update on minor and
patches). The container listens on 4321 and has a HEALTHCHECK against
/api/health (database plus cache connectivity).
Schema changes ship with the image. After pulling a newer tag, apply them with:
docker compose up -d # the one-shot `schema` service re-runs on every up
# or, for a plain `docker run` setup:
docker run --rm ghcr.io/autonnel/autonnel:latest \
node_modules/.bin/prisma db push --schema=./prisma/schema.prisma \
--url "postgresql://user:pass@host:5432/autonnel"The image does not ship prisma.config.ts, so Prisma reads the datasource from
--url rather than from DATABASE_URL.
Run it from source
Use this path when you intend to modify Autonnel itself, or want to deploy to Cloudflare Workers. Requires Node 22+ and a PostgreSQL database.
npm create autonnel@latest my-funnel # clones this repository, drops git history
cd my-funnel
cp .env.example .env # set DATABASE_URL and ADMIN_DOMAIN
pnpm install # this repository is pnpm-managed
npm run db:push
npm run devThe repository ships pnpm-lock.yaml and pins dependency overrides in
pnpm-workspace.yaml, so install with pnpm 10+. npm install resolves a
different tree and ignores those pins.
For running Autonnel as a product, prefer the Docker path above: it needs no Node toolchain and no external database.
Configuration
Autonnel reads two kinds of configuration. Environment holds only operational settings; everything else lives in the admin UI and is stored in the database.
DATABASE_URL="postgresql://user:password@host:5432/db" # required
ADMIN_DOMAIN="admin.example.com" # hostnames serving the admin UI
AUTH_SESSION_SECRET="..." # required in production, openssl rand -hex 32
CREDENTIALS_ENCRYPTION_KEY="..." # required in production, openssl rand -base64 32
CRON_KEY="..." # optional, protects the HTTP cron endpoints
AUTONNEL_SCHEDULER=off # optional, Node only: disable the built-in 5-minute scheduler
LOG_LEVEL=info # optional: debug | info | warn | error
DEFAULT_CURRENCY=USD # optional storefront fallback
REDIS_URL="redis://..." # optional, Node only; Workers use KVPayment providers, email transport, ecommerce adapter, S3 storage, LLM keys, ad platforms, branding and domains are all configured under Settings in the admin UI, per install. Full reference: Configuration.
Ad-platform OAuth, ad spend sync and funnel reconciliation are built in.
OAuth/OIDC login is available through @autonnel/plugin-oauth2.
Deploy to Cloudflare Workers
Static assets are unmetered on Workers, so typical funnels run within
Cloudflare's free tier. The repository ships the full Workers toolchain: a worker
entry with the cron scheduled handler (src/cf-worker.ts), wrangler.toml
generation, KV cache wiring and Hyperdrive for Postgres.
npx wrangler login
npx wrangler kv namespace create CACHE_KV
npx wrangler hyperdrive create autonnel-db --connection-string="postgresql://..."
# .env: set CF_WORKER_NAME, CF_KV_NAMESPACE_ID, CF_HYPERDRIVE_CONFIG_ID
npx wrangler secret put DATABASE_URL
npx wrangler secret put AUTH_SESSION_SECRET
npx wrangler secret put CREDENTIALS_ENCRYPTION_KEY
npm run deploy:cfAlso available: npm run dev:cf (dev server on the Workers runtime) and
npm run preview:cf (local preview via wrangler dev).
CLI
Run these from inside a source checkout (they use that project's .env and
database):
npx autonnel admin:create <email> <password> Create (or grant) a full-access admin user
npx autonnel password:reset <email> Reset a user's password (auto-generated)
npx autonnel authorize Authorize this machine against the marketplace
npx autonnel orders List purchased plugins and template packs
npx autonnel install <item> Download and install a purchased pack
npx autonnel --version / --helpIn a Docker deployment, run them inside the container:
docker compose exec app node dist/cli/index.js admin:create you@example.com 'a-strong-password'Supported providers
Payments: PayPal, Stripe
Email: SMTP, AWS SES, Resend, Cloudflare Email
E-commerce: Shopify, WooCommerce, Picocart (Autonnel's own self-hostable commerce backend, a drop-in alternative to Shopify/WooCommerce)
Runtime support
Node.js (@astrojs/node) and Cloudflare Workers (@astrojs/cloudflare).
Agents and the MCP server
Autonnel exposes its own surface to agents rather than hiding it. A scoped Bearer
key plus the built-in MCP server lets an agent list funnels, create and edit
pages, and read orders directly; the SKILL.md files ship in the box so Claude
picks up the workflows without extra prompting.
Project family
autonnel - this repository, the funnel builder
picocart - open-source headless commerce backend, Shopify-API compatible
plugin-oauth2 - OAuth/OIDC login provider
Contributing
Issues and pull requests are welcome. Start with CONTRIBUTING.md, and use Discussions for questions and ideas. If Autonnel is useful to you, a star helps other people find it.
License
Apache-2.0, see LICENSE. No commercial-use restriction and no separate agency tier: run it for yourself, for clients, or inside a paid service.
Related MCP Connectors
API-first CRM for LLMs - contacts, companies, deals and activities over a native MCP server.
Open-source Zapier/n8n alternative as an MCP server: agents build, run and debug your workflows.
Build custom POS apps with your AI agent. Final's MCP server gives developers what they need to ship a custom point of sale: scaffold a checkout flow, adapt vetted screen blueprints for counter POS, self-checkout kiosks, restaurant ordering and payment terminals, ground every call in Final's version-locked POS APIs, validate, boot a live preview and deploy to real hardware with integrated card payments. The same server also manages the store behind it: products, stock, orders, customers and sales reports. Remote Streamable HTTP with OAuth 2.1.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseAqualityFmaintenanceA Model Context Protocol (MCP) server for authenticated REST APIs. Drop it into any project, point it at your API, and let AI agents call endpoints — with auto-login, 2FA support, Swagger spec fetch, and fuzzy endpoint search — all without writing a single line of auth code.314 npm6MIT
- AlicenseAqualityAmaintenanceUniversal MCP server for the Avito API (Russia's largest classifieds marketplace), built for autonomous AI agents to operate an account hands-free — 145 tools across 18 domains (listings, messenger, orders, delivery, promotion, autoload, reviews, analytics). Safe-by-default: dry-run, idempotency, structured errors, confirmation flow.144260 npm24MIT
- FlicenseNot gradedqualityDmaintenanceHosted MCP server that gives AI agents read and write access to your full marketing & ecommerce stack — Google Analytics, Search Console, Google & Meta Ads, Shopify, WooCommerce, Shopware, Slack and LinkedIn. 100+ tools across 10 connectors. BYOK, OAuth 2.1.-
- AlicenseBqualityDmaintenanceSelf-hosted MCP server that connects AI assistants to Kommo CRM (API v4), enabling real-time CRM actions such as creating/managing leads, tasks, notes, and more through 29 tools.291MIT