Tools-Referenz

Alle verfügbaren MCP-Tools in Neleto

Neleto stellt 35 MCP-Tools in 7 Kategorien bereit. Jeder Tool-Aufruf erfordert einen Authorization: Bearer <token>-Header.

Alle id-Felder für Dateien sind UUIDs (Strings), während IDs für Seiten, Layouts, Komponenten, Beiträge und Events Ganzzahlen sind.

Seiten

Tools zur Verwaltung von CMS-Seiten.

page.list

Alle verfügbaren Seiten im CMS auflisten.

ids
integer[]
Nach bestimmten Seiten-IDs filtern.
limit
integer
Maximale Anzahl an Ergebnissen.
offset
integer
Anzahl der zu überspringenden Ergebnisse (für Paginierung).
language
"en" | "de"
Nach Sprache filtern.

page.get

Eine einzelne Seite mit Layout, Elementen und übersetztem Inhalt laden.

id
integer required
Die Seiten-ID.
lang
"en" | "de"
Sprache für übersetzte Inhalte.

page.create

Eine neue Seite erstellen, inklusive Tags, Meta-Tags und Elementen.

title
string required
Seitentitel.
route
string required
URL-Pfad der Seite. Muss mit / beginnen (z.B. /ueber-uns).
useTailwind
boolean required
Ob Tailwind CSS für diese Seite aktiviert sein soll.
metaTags
object[] required
Array von Meta-Tag-Objekten.
tags
object[] required
Array von Tag-Objekten.
elements
object[] required
Array von Seiten-Elementen.
deletedElements
integer[] required
IDs zu löschender Elemente (bei neuen Seiten leeres Array [] verwenden).
template
string
Eigenes Handlebars-Template für die Seite.
renderMode
"prerendered" | "dynamic"
Render-Modus der Seite.
layoutId
integer | null
Zugewiesenes Layout der Seite.
status
"draft" | "public" | null
Veröffentlichungsstatus.
description
string | null
Seitenbeschreibung für Meta-Tags.
language
"en" | "de" | null
Sprache der Seite.

page.update

Eine bestehende Seite aktualisieren. Gleiche Felder wie page.create, zusätzlich:

id
integer required
Die ID der zu aktualisierenden Seite.

page.delete

Eine Seite soft-löschen.

id
integer required
Die ID der zu löschenden Seite.

page.duplicate

Eine Seite duplizieren mit neuem Pfad und Titel.

id
integer required
Die ID der zu duplizierenden Seite.
title
string required
Titel der neuen Seite.
route
string required
URL-Pfad der neuen Seite. Muss mit / beginnen (z.B. /ueber-uns-kopie).

Layouts

Layouts sind wiederverwendbare Templates, die mehreren Seiten zugewiesen werden können.

layout.list

Alle Seiten-Layouts auflisten.

limit
integer
Maximale Anzahl an Ergebnissen.
offset
integer
Anzahl der zu überspringenden Ergebnisse.
language
"en" | "de"
Nach Sprache filtern.

layout.get

Ein einzelnes Layout mit Elementbaum laden.

id
integer required
Die Layout-ID.
lang
"en" | "de"
Sprache für übersetzte Elementinhalte.

layout.create

Ein wiederverwendbares Layout mit Template, Style, Script und fixen Elementen erstellen.

name
string required
Anzeigename des Layouts.
elements
object[] required
Array von Element-Objekten im Layout.
deletedElements
integer[] required
IDs zu löschender Elemente (bei neuen Layouts [] verwenden).
icon
string | null
Icon-Bezeichner für das Layout.
template
string
Handlebars-Template-String.
script
string
JavaScript für das Layout.
style
string
CSS-Styles für das Layout.
language
"en" | "de" | null
Sprachkontext.

layout.update

Ein bestehendes Layout aktualisieren. Gleiche Felder wie layout.create, zusätzlich:

id
integer required
Die ID des zu aktualisierenden Layouts.

layout.delete

Ein Layout soft-löschen.

id
integer required
Die ID des zu löschenden Layouts.

Komponenten

Komponenten sind wiederverwendbare Bausteine, die Redakteure auf Seiten einfügen können.

component.list

Alle wiederverwendbaren CMS-Komponenten auflisten.

Keine Parameter erforderlich.

component.get

Eine einzelne Komponente anhand der ID laden.

id
integer required
Die Komponenten-ID.

component.search

Komponenten nach Form-Label suchen.

q
string required
Suchbegriff.

component.used_by_elements

Alle Element-Instanzen auflisten, die eine Komponente verwenden.

id
integer required
Die ID der Komponente.

component.create

Eine neue Komponente erstellen.

icon
string required
Icon-Bezeichner für die Komponente.
form
object required
Formulardefinition mit den Properties der Komponente.
style
string required
CSS-Styles der Komponente.
script
string required
JavaScript der Komponente.
template
string required
Handlebars-Template-String der Komponente.
category
"text" | "design" | "layout" | "interactive" | "media" | "misc" required
Kategorie der Komponente.
canHaveChildren
boolean required
Ob Kind-Elemente in diese Komponente verschachtelt werden können.

