CKEditor AI On-Premises – MCP support
The On-Premises version of the CKEditor AI provides basic functionality for connecting to MCP servers using the Streamable HTTP transport.
To integrate an external MCP server, you need to supply the appropriate configuration for the MCP client:
{
"mcp_servers": {
"<MCP SERVER NAME>": {
"url": "<MCP SERVER URL>"
}
}
}
If you configure your CKEditor AI via environment variables, you can pass the configuration as the MCP_SERVERS variable in the form of a stringified JSON.
The configuration also supports specifying additional HTTP headers (e.g., an authorization token) that will be included with each request sent to the MCP server:
{
"mcp_servers": {
"<MCP SERVER NAME>": {
"url": "<MCP SERVER URL>",
"headers": {
"Authorization": "Bearer QUkgc2VydmljZUFJIHNlcnZpY2VBSSBzZXJ2aWNlQUkgc2VydmljZQ==",
"<HEADER NAME>": "<HEADER VALUE>"
}
}
}
}
For some MCP servers, you may want to disable specific tools to prevent the LLM from making harmful or dangerous actions. You can do this by providing the names of the tools to disable in the tools.disabled array.
{
"mcp_servers": {
"<MCP SERVER NAME>": {
"url": "<MCP SERVER URL>",
"headers": {
"Authorization": "Bearer QUkgc2VydmljZUFJIHNlcnZpY2VBSSBzZXJ2aWNlQUkgc2VydmljZQ==",
"<HEADER NAME>": "<HEADER VALUE>"
},
"tools": {
"disabled": ["<NAME OF THE TOOL TO DISABLE>"]
}
}
}
}
You can also configure additional options for the MCP client by providing them in the options object. Currently we support the following options:
callToolTimeout(optional, default: 60 seconds) – the timeout for the MCP tool call in seconds.
{
"mcp_servers": {
"<MCP SERVER NAME>": {
"url": "<MCP SERVER URL>",
"options": {
"callToolTimeout": 300
}
}
}
}
Once the MCP client is configured, it will automatically establish a connection to the MCP server and retrieve the list of available tools. These tools will then be accessible to AI models during conversations (not in reviews or quick actions), enabling them to determine when and how to use them as needed.