# Abilities API : la brique de WordPress 6.9 qui prépare le terrain aux agents IA

> WordPress 6.9 introduit l'Abilities API, un registre standard des capacités qu'un site peut exposer. Voici ce que ça change pour les développeurs qui préparent leurs extensions aux agents IA.

- Auteur : Clément Hadrot
- Publié le : 2025-12-11
- Mis à jour le : 2025-12-11
- Catégorie : IA &amp; MCP
- URL : https://wpmoderne.dev.wordpress-developpement.fr/ia-mcp/abilities-api-wp-6-9/

## L’essentiel

- L'Abilities API centralise la déclaration des capacités d'un site
- Elle sert de base commune aux intégrations REST, MCP et futures
- Chaque capacité déclarée reste soumise aux permissions WordPress classiques

WordPress 6.9, publié ce mois de décembre 2025, introduit une nouveauté qui intéresse directement tous les projets construits autour de l'IA : l'Abilities API. Son objectif est de donner à l'écosystème WordPress un vocabulaire commun pour décrire les actions et les données qu'un site peut exposer, au-delà de la seule API REST. Jusqu'ici, chaque projet qui souhaitait rendre une fonctionnalité WordPress accessible à un agent IA devait construire sa propre couche de description, que ce soit pour un serveur MCP, un plugin d'intégration REST personnalisé ou tout autre client automatisé. L'Abilities API propose un registre central, dans le cœur même de WordPress, qui évite cette duplication.

Cet article présente la logique de cette nouvelle API, sa relation avec l'API REST existante et le protocole MCP évoqué dans nos articles précédents, ainsi que ce qu'elle implique concrètement pour les développeurs d'extensions dès aujourd'hui.

## Le principe : un registre central de capacités

Une « ability », dans ce nouveau vocabulaire WordPress, désigne une action ou une donnée qu'une extension déclare explicitement comme accessible à des consommateurs externes — humains via une interface classique, ou agents automatisés via un protocole comme MCP. Chaque ability comprend un identifiant unique, une description destinée à être comprise par un modèle de langage, un schéma d'entrée et de sortie, et une vérification de permission. L'enregistrement se fait via une fonction dédiée, à la manière de `register_post_type()` ou `register_rest_route()` :

```
wp_register_ability( 'mon-extension/creer-brouillon', array(
    'label'               => __( 'Créer un brouillon d’article', 'mon-extension' ),
    'description'         => 'Crée un nouvel article WordPress au statut brouillon à partir d’un titre et d’un contenu fournis.',
    'input_schema'        => array(
        'type'       => 'object',
        'properties' => array(
            'titre'   => array( 'type' => 'string' ),
            'contenu' => array( 'type' => 'string' ),
        ),
        'required'   => array( 'titre', 'contenu' ),
    ),
    'execute_callback'    => 'mon_extension_creer_brouillon',
    'permission_callback' => function () {
        return current_user_can( 'edit_posts' );
    },
) );
```

## Pourquoi ce registre change la donne pour l'IA

Avant l'Abilities API, une même fonctionnalité WordPress pouvait nécessiter jusqu'à trois déclarations distinctes selon les intégrations visées : une route REST classique, un outil MCP enregistré via un adaptateur dédié, et éventuellement une action spécifique pour un plugin d'automatisation tiers. Avec l'Abilities API, une seule déclaration centrale suffit : les différentes couches d'exposition (REST, MCP, ou tout futur protocole) peuvent s'appuyer sur ce registre commun plutôt que de redemander à chaque développeur une déclaration séparée pour chaque canal.

> L'essentiel à retenir : L'Abilities API centralise la déclaration des capacités d'un site ; Elle sert de base commune aux intégrations REST, MCP et futures ; Chaque capacité déclarée reste soumise aux permissions WordPress classiques

Pour les mainteneurs de MCP Adapter for WordPress, évoqué dans un article précédent, cette évolution du cœur simplifie directement le travail d'intégration : la découverte des capacités disponibles peut désormais s'appuyer sur ce registre natif plutôt que sur une inspection ad hoc des routes REST enregistrées par chaque extension.

## Les permissions restent le pilier central

L'Abilities API ne modifie en rien le système de permissions natif de WordPress : chaque ability déclare son propre `permission_callback`, évalué à chaque invocation dans le contexte de l'utilisateur ou du jeton d'authentification courant. Une ability qui permet de publier un article reste soumise à la capacité `publish_posts`, exactement comme le serait l'appel REST ou l'action d'administration classique équivalente. Ce point est capital à mesure que les agents IA capables d'invoquer ces capacités se multiplient : la sécurité continue de reposer sur les mêmes fondations éprouvées, pas sur un système parallèle propre à l'IA.

## Ce que les développeurs peuvent commencer à faire dès maintenant

- Recenser les fonctionnalités de leurs extensions qui pourraient avoir un intérêt à être exposées à un agent IA
- Migrer progressivement les intégrations MCP existantes vers une déclaration via l'Abilities API plutôt qu'un enregistrement propriétaire
- Rédiger des descriptions claires et précises pour chaque capacité, puisque c'est ce texte qui guide la décision du modèle d'invoquer ou non l'action
- Auditer systématiquement les `permission_callback` associés, en particulier sur les capacités qui modifient des données

> Une capacité bien décrite pour un agent IA est une capacité bien décrite pour n'importe quel développeur qui la découvre six mois plus tard.

## En résumé

L'Abilities API, introduite avec WordPress 6.9, pose une fondation commune pour décrire ce qu'un site peut faire et exposer, indépendamment du canal utilisé pour y accéder. Elle ne remplace ni l'API REST ni le protocole MCP, mais leur donne un vocabulaire partagé qui évite la duplication des déclarations. Pour les développeurs, l'enjeu immédiat consiste à comprendre ce nouveau registre et à commencer à y migrer les intégrations déjà construites, en gardant les permissions WordPress classiques comme unique source de vérité sur ce qu'un agent est autorisé à faire.
