Aller au contenu
duxt

/mcp

Un serveur MCP sur le même contenu.

Un point de terminaison Model Context Protocol, pour qu’un agent puisse interroger la documentation au lieu de la scraper.

Outils

OutilCe qu’il fait
list_versionsChaque version, avec le préfixe qui la délimite
list_pagesLa table des matières, bornée et délimitée
search_docsTrouver une page par terme, avec un extrait
read_pageUne page en Markdown, avec le frontmatter de duxt

La portée est un préfixe d’URL

list_versions renvoie le préfixe sous lequel chaque version est servie — /app, /app/v1, /de/app — et cette chaîne constitue toute la portée qu’acceptent list_pages et search_docs. Elle porte aussi le libellé de la version, son statut de cycle de vie, les langues dans lesquelles elle est publiée et si elle est celle par défaut : un agent choisit donc une édition avant d’y chercher.

Omettre le préfixe couvre toutes les versions, dans la langue par défaut du site. Une version imbriquée sous une autre — /app/v1 sous le /app courant — n’est jamais dans la portée de sa parente.

Réponses bornées

Les deux listes acceptent limit (20 par défaut, 100 au maximum) et un cursor. Les résultats sont triés par chemin, et une ligne nextCursor indique où reprendre ; une liste sans elle est complète. Le curseur est le dernier chemin renvoyé, il reste donc stable si la documentation change entre deux appels.

Ce que renvoie read_page

Le frontmatter YAML propre à duxt — chemin, préfixe, libellé et ref de la version, langue et statut de cycle de vie — au-dessus du Markdown tel qu’écrit, son frontmatter d’origine retiré. Jamais le HTML rendu, jamais l’arbre d’analyse de Content.

Remarques

Les mêmes collections que les pages, si bien que les réponses ne peuvent pas diverger de ce qui est publié. Le nom du serveur, sa description et ses instructions viennent des options du module.

Le serveur réutilise un index de chemins par collection de production. Une liste lit les métadonnées demandées et une ligne de continuation. La recherche lit les corps par blocs de 64 pages maximum et s’arrête lorsque la réponse est complète. Unicode et la priorité des traductions restent identiques. Sans résultat, tout le périmètre est parcouru sans conserver tous les corps en mémoire.

Cette page vous a-t-elle été utile ?