← Alle artikelen
3 okt 2026 3 min lezen MCP AI Umbraco .NET

How UForum-MCP works: giving AI assistants access to the Umbraco forum

Een kijk op de tools, de Discourse-endpoints erachter, en een kleine C# MCP-server die je zelf kunt bouwen.

BT
Bishal Tim · Umbraco MVP, AI- & .NET-architect

AI-assistenten zijn goed in code schrijven, maar ze gokken vaak als je een Umbraco-vraag stelt. Ze kunnen het communityforum niet zien, en het antwoord dat je nodig hebt staat meestal in een thread die iemand al heeft opgelost. UForum-MCP is een kleine server die ik daarvoor heb gebouwd. Een AI-assistent kan daarmee het Umbraco-forum, de officiële docs en GitHub direct doorzoeken.

Dit artikel legt uit hoe het werkt, en laat zien hoe weinig code een eenvoudige MCP-server nodig heeft.

Wat is MCP?

Het Model Context Protocol (MCP) is een standaardmanier waarop een AI-assistent externe tools gebruikt. Je draait een MCP-server, koppelt die aan een assistent zoals Cursor, en de assistent kan de tools van de server aanroepen in plaats van alleen te leunen op wat hij onthouden heeft.

Wat UForum-MCP kan

De server is een .NET 10 NuGet-pakket. Hij biedt deze tools:

  • Doorzoek het forum naar relevante posts en topics, met directe links naar de discussies.
  • Haal de nieuwste topics op, om te zien waar de community het nu over heeft.
  • Toon de categorieën, zodat een zoekopdracht op het juiste deel van het forum gericht kan worden.
  • Zoek overal tegelijk. Eén aanroep doorzoekt het forum, de officiële documentatie en GitHub samen, en kan je Umbraco-versie meenemen.
  • Haal codefragmenten eruit, met de oplossingscode apart van andere voorbeelden.
  • Stel een forumpost op als er geen oplossing is, als een nette post inclusief je Umbraco-versie.

Hoe het met het forum praat

Het Umbraco-forum draait op Discourse, dat zijn data als JSON aanbiedt. De server roept een paar eenvoudige endpoints aan:

  • search.json?q=... om te zoeken
  • t/{topicId}.json om één topic te lezen
  • latest.json voor recente activiteit
  • categories.json voor de lijst met categorieën

Dat is het grootste deel van de magie. De server maakt van een verzoek van de assistent een van die aanroepen, en ruimt het resultaat op zodat de assistent het kan lezen.

Een kleine MCP-server in C#

Dit is een vereenvoudigde schets, niet de echte code van het pakket, van een server met één tool. Hij gebruikt de officiële MCP C# SDK.

using System.ComponentModel;
using ModelContextProtocol.Server;

[McpServerToolType]
public static class ForumTools
{
    [McpServerTool, Description("Search the Umbraco community forum.")]
    public static async Task<string> SearchForum(
        HttpClient http,
        [Description("What to search for")] string query)
    {
        var url = $"https://forum.umbraco.com/search.json?q={Uri.EscapeDataString(query)}";
        return await http.GetStringAsync(url);
    }
}

En de startup-code die hem host:

var builder = Host.CreateApplicationBuilder(args);

builder.Services.AddHttpClient();
builder.Services
    .AddMcpServer()
    .WithStdioServerTransport()
    .WithToolsFromAssembly();

await builder.Build().RunAsync();

De beschrijvingstekst doet meer dan het lijkt. De assistent leest hem om te beslissen wanneer je tool gebruikt wordt, dus schrijf hem duidelijk.

Tips als je er zelf een bouwt

  1. Begin met één tool en krijg die werkend in je assistent voordat je er meer toevoegt.
  2. Geef schone resultaten terug. Ruwe JSON werkt, maar kortere, nettere tekst gebruikt minder tokens en geeft betere antwoorden.
  3. Vraag om de versie. Umbraco verandert veel tussen versies, dus een tool die de versie als input neemt vindt betere antwoorden.
  4. Laat hem "niet gevonden" zeggen. Een goede forumpost opstellen als er niets gevonden is, is nuttiger dan een verzonnen antwoord.

Probeer het

UForum-MCP staat op NuGet en heeft de .NET 10 SDK of nieuwer nodig. Je vindt het op de NuGet-pagina.

BT
Bishal Tim

Umbraco MVP uit Kathmandu. Ik schrijf over Umbraco, AI en .NET, en help mensen op weg.

Meer op Skrift Neem contact op