Back to blog

How Mia Works with Drupal: A Practical Setup Guide

en • 7/7/2026

A step-by-step guide to connecting Drupal to Mia via the official MCP server — install the module, configure the endpoint, and let your AI assistant manage content, entities, and workflows directly from chat.

How Mia Works with Drupal: A Practical Setup Guide

How Mia Works with Drupal: A Practical Setup Guide

Drupal is one of the most flexible CMS platforms on the web — and thanks to the Model Context Protocol (MCP), it can now work hand-in-hand with Mia, your personal AI secretary. In this guide, we will walk you through the full setup: from installing the Drupal MCP server module to connecting it with your Mia chat.

By the end, Mia will be able to read, create, update, and manage Drupal content directly from your Telegram conversation — no dashboards, no context switches.


What is MCP and why should you care?

The Model Context Protocol is an open standard (originally introduced by Anthropic and now supported by OpenAI and Google) that lets AI agents talk to external services through a structured, secure interface.

An MCP server exposes tools and data from a system (Drupal, in our case). An MCP client (Mia) connects to that server and uses those tools on your behalf.

For Drupal site owners, this means you can do things like:

  • Ask Mia to create or update a blog post
  • Search for unpublished content draft
  • List taxonomy terms, users, or views
  • Trigger workflows (moderation, publishing, scheduling)
  • Pull site health and status reports

All from a single Telegram chat.


Prerequisites

Before you begin, make sure you have:

  • A Drupal 10.x or 11 site (PHP 8.1+, standard Composer setup)
  • Admin access to install modules
  • A Mia Handles account with at least a Standard plan (MCP connections require API access)
  • The official PHP MCP SDK installed globally or available via Composer

Step 1 — Install the Drupal MCP Server module

The recommended module is mcp_server from Drupal.org — it is built on top of the official modelcontextprotocol/php-sdk (PHP Foundation + Symfony collaboration).

From your site root, run:

composer require drupal/mcp_server

Then enable it through Drush or the UI:

drush en mcp_server -y
drush cr

Alternatively, go to Extend → Install new module, upload the archive, and enable.

After enabling, navigate to Configuration → Web services → MCP Server (/admin/config/services/mcp_server). There you will find:

  • Endpoint URL — the public URL for the MCP endpoint (usually https://yoursite.com/mcp)
  • Authentication — Basic auth, token, or OAuth (recommended: token)
  • Tools and resources — toggle which Drupal capabilities are exposed (nodes, users, taxonomy, Views, etc.)

Generate a secure API token and save it — you will need it in Mia.


Step 2 — Expose the endpoint securely

The MCP endpoint should only be reachable for services you trust. Typical options:

  • IP allowlist — restrict access to Mia's backend IP
  • Token-based auth — every request must carry the token in the header
  • Private network / VPC — for enterprise setups

If your Drupal site is behind Cloudflare or another WAF, make sure the /mcp path is allowed through with POST and GET methods, plus SSE if you use streaming.


Step 3 — Connect the Drupal server in Mia Handles

Now the fun part. In your Mia chat:

  1. Open the Mia miniapp (tap your profile picture or use the menu)
  2. Go to Settings → Integrations → Add MCP server
  3. Fill in the connection form:
Server name:   My Drupal Site
Endpoint URL:  https://yoursite.com/mcp
Transport:     Streamable HTTP
Auth:          Bearer token
Token:         (paste your Drupal MCP token)
  1. Tap Connect. Mia will validate the endpoint, list available tools, and add the server to your chat.

You can also connect using a SSE or JSON POST transport — Mia supports all three.


Step 4 — Test the connection

Once connected, try a simple command in your Mia chat:

"List the last 5 unpublished articles on my Drupal site"

Mia should return a summary pulled directly from your Drupal site. If you get an error, check:

  • Token validity in the Drupal MCP settings
  • Endpoint URL is reachable from Mia's backend (firewall, SSL certificate)
  • Required tools are enabled on the Drupal side

What you can do after setup

Here are a few things Mia can handle for you once connected:

  • Content operations — create drafts, publish/unpublish, bulk edit fields
  • Taxonomy & references — add terms, reorganize vocabularies
  • User management — create accounts, reset passwords, assign roles
  • Views queries — fetch structured reports as Markdown or JSON
  • Workflow triggers — move content through moderation states
  • Scheduled publishing — queue articles for future dates via Mia's todos or calendar

And because Mia already knows your calendar, tasks, and files, she can orchestrate Drupal work alongside the rest of your day — for example:

"Publish the interview I finished recording this morning as an article on my Drupal site, and remind the editor to review it tomorrow at 10:00."

Mia will handle both in one go.


Troubleshooting

Symptom Likely cause Fix
"Connection failed" Endpoint blocked or wrong URL Check firewall rules and SSL cert
"No tools available" MCP module disabled or no tools toggled Re-enable and select at least one tool
"Unauthorized" Invalid token Regenerate token in Drupal admin and update in Mia
Slow responses Large entity exports Disable unused tools, enable pagination

Related reading

The same MCP pattern works with other CMS platforms. Check out our companion guides:

You can connect all three platforms to the same Mia chat, and she will address each by name.


Wrapping up

Connecting Drupal to Mia via MCP turns your CMS from a standalone dashboard into a conversational extension of your daily workflow. Once set up, it just works — quietly, in the background, whenever you need it.

If you have questions or want help setting it up, just ask Mia directly in chat. She already knows the protocol.