Outils d’IA

Sur cette page

EmDash dispose d’un serveur Model Context Protocol (MCP) intégré qui permet aux assistants IA de travailler directement avec le contenu de votre site. Vous pouvez demander à Claude, ChatGPT ou d’autres outils de rédiger des articles, mettre à jour des pages, gérer les médias, rechercher dans votre contenu, et plus — le tout par conversation naturelle.

Le serveur MCP de votre site

Le serveur MCP est activé par défaut. EmDash monte /_emdash/api/mcp sauf si vous le désactivez. L’endpoint accepte OAuth ou des jetons bearer d’accès personnel ; une session navigateur d’administration seule n’authentifie pas une requête MCP. OAuth permet à la personne qui connecte le client de choisir les scopes avant qu’EmDash n’émette le jeton.

Pour le désactiver, définissez mcp: false dans votre configuration Astro :

emdash({
	mcp: false,
});

Connecter un client IA

L’URL du serveur MCP de votre site est :

https://example.com/_emdash/api/mcp

Remplacez example.com par votre domaine. Pour le développement local, utilisez http://localhost:4321/_emdash/api/mcp.

Claude

Ajoutez l’URL comme connecteur personnalisé distant. Claude ouvre le flux OAuth EmDash pour que vous puissiez vous connecter et choisir les permissions. Anthropic modifie les écrans du connecteur indépendamment d’EmDash, suivez donc ses instructions actuelles de connecteurs personnalisés pour les contrôles exacts et les exigences du plan.

ChatGPT

Le mode développeur ChatGPT peut connecter un serveur MCP distant et prend en charge les outils authentifiés par OAuth. L’éligibilité et les écrans de paramètres peuvent changer, suivez donc le guide officiel du mode développeur ChatGPT et utilisez l’URL MCP de votre site lors de la création de l’app. Examinez chaque appel d’écriture avant de l’approuver.

Codex

Ajoutez le serveur distant depuis la CLI Codex, puis démarrez sa connexion OAuth :

codex mcp add emdash-site --url https://example.com/_emdash/api/mcp
codex mcp login emdash-site

L’app de bureau ChatGPT, la CLI Codex et l’extension IDE partagent la configuration MCP pour le même hôte Codex. Voir la documentation officielle Codex MCP pour les fichiers de configuration, OAuth et les transports pris en charge.

Travailler avec le contenu du site

Une fois connecté, vous pouvez demander à l’assistant IA d’effectuer n’importe laquelle de ces opérations en langage naturel. Vous n’avez pas besoin de connaître les noms des outils — décrivez simplement ce que vous voulez.

Content

  • Parcourir le contenu — “Show me the latest 10 blog posts” ou “Find all draft pages”
  • Lire le contenu — “Get the post called ‘hello-world’ and summarize it”
  • Créer du contenu — “Write a new blog post about our summer sale” ou “Create a draft page for the About section”
  • Modifier le contenu — “Update the pricing page to mention the new plan” ou “Fix the typo in the FAQ post”
  • Publier et planifier — “Publish the summer sale post”, “Schedule the announcement for June 1st at 9am” ou “Cancel the schedule on the launch post”
  • Comparer les versions — “Show me what changed in the homepage since it was last published”
  • Gérer les brouillons — “Discard the draft changes on the about page” ou “Duplicate the newsletter template”
  • Traductions — “What translations exist for the welcome post?” ou “Create a French draft linked to this English post” (lorsque i18n est activé)

Bylines

  • Parcourir les bylines — “List the guest contributors whose names contain ‘Lee’”
  • Crédit du contenu — “Add Priya Shah as the primary byline on this post”
  • Gérer les bylines — “Create a guest byline for Sam Rivera” ou “Update this contributor’s bio”
  • Traduire les bylines — “Show the locale variants of this byline”

Créer, mettre à jour, supprimer et traduire des bylines exige le rôle Editor. Les outils d’écriture de contenu acceptent les ID de byline existants lorsque l’appelant a la permission de créer ou modifier ce contenu.

Media

  • Parcourir les médias — “List all uploaded images” ou “Show me PDFs in the media library”
  • Vérifier les détails — “Get the details for this media item”
  • Téléverser des fichiers — “Upload this base64 image as banner.png”
  • Confirmer les téléversements signés — “Confirm the upload with this storage key”
  • Mettre à jour les métadonnées — “Set the alt text on the hero image to ‘Mountain sunset’”
  • Supprimer des fichiers — “Delete the old banner image”

media_upload accepte des octets encodés en base64, stocke le fichier, enregistre l’élément média et renvoie l’ID et l’URL. Il applique les limites de type MIME et de taille de téléversement du site.

