MCP Server
Purpose
Connect external AI agents to TYPO3 through the Model Context Protocol (MCP). Tools like Cursor, Claude Desktop, and n8n can read pages, inspect schema, and update records (with permissions).
Path: AI Foundation > MCP Server
MCP Server — online status, connection methods, and Remote OAuth endpoint details.
What MCP does
- Read TYPO3 pages and content
- Inspect database schema
- Create or update records (with permissions)
- Call extension-registered tools (see MCP Tools)
Enable MCP
- Open AI Foundation > MCP Server > Advanced.
- Enable the MCP server checkbox (
enable).Mcp Server - Flush caches → status should show Online.
The setting is also available in AI Foundation extension settings under the MCP Server group. It is not part of the classic TYPO3 Admin Tools > Settings > Extension Configuration form.
Health check
curl -sS -o /dev/null -w "%{http_code}" https://your-site.com/mcp
# Expect: 401 (auth required = good)
curl -sS https://your-site.com/.well-known/oauth-authorization-server/mcp
# Expect: JSON 200
Connection methods
- Remote OAuth — Production and Cursor. Uses OAuth 2.1 with PKCE.
- mcp-remote — Simple HTTP clients. Uses URL token.
- Local CLI — DDEV and local development. Uses backend user and workspace.
Personal bearer token
On AI Foundation > MCP Server, the Bearer Token row is for clients other than n8n and Manus. Those two still use Create n8n Token and Create manus Token in their setup tabs.
- Opening the module does not create a token.
- Click Create personal token. One token is created, and the full value is shown once. Copy it before you leave the page.
- A later visit shows only a short preview. Copy Token still copies the full value in that same browser session. After the session is gone, revoke the token and create a new one.
MCP modes
Set the mode in the MCP Server top bar (stored as mcp in the
AI Foundation MCP settings).
Context (AI Generate in the client) — Default for Cursor, Claude Desktop, and similar clients.
- The external AI agent generates content outside TYPO3.
- MCP tools apply and save that content into TYPO3 (pages, records, files).
- Use this when the model and reasoning run in the client, and TYPO3 is the CMS tool layer.
Native (AI Generate via TYPO3) — Server-side generation.
- TYPO3 runs AI generation on the server through your configured AI Providers.
- MCP tools receive instructions and generate or process content inside TYPO3.
- Use this when generation must stay on your instance (provider keys, brand context, and governance already configured in AI Foundation).
Some dual-mode content tools change their argument requirements and descriptions based on the active mode. After switching mode, reconnect or refresh your MCP client so the tool list updates.
Core tools
AI Foundation ships a large TYPO3 Core tool catalog (pages, content, records, files, workspaces, scheduler, permissions, redirects, cache, and more). Browse the full list in AI Foundation > MCP Tools.
Starter examples for first checks:
table_— Field metadata for any tableschema pages_— Read one pageget content_— List content on a pagelist write_— Create, update, or delete recordstable
Child extensions can register additional tools — also visible in the MCP Tools tab.
Workspaces
- 0 — Live workspace
- 1+ — Draft workspace
MCP edits respect the active workspace. Test writes in workspace 1 before live.
Cursor example (stdio / DDEV)
{
"mcpServers": {
"typo3": {
"command": "bash",
"args": ["-lc", "cd /path/to/project && ddev exec php vendor/bin/typo3 ns_t3af:mcp:serve --no-startup-message -u admin -w 0"]
}
}
}
OAuth redirect URI allow-list
In AI Foundation > MCP Server > Advanced, Allowed redirect URIs
(oauth) limits which redirect_ values MCP clients
may register and use during authorization.
- Empty field — No allow-list is enforced; dynamic registration accepts any redirect URI (client records are still validated). Save an empty textarea and reload to confirm the field stays empty.
- One URI per line — Exact match (for example
https://).claude. ai/ oauth/ callback - Prefix rules — A line ending with
*allows any URI that starts with the prefix before*. Examples:cursor://*(shorthand for legacycursor://URIs plus current Cursor remote OAuth athttps://andwww. cursor. com/ agents/ mcp/ oauth/ http:///localhost:* http://),127. 0. 0. 1:* http://for other desktop clients). Redirect URIs with a127. 0. 0. 1:* user@userinfo part are always rejected (they would otherwise bypass host checks). Broad patterns such ashttps://*are ignored for security.
Default starter lines ship in extension settings (Claude Desktop
https:// and https://,
Cursor prefix, local loopback prefixes, n8n). Tighten or extend the list for your environment.
The consent screen shows the redirect host, requested scopes, and the application name as supplied by the client during registration. Use Deny without entering backend credentials when you do not trust the request.
Security
- Use HTTPS in production
- Treat URL tokens like passwords
- Limit which backend users can authorize OAuth
- Test in draft workspace before live writes
- Enable AI Permissions for multi-user sites
- Schedule
t3af:for expired OAuth tokens and stale sessions (not created automatically). See DPA & GDPR.mcp: cleanup
When to enable MCP
- Developers use Cursor or Claude Desktop with TYPO3 daily
- Automation workflows via n8n need CMS access
- Staging environment for safe agent testing
When not to enable yet
- Production site without HTTPS
- No clear policy for which admins may authorize agents
- Team has not completed AI Providers setup
Note
- Model Context Protocol: https://modelcontextprotocol.io/