The directory

Add what you need. Nothing you don’t.

Extensions add Twig functions, field types, admin screens, CLI commands and routes to Total CMS. Some ship in the download and only need switching on; others come from independent developers. Every one runs behind permissions you control.

23 extensions 14 independent 9 in the box

Events Calendar yourstudio/events Enabled

Capabilities detected at registration

  • twig:functionsCalendar functions in your templates On
  • admin:navAn Events screen in the admin On
  • routes:publicAn iCal feed anyone can fetch Reviewed before enabling On
  • events:listenNew in 1.2 — off until you switch it on Off
Illustrative. Every capability an extension registers becomes a switch you can turn off without uninstalling it.

From independent developers (14 extensions)

Made and supported by their authors. Install one by dropping its zip on the Extensions screen in the admin. The order shuffles on every visit, so no one holds the top spot.

Statser

by Jochen Abitz Utilities

  • Paid

Page and event analytics that run inside your own install, with no tracking cookies and no visitor data sent to an analytics service. Covers referrers, downloads, form submissions and error pages, with shareable dashboards and period comparison.

PDF Cover

by Franco Utilities

  • Free
  • Needs Pro
  • Needs 3.6.0+

Automatically generates a cover image (WebP) from the first page of a PDF. Listens for object saves, finds the PDF file, renders page 1, and stores the result in extension storage. Also callable from Twig.

Built one? Get it listed. Add it from your account. Joe reviews it, then it joins the same shuffle as everyone else, free or paid.

Ships with Total CMS (9 extensions)

Already in your download. Switch one on from the Extensions screen in the admin; there is nothing to install.

WebMCP

by Total CMS AI

  • Included
  • Beta
  • Needs 3.6.0+

Makes your forms callable by an AI agent in the visitor's browser and hands it the MCP server's read tools, through Chrome's WebMCP origin trial. Experimental and off by default; the read tools need the Standard edition or above.

Registers
  • twig:functions
  • admin:assets
  • frontend:assets

Scheduled

by Total CMS Utilities

  • Included

Time-window gating. Renders a page only between a configured start and end time. For holiday campaigns, embargoed announcements and time-limited sales.

Registers
  • page-middleware

Maintenance

by Total CMS Utilities

  • Included

Per-page 503 maintenance mode. Take individual pages offline with a custom message while the rest of the site stays up. Admins bypass automatically.

Registers
  • page-middleware

Stock Photos

by Total CMS Content

  • Included
  • Needs 3.6.5+

Search free Pixabay photos, or your own galleries, from any image field and drag one in. Each photo arrives with alt text and a full credit. Free in every edition; your API key stays on the server.

Registers
  • routes:admin
  • admin:assets

Podcast

by Total CMS Content

  • Included
  • Needs Standard or Pro
  • Needs 3.6.0+

Host a podcast from two collections: a show schema, an episode schema and a feed the directories accept, served at its own address with no page needed. Apple's requirements are enforced in the form.

Registers
  • routes:public (reviewed before enabling)
  • twig:functions
  • schemas

Pushover

by Total CMS Notifications

  • Included
  • Needs Pro

Send push notifications through Pushover when a form is submitted. Supports Twig templates in messages, image attachments, priority levels and delivery groups.

Registers
  • routes:api
  • routes:admin
  • form-actions

A/B Split

by Total CMS Content

  • Included

Render an alternate template at the same URL for a percentage of visitors. Test layout, copy or CTA variations without changing the page URL.

Registers
  • page-middleware

Total CMS Docs

by Total CMS AI

  • Included

Serves this install's documentation through its own MCP server, giving agents docs_search, docs_get and docs_lookup. Enabled by default.

Registers
  • mcp:tools (reviewed before enabling)
  • mcp:prompts
  • twig:functions

Protect

by Total CMS Access Control

  • Included

Gate a page behind a numeric passcode. Visitors enter a code to unlock and a cookie remembers them for 7 days. For client previews and soft launches.

Registers
  • page-middleware

How they work

Permissions you actually control.

An extension doesn’t get to describe its own reach. Total CMS records what it really registered and hands you the switches.

Capabilities, not promises
Routes, Twig functions, CLI commands, event listeners: each one an extension registers becomes a toggle in its settings. Keep the parts you want and switch off the rest.
Reviewed before it runs
An extension that opens public endpoints, listens to content changes, runs automations or adds MCP tools shows you a review screen before it’s enabled, and its source is scanned for high-risk calls.
Updates can’t sneak in
When an extension you installed updates, any new capability arrives switched off. New high-risk code keeps it disabled until you’ve looked.
A broken one can’t take the site down
An extension that throws renders nothing instead of a white screen. In production, one that keeps crashing is switched off for you.
No silent overrides
Extensions can’t shadow core Twig functions or built-in CLI commands, and collisions between two extensions are reported, not resolved behind your back.

Build your own

The extension API is the same one we use.

Every extension above is built on the public extension API — there is no private back door.

Start from the template
The extension starter is a working extension that exercises every extension point, ready to clone and rename.
Read the reference
The extension points reference covers routes, Twig, CLI, admin screens, dashboard widgets, field types, event listeners and assets.
Manage from the CLI
tcms extension:list, enable, disable and remove script installs and keep environments in step.

Extend it, or just use what ships.

The free 45-day trial includes every Pro feature, so you can enable the bundled extensions, flip their switches and build one of your own before spending anything. Third-party extensions are sold by their authors.

Built an extension? Get it listed in the directory.