Skip to main content
Glama
Wagtail MCP
by wagtail

Wagtail MCP

🚧🤖 this is an early vibe-coded prototype of an MCP server for Wagtail. Proceed with caution! Until this is ready, you might prefer to use the wagtail-cli. See CMS with AI, not AI CMS: Wagtail 8.0’s new API for context.

A Model Context Protocol (MCP) server for Wagtail, exposing the Wagtail v3 API operations as model-callable tools.

Capabilities

  • 60 curated tools covering the full shipped v3 operation surface: pages (incl. revisions, move/copy/revert, aliases, translations), images, documents, snippets, redirects, sites and locales — plus api_call / api_schema, an OpenAPI-backed escape hatch for anything else.

  • In-process dispatch — tools call the mounted v3 API inside the process via Django's test client, so auth, permissions, validation and action logic are the real thing. No network hop, no half-reimplemented client.

  • Bearer-token auth with Wagtail APIToken; the v3 API stays the single authority for authorization.

  • Stateless Streamable HTTP — a Django view that works under WSGI and ASGI, with no extra processes.

Related MCP server: WordPress MCP Server

Quickstart

wagtail-mcp is a Django app: add wagtail.api.v3 and wagtail_mcp, mount /api/v3/ and /mcp/, create an API token, point a client at /mcp/. See the full getting started.

Point a remote MCP client at the endpoint:

{
  "mcp": {
    "wagtail": {
      "type": "remote",
      "url": "http://localhost:8000/mcp/",
      "headers": {
        "Authorization": "Bearer <your-api-token>",
        "Content-Type": "application/json"
      }
    }
  }
}

Try the demo

The repo ships demo/, a Wagtail site that mounts both the API and the MCP endpoint and seeds a demo token:

just demo

Then use demo/'s token (see demo/README.md) in your client config. The editorial scenario test is a complete worked example an agent can follow.

Documentation

Using the package: docs.

Changing the package: contributing.

Supported versions

This package supports Wagtail 8.0 and up (the v3 API preview), Django 5.2/6.0, and the compatible Python versions.

Development

Install dependencies, run the tests, lint, and run the demo (asgiref.sync handles the transport, so just test and just lint are the normal gates):

just install
just test
just lint
just demo

See CONTRIBUTING.md for setup, tests, and releases.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to manage WordPress posts, pages, media, taxonomies, comments, users, settings, and custom fields through the WordPress REST API. Supports secure authentication, OAuth deployment, search, and safe write controls.
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables AI agents to read and edit a Django site's content over its API, creating tools at startup from whatever resources the site registers so no code changes are needed. Works with any site running django-agent-content, with HTTPS-only API key authentication and no delete operations.
    1
    246 PyPI
    3
    MIT