component.update

Eine bestehende Komponente aktualisieren. Gleiche Felder wie component.create, zusätzlich:

id
integer required
Die ID der zu aktualisierenden Komponente.

component.delete

Eine Komponente und alle verknüpften Element-Instanzen löschen.

id
integer required
Die ID der zu löschenden Komponente.

Blogbeiträge

post.list

Blogbeiträge auflisten.

ids
integer[]
Nach bestimmten Beitrags-IDs filtern.
limit
integer
Maximale Anzahl an Ergebnissen.
offset
integer
Anzahl der zu überspringenden Ergebnisse.

post.get

Einen Blogbeitrag anhand der ID laden.

id
integer required
Die Beitrags-ID.

post.search

Blogbeiträge nach Titel, Beschreibung oder Inhalt suchen.

q
string required
Suchbegriff.

post.create

Einen Blogbeitrag erstellen.

slug
string required
URL-freundlicher Bezeichner des Beitrags.
title
string required
Beitragstitel.
description
string required
Kurzbeschreibung für Übersichtsseiten.
content
string required
Richtext-Inhalt. HTML ist erlaubt.
language
string required
Sprache des Beitrags (z.B. "de" oder "en").
metadata
object required
Metadaten (kann ein leeres Objekt {} sein).
tags
object[] required
Array von Tag-Objekten.
files
object[] required
Array verknüpfter Datei-Objekte.
status
"draft" | "public" | null
Veröffentlichungsstatus.
publishDate
string | null
Veröffentlichungsdatum im ISO 8601 Format.
heroImageId
string | null
UUID des Hero-Bildes.
heroImage
object | null
Hero-Bild-Objekt (Alternative zu heroImageId).

post.update

Einen Blogbeitrag aktualisieren. Gleiche Felder wie post.create, zusätzlich:

id
integer required
Die ID des zu aktualisierenden Beitrags.

post.delete

Einen Blogbeitrag löschen.

id
integer required
Die ID des zu löschenden Beitrags.

Events

event.list

Events auflisten.

ids
integer[]
Nach bestimmten Event-IDs filtern.
limit
integer
Maximale Anzahl an Ergebnissen.
offset
integer
Anzahl der zu überspringenden Ergebnisse.

event.get

Ein Event anhand der ID laden.

id
integer required
Die Event-ID.

event.search

Events nach Titel, Beschreibung oder Inhalt suchen.

q
string required
Suchbegriff.

event.today

Alle Events auflisten, die heute stattfinden.

Keine Parameter erforderlich.

event.upcoming

Bevorstehende Events auflisten.

Keine Parameter erforderlich.

event.create

Ein Event erstellen.

slug
string required
URL-freundlicher Bezeichner des Events.
title
string required
Event-Titel.
description
string required
Kurzbeschreibung des Events.
content
string required
Richtext-Inhalt. HTML ist erlaubt.
status
"draft" | "public" required
Veröffentlichungsstatus.
metadata
object required
Metadaten (kann ein leeres Objekt {} sein).
tags
object[] required
Array von Tag-Objekten.
files
object[] required
Array verknüpfter Datei-Objekte.
publishDate
string | null
Veröffentlichungsdatum im ISO 8601 Format.
start
string | null
Startdatum/-zeit im ISO 8601 Format.
end
string | null
Enddatum/-zeit im ISO 8601 Format.
heroImageId
string | null
UUID des Hero-Bildes.
heroImage
object | null
Hero-Bild-Objekt (Alternative zu heroImageId).

event.update

Ein Event aktualisieren. Gleiche Felder wie event.create, zusätzlich:

id
integer required
Die ID des zu aktualisierenden Events.

event.delete

Ein Event löschen.

id
integer required
Die ID des zu löschenden Events.

Dateien

Datei-IDs sind UUIDs (Strings), keine Ganzzahlen.

file.list

Dateien und Ordner auflisten oder eine einzelne Datei mit Inhalt laden.

path
string | null
Verzeichnispfad auflisten (z.B. "/" für das Stammverzeichnis) oder eine bestimmte Datei per Pfad laden.
mimeType
string[] | null
Nach MIME-Typ filtern (z.B. ["image/jpeg", "image/png"]).
ids
string[] | null
Bestimmte Dateien per UUID laden.

file.get

Eine Datei mit Tags anhand der ID laden.

id
string required
Die Datei-UUID.

file.search

Dateien nach Titel, Beschreibung, Pfad, Status oder MIME-Typ suchen.

q
string | null
Suchbegriff (Titel, Beschreibung oder Pfad).
onlyFiles
boolean | null
Wenn true, werden Ordner aus den Ergebnissen ausgeschlossen.
status
"draft" | "public" | null
Nach Status filtern.
allowedMimeTypes
string[]
Nach erlaubten MIME-Typen filtern.

file.create

Eine Datei, einen Ordner oder einen Remote-Datei-Eintrag erstellen. Lokale Dateien werden leer auf dem Dateisystem angelegt.

type
"folder" | "file" | "remoteFile" required
Art des zu erstellenden Eintrags.
path
string required
Vollständiger Pfad inkl. Dateiname (z.B. /bilder/logo.png).
tags
object[] required
Array von Tag-Objekten.
status
"draft" | "public" | null
Veröffentlichungsstatus.
title
string | null
Anzeigename der Datei.
mimeType
string | null
MIME-Typ der Datei.
description
string | null
Datei-Beschreibung.
metadata
object
Datei-Metadaten.

file.upload

Eine Binärdatei oder ein Bild als base64-kodierten Inhalt hochladen.

path
string required
Vollständiger Zielpfad inkl. Dateiname.
base64Data
string required
Dateiinhalt als Base64-kodierter String.
mimeType
string | null
MIME-Typ (z.B. "image/png"). Wird automatisch erkannt wenn nicht angegeben.
status
"draft" | "public" | null
Veröffentlichungsstatus.
title
string | null
Anzeigename.
description
string | null
Datei-Beschreibung.
metadata
object
Datei-Metadaten.
tags
object[] | null
Array von Tag-Objekten.
handleConflicts
boolean | null
Ob Pfadkonflikte automatisch aufgelöst werden sollen.

file.update

Datei-Metadaten oder den Inhalt einer lokalen Datei aktualisieren.

id
string required
Die Datei-UUID.
fileType
"local" | "remote" required
Ob die Datei lokal oder remote gespeichert ist.
tags
object[] required
Aktualisiertes Array von Tag-Objekten.
type
"folder" | "file" | "remoteFile" | null
Eintragstyp ändern.
path
string | null
Neuer Pfad der Datei.
status
"draft" | "public" | null
Veröffentlichungsstatus.
title
string | null
Anzeigename.
mimeType
string | null
MIME-Typ.
description
string | null
Datei-Beschreibung.
metadata
object
Datei-Metadaten.
content
string | null
Neuer Textinhalt für lokale Dateien.

file.delete

Eine oder mehrere Dateien bzw. Ordner löschen.

ids
string[] required
Array von Datei-UUIDs, die gelöscht werden sollen.

file.move

Dateien in einen anderen Ordnerpfad verschieben oder kopieren.

ids
string[] required
Array von Datei-UUIDs.
path
string required
Zielpfad des Ordners (z.B. "/bilder/archiv").
copy
boolean | null
Wenn true, werden die Dateien kopiert statt verschoben.

file.rename

Eine Datei oder einen Ordner umbenennen (letztes Pfadsegment ändern).

id
string required
Die UUID der umzubenennenden Datei.
name
string required
Neuer Datei-/Ordnername (nur das letzte Segment, nicht der vollständige Pfad).

Einstellungen

settings.get

CMS-Einstellungen mit aufgelösten Seitenreferenzen und Meta-Tags laden.

language
string
Sprachkontext für aufgelöste Seitenreferenzen.

settings.update

CMS-Einstellungen aktualisieren. Alle Felder sind optional - nur angegebene Felder werden geändert.

title
string
Website-Titel.
robots
string
Inhalt der robots.txt.
fallbackPageId
integer | null
Seite für unbekannte Routen (404-Fallback).
blogPostPageId
integer | null
Seite zur Darstellung einzelner Blogbeiträge.
eventPostPageId
integer | null
Seite zur Darstellung von Event-Detailseiten.
faviconId
string | null
UUID der Favicon-Datei.
fileDefaultStatus
"draft" | "public"
Standardstatus für neu hochgeladene Dateien.
postDefaultStatus
"draft" | "public"
Standardstatus für neu erstellte Blogbeiträge.
pageDefaultStatus
"draft" | "public"
Standardstatus für neu erstellte Seiten.
eventDefaultStatus
"draft" | "public"
Standardstatus für neu erstellte Events.
metaTags
object[]
Globale Meta-Tags für alle Seiten.
emailHost
string
SMTP-Host.
emailPort
integer
SMTP-Port.
emailUser
string
SMTP-Benutzername.
emailPassword
string
SMTP-Passwort.
emailFrom
string
Absenderadresse für ausgehende E-Mails.
emailTls
"tls" | "start-tls" | "none"
TLS-Modus für die SMTP-Verbindung.
defaultLanguage
string
Standardsprache der Website.
languages
object[]
Verfügbare Sprachen der Website. Jeder Eintrag benötigt value (z.B. "de") und label (z.B. "Deutsch").
autoDetectBestLanguage
boolean
Besucher automatisch zur bevorzugten Sprache weiterleiten.
maxUploadFileSizeMb
integer
Maximale Dateigröße beim Upload in Megabyte.
tailwindConfig
string
Globale Tailwind CSS Konfiguration.