Axendo.ModelContextProtocol.Umbraco
0.1.5
dotnet add package Axendo.ModelContextProtocol.Umbraco --version 0.1.5
NuGet\Install-Package Axendo.ModelContextProtocol.Umbraco -Version 0.1.5
<PackageReference Include="Axendo.ModelContextProtocol.Umbraco" Version="0.1.5" />
<PackageVersion Include="Axendo.ModelContextProtocol.Umbraco" Version="0.1.5" />
<PackageReference Include="Axendo.ModelContextProtocol.Umbraco" />
paket add Axendo.ModelContextProtocol.Umbraco --version 0.1.5
#r "nuget: Axendo.ModelContextProtocol.Umbraco, 0.1.5"
#addin nuget:?package=Axendo.ModelContextProtocol.Umbraco&version=0.1.5
#tool nuget:?package=Axendo.ModelContextProtocol.Umbraco&version=0.1.5
Model Context Protocol for Umbraco
The first step to a more AI-agentic Umbraco.
This package adds MCP Server capabilities to your Umbraco instance. This allows you to communicate with the Umbraco CMS using the Model Context Protocol that has been gaining a lot of traction in the AI space recently.
Among many other features like AI workflow automation, it allows you to chat directly with your CMS using LLMs.
This packages offers the following functionality or tools as they are called in MCP:
- Create a document
- Update a document
- Get the document types and their structure
- Publish a document
- Schedule document for publication
- Some basic content quering tools and helpers to let the LLM understand your Umbraco instance better.
Installation
To get started, install the package from NuGet after installing Umbraco 15+.
dotnet add package Axendo.ModelContextProtocol.Umbraco
Getting Started
Configuration
In your Umbraco 15+ project, add the following section to your appsettings.json.
...
"McpServer": {
"Username": "{UMBRACO USER}"
}
...
This defines the user identity MCP utilizes for retrieving and storing data within Umbraco. It is advisable to create a seperate user for this.
Run Umbraco
Run Umbraco and navigate to your Umbraco instance (e.g. https://localhost:43111/sse) to vertify the Model Context Protocol Server has been started.
⚠️ NOTE
This version of the package exposes an unproteced public-facing HTTP endpoint. It is intended for local development and testing purposes only.
Setup a basic document type structure or use a starter package
Create either set up a basic Document Type structure or use a starter package.
I've been using the Clean starterkit by Paul Seal while testing.
After that create and publish some content via the Umbraco back-office. This will create some reference files that the LLM will use later on learn about details of your Umbraco instance and configuration.
Connect your favorite LLM
ChatGPT for Desktop will support MCP soonish, according to the annoucment by Sam Altman. For now, you can use the most popular Claude Desktop, Cursor & Windsurf to connect.
Configure by using the following config format:
{
"mcpServers": {
"MyUmbracoWebsite": {
"command": "npx",
"args": [
"mcp-remote",
"https://{HOSTNAME}/sse"
],
"env": {
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
},
}
}
}
You don't need the NODE_TLS_REJECT_UNAUTHORIZED if you allow self signed certificates by default.
More info about how to configure MCP Servers per client:
Read more about connecting to an MCP Server from a local client here.
Prompt away!
Chat from you favorite client and use prompts like:
- Create an article from this Word document and publish it.
- Create an article with title "I'm testing the Model Context Protocol" and Publish it directly.
- Are there any typos in my articles on my Umbraco website?
- How many articles does my Umbrao site contain?
- Make up 3 articles about soccer and publish them.
Known limitations
- Only a part of the Umbraco functionality (such as creating and publishing pages) is available in the MCP server.
- This package relies on the official C# SDK that is still in preview mode.
Possible improvements
There are heaps 😃
- Generate InputSchema dynamically to reflect actual document type structure.
- Optimze tools to have smaller input and results sets to avoid token usage limits of LLMs.
What I dream of...
It is easy to think about future possibilities and extentions:
- Chain this with other AI agents, such a Figma so the LLM can update the website design by updating template HTML & CSS.
- Automatically create a document type structure based on design analysis.
- Create campagnes with advanced publication schemes.
- Let Umbraco function as an AI agent with workflow autocation tools such as n8n and Azure AI Foundry.
About MCP
The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). It enables secure integration between LLMs and various data sources and tools.
For more information about MCP:
Acknowledgements
The author of of the official C# SDK have been helpfull while making this package.
License
This project is licensed under the MIT License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net9.0
- ModelContextProtocol (>= 0.1.0-preview.8)
- Umbraco.Cms.Api.Common (>= 15.3.1)
- Umbraco.Cms.Api.Management (>= 15.3.1)
- Umbraco.Cms.Web.Common (>= 15.3.1)
- Umbraco.Cms.Web.Website (>= 15.3.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.1.5 | 139 | 4/18/2025 |
0.1.4-alpha | 120 | 4/18/2025 |
0.1.3-alpha | 142 | 4/17/2025 |
0.1.2-alpha | 141 | 4/15/2025 |
0.1.1-alpha | 135 | 4/15/2025 |
0.1.0-alpha | 189 | 4/15/2025 |