From 39e1043fc12c13a5c64dc07512cad5fd4a4d2af5 Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 20 Jul 2026 16:30:36 +0200
Subject: [PATCH 1/6] mcp_config.md: create_content_type_draft
---
docs/ai/mcp/mcp_config.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index 4c9386cead..6fd1887565 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -113,7 +113,8 @@ MCP Servers LTS Update comes with the following **experimental** built-in tools:
- `get_content_type` - gets a content type by its ID.
- `get_content_type_by_identifier` - gets a content type by its identifier.
- `get_content_type_list` - gets content types by their IDs.
- - `create_content_type` - creates a content type draft.
+ - `create_content_type` - creates a draft for a new content type.
+ - `create_content_type_draft` - creates a draft for an existing content type.
- `get_content_type_draft` - gets a content type draft by content type ID.
- `publish_content_type_draft` - publishes a content type draft by content type ID.
- `Ibexa\Mcp\Tool\ContentType\FieldDefinitionTools`
From b3d9b4d6af91b858199766b86eb10604749e73d5 Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 17 Aug 2026 11:22:28 +0200
Subject: [PATCH 2/6] mcp_config.md: session now has a default value
---
docs/ai/mcp/mcp_config.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index 6fd1887565..8497fb87cc 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -81,7 +81,7 @@ You can list them by running the following command:
| [`instructions`](https://modelcontextprotocol.io/specification/2025-11-25/schema#initializeresult-instructions) | string | No | `null` | Prompt-like instructions provided to the AI agent |
| [`tools`](#tool-configuration) | array | No | `[]` | List of tool classes |
| [`discovery_cache`](#discovery-cache) | string | Yes | | PSR-6 or PSR-16 cache pool service identifier |
-| [`session`](#session-storage) | object | Yes | | Session storage configuration |
+| [`session`](#session-storage) | object | No | `psr16` | Session storage configuration |
| [`allowed_hosts`](#allowed-hosts) | array | No | `[`
`'localhost',`
`'127.0.0.1',`
`'[::1]'`
`]` | Accepted `Host` headers |
!!! note "New servers are disabled by default"
From 7dd85566c4a7cc5fc97a716c11a3e9d37cb227d9 Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 17 Aug 2026 11:24:52 +0200
Subject: [PATCH 3/6] mcp_config.md: session.service now has a default value
---
docs/ai/mcp/mcp_config.md | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index 3f5ad9b30b..cde069b454 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -187,13 +187,13 @@ MCP servers store session data in their own way.
#### Options
-| Option | Type | Default | Description |
-|-------------|---------|------------|-----------------------------------------------------------|
-| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
-| `service` | string | `null` | PSR-16 cache service ID for the `psr16` session store |
-| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
-| `directory` | string | `null` | Directory path for the `file` session store |
-| `ttl` | integer | `3600` | Session TTL in seconds |
+| Option | Type | Default | Description |
+|-------------|---------|--------------------|-----------------------------------------------------------|
+| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
+| `service` | string | `ibexa.cache_pool` | PSR-16 cache service ID for the `psr16` session store |
+| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
+| `directory` | string | `null` | Directory path for the `file` session store |
+| `ttl` | integer | `3600` | Session TTL in seconds |
In production, it’s recommended to use [`psr16`](#psr-16) with Redis/Valkey, like with [regular sessions](clustering.md#shared-sessions).
From f099711eaacffeffae7d3f3681197c1da713303b Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 17 Aug 2026 11:27:12 +0200
Subject: [PATCH 4/6] mcp_config.md: session.service supports PSR-6
---
docs/ai/mcp/mcp_config.md | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index cde069b454..a9b995b5fc 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -187,19 +187,19 @@ MCP servers store session data in their own way.
#### Options
-| Option | Type | Default | Description |
-|-------------|---------|--------------------|-----------------------------------------------------------|
-| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
-| `service` | string | `ibexa.cache_pool` | PSR-16 cache service ID for the `psr16` session store |
-| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
-| `directory` | string | `null` | Directory path for the `file` session store |
-| `ttl` | integer | `3600` | Session TTL in seconds |
+| Option | Type | Default | Description |
+|-------------|---------|--------------------|----------------------------------------------------------------|
+| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
+| `service` | string | `ibexa.cache_pool` | PSR-16 or PSR-6 cache service ID for the `psr16` session store |
+| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
+| `directory` | string | `null` | Directory path for the `file` session store |
+| `ttl` | integer | `3600` | Session TTL in seconds |
In production, it’s recommended to use [`psr16`](#psr-16) with Redis/Valkey, like with [regular sessions](clustering.md#shared-sessions).
#### PSR-16
-Sessions are stored with a PSR-16 compatible cache implementation.
+Sessions are stored with a PSR-16 or PSR-6 compatible cache implementation.
It requires that a `service` option points to a valid cache service ID.
Optionally, you could use a more specific `prefix` option than the default `mcp_` to avoid key collisions with other cache usages.
Such setup is suitable for production environments.
From 715613ebb700dcd7be1bb15b3becea51e5c604d7 Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 17 Aug 2026 14:57:13 +0200
Subject: [PATCH 5/6] mcp_config.md: Fix defaults
---
docs/ai/mcp/mcp_config.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index a9b995b5fc..6b0c7a1a50 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -90,7 +90,7 @@ php bin/console debug:router --siteaccess= ibexa.mcp`
| [`instructions`](https://modelcontextprotocol.io/specification/2025-11-25/schema#initializeresult-instructions) | string | No | `null` | Prompt-like instructions provided to the AI agent |
| [`tools`](#tool-configuration) | array | No | `[]` | List of tool classes |
| [`discovery_cache`](#discovery-cache) | string | Yes | | PSR-6 or PSR-16 cache pool service identifier |
-| [`session`](#session-storage) | object | No | `psr16` | Session storage configuration |
+| [`session`](#session-storage) | object | No | `{ type: psr16, service: ibexa.cache_pool }` | Session storage configuration |
| [`allowed_hosts`](#allowed-hosts) | array | No | `[`
`'localhost',`
`'127.0.0.1',`
`'[::1]'`
`]` | Accepted `Host` headers |
!!! note "New servers are disabled by default"
@@ -189,7 +189,7 @@ MCP servers store session data in their own way.
| Option | Type | Default | Description |
|-------------|---------|--------------------|----------------------------------------------------------------|
-| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
+| `type` | enum | `psr16` | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
| `service` | string | `ibexa.cache_pool` | PSR-16 or PSR-6 cache service ID for the `psr16` session store |
| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
| `directory` | string | `null` | Directory path for the `file` session store |
From ca88363ca388f0fb6be3267fa2de5f259a1f0c36 Mon Sep 17 00:00:00 2001
From: Adrien Dupuis <61695653+adriendupuis@users.noreply.github.com>
Date: Mon, 17 Aug 2026 15:00:39 +0200
Subject: [PATCH 6/6] mcp_config.md: Fix defaults
---
docs/ai/mcp/mcp_config.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/ai/mcp/mcp_config.md b/docs/ai/mcp/mcp_config.md
index 6b0c7a1a50..01637ad170 100644
--- a/docs/ai/mcp/mcp_config.md
+++ b/docs/ai/mcp/mcp_config.md
@@ -90,7 +90,7 @@ php bin/console debug:router --siteaccess= ibexa.mcp`
| [`instructions`](https://modelcontextprotocol.io/specification/2025-11-25/schema#initializeresult-instructions) | string | No | `null` | Prompt-like instructions provided to the AI agent |
| [`tools`](#tool-configuration) | array | No | `[]` | List of tool classes |
| [`discovery_cache`](#discovery-cache) | string | Yes | | PSR-6 or PSR-16 cache pool service identifier |
-| [`session`](#session-storage) | object | No | `{ type: psr16, service: ibexa.cache_pool }` | Session storage configuration |
+| [`session`](#session-storage) | object | No | `{ type: psr16,`
`service: ibexa.cache_pool`` }` | Session storage configuration |
| [`allowed_hosts`](#allowed-hosts) | array | No | `[`
`'localhost',`
`'127.0.0.1',`
`'[::1]'`
`]` | Accepted `Host` headers |
!!! note "New servers are disabled by default"