media_create termine un téléversement en attente créé via POST /_emdash/api/media/upload-url. Téléversez le fichier avec l’URL signée renvoyée, puis passez son storageKey à media_create depuis le même compte utilisateur. La confirmation vérifie que le fichier stocké existe et correspond à la taille fournie lors de la demande de l’URL de téléversement. Ce flux exige Author ou un rôle supérieur ; les Contributors peuvent utiliser media_upload.

  • Trouver du contenu — “Search for posts mentioning ‘accessibility’” ou “Find anything about TypeScript across all collections”

Taxonomies

  • Parcourir — “List all categories” ou “Show me the tags”
  • Créer des termes — “Add a ‘tutorials’ tag” ou “Create a ‘Frontend’ subcategory under ‘Engineering’”
  • Renommer des termes — “Rename the ‘frontend’ category to ‘Web Frontend’”
  • Déplacer des termes — “Move the ‘tutorials’ tag under the ‘guides’ category” ou “Detach ‘react’ from its parent”
  • Supprimer des termes — “Delete the unused ‘archive’ tag”
  • Voir les menus — “Show me the main navigation menu” ou “What’s in the footer menu?”
  • Créer des menus — “Create a new ‘sidebar’ menu”
  • Modifier des menus — “Rename the ‘main’ menu to ‘Primary navigation’”
  • Définir les éléments — “Replace the items in the main menu with Home, Blog, About, and Contact”
  • Supprimer des menus — “Delete the unused ‘mobile’ menu”

Site settings

  • Inspecter — “What’s the current site title?” ou “Show me the social links”
  • Mettre à jour l’identité — “Set the site title to ‘Acme Blog’ and tagline to ‘Stories from the team’”
  • Définir logo / favicon — “Use this image as the site logo” (après l’avoir téléversée avec media_upload)
  • Valeurs SEO par défaut — “Set the default OG image to the new banner” ou “Update the title separator to a vertical bar”
  • Identifiants sociaux — “Add our GitHub and YouTube links to the social settings”

Schema (Admin uniquement)

  • Inspecter — “What collections exist?” ou “Show me the fields on the posts collection”
  • Créer des collections — “Create a new ‘testimonials’ collection with name and quote fields”
  • Modifier le schéma — “Add a ‘featured’ boolean field to posts”

Revisions

  • Voir l’historique — “Show the revision history for this post”
  • Restaurer — “Restore the post to its previous version”

Permissions

Lorsqu’un client MCP ouvre la page de consentement OAuth, chaque permission qu’il a demandée est sélectionnée par défaut. Décochez toute permission dont le client n’a pas besoin avant d’approuver l’accès. Le jeton résultant est limité aux permissions que vous laissez sélectionnées et à celles autorisées par votre rôle EmDash, de sorte qu’accorder moins de permissions n’augmente jamais ce que le client peut faire.

RôleCe que l’IA peut faire
AdminTout, y compris les changements de schéma et la mise à jour des paramètres du site
EditorGérer tout le contenu, les médias, bylines, taxonomies et menus. Voir le schéma et lire les paramètres.
AuthorCréer du contenu ; modifier et publier le contenu possédé ; téléverser des médias et gérer les médias possédés.
ContributorCréer du contenu brouillon et téléverser des médias, sans publier.

EmDash rejette un appel d’outil lorsque le scope du jeton ou le rôle de l’utilisateur est insuffisant. Un client peut expliquer cette erreur, mais EmDash reste l’autorité qui l’applique.

Conseils

  • Soyez précis sur les collections. Dites « create a blog post » plutôt que « create a post » si vous avez plusieurs collections.
  • Demandez d’abord le schéma. Si vous n’êtes pas sûr des champs d’une collection, demandez « What fields does the posts collection have ? » avant de créer ou modifier du contenu.
  • Examinez avant de publier. Demandez à l’IA de créer le contenu en brouillon, examinez-le dans le panneau d’administration, puis demandez à l’IA de le publier — ou publiez-le vous-même.
  • Utilisez compare pour la revue. Avant de publier, demandez « Compare the live and draft versions of this post » pour voir exactement ce qui changera.
  • Les champs de texte enrichi utilisent Portable Text. L’IA peut écrire du contenu pour les champs de texte enrichi, mais le formatage complexe se fait mieux dans l’éditeur d’administration.

Pour les développeurs

L’endpoint du serveur MCP, les méthodes d’authentification, la découverte OAuth, les paramètres des outils et la gestion des erreurs sont documentés dans la référence du serveur MCP.