ara-rgaa-mcp
Enables to manage RGAA accessibility audits on the Ara platform via MCP-compatible clients like Claude Code or Codex, supporting full CRUD operations and audit lifecycle without manual login.
README
Ara MCP Server — Audits RGAA via IA
Serveur MCP (Model Context Protocol) qui expose les opérations CRUD sur les audits d'accessibilité RGAA de la plateforme Ara. Permet de piloter un audit Ara entièrement depuis Claude Code, Codex ou tout client MCP compatible — sans login manuel dans le navigateur.
Cartographie des routes Ara
Audits (/audits)
| Méthode | Route | Outil MCP | Description |
|---|---|---|---|
POST |
/audits |
create_audit |
Créer un nouvel audit |
GET |
/audits/:uniqueId |
get_audit |
Récupérer un audit complet |
PUT |
/audits/:uniqueId |
update_audit |
Mise à jour complète d'un audit |
PATCH |
/audits/:uniqueId |
patch_audit_notes |
Mettre à jour les notes uniquement |
DELETE |
/audits/:uniqueId |
delete_audit |
Supprimer un audit (soft delete) |
POST |
/audits/:uniqueId/duplicate |
duplicate_audit |
Dupliquer un audit |
PUT |
/audits/:uniqueId/publish |
publish_audit |
Publier un audit terminé |
GET |
/audits/:uniqueId/results |
get_audit_results |
Récupérer tous les résultats de critères |
PATCH |
/audits/:uniqueId/results |
update_audit_results |
Mettre à jour les résultats de critères (batch) |
GET |
/audits/:uniqueId/pages/:slug |
get_page_results |
Résultats par page |
GET |
/audits/:uniqueId/exports/csv |
export_csv |
Export CSV des résultats |
PUT |
/audits/:editUniqueId/statement |
update_statement |
Mettre à jour la déclaration d'accessibilité |
Rapports (/reports) — lecture seule
| Méthode | Route | Outil MCP | Description |
|---|---|---|---|
GET |
/reports/:consultUniqueId |
get_report |
Rapport complet avec taux de conformité |
Authentification (/auth)
| Méthode | Route | Outil MCP | Description |
|---|---|---|---|
POST |
/auth/signin |
auth_signin |
Authentification par email/mot de passe |
Routes non exposées (hors périmètre MCP)
| Route | Raison |
|---|---|
POST /audits/:id/results/examples |
Upload d'image (deprecated) |
POST /audits/:id/notes/files |
Upload de fichier |
POST /audits/editor/images |
Upload d'image éditeur |
DELETE /audits/:id/results/examples/:id |
Suppression image |
DELETE /audits/:id/notes/files/:id |
Suppression fichier |
GET /audits |
Liste d'audits (nécessite auth account) |
POST /auth/signup |
Création de compte |
POST /auth/verify |
Vérification de compte |
PATCH /profile |
Profil utilisateur |
POST /feedback |
Retour utilisateur |
Installation
git clone https://github.com/DavidPivert/ara-rgaa-mcp.git
cd ara-rgaa-mcp
npm install
npm run build
Prérequis : Node.js ≥ 18 et un compte sur ara.numerique.gouv.fr.
Configuration
Variables d'environnement
| Variable | Défaut | Description |
|---|---|---|
ARA_BASE_URL |
https://ara.numerique.gouv.fr/api |
URL de base de l'API Ara |
ARA_AUTH_TOKEN |
— | Token JWT pré-configuré (évite le login) |
ARA_USERNAME |
— | Email pour auto-login au démarrage |
ARA_PASSWORD |
— | Mot de passe pour auto-login au démarrage |
Config Claude Code (recommandé)
Ajouter dans ~/.claude/claude_desktop_config.json :
{
"mcpServers": {
"ara-rgaa": {
"command": "bash",
"args": ["/absolute/path/to/ara-rgaa-mcp/run.sh"],
"env": {
"ARA_BASE_URL": "https://ara.numerique.gouv.fr/api",
"ARA_USERNAME": "votre-email@example.com",
"ARA_PASSWORD": "votre-mot-de-passe"
}
}
}
}
Important : Le script
run.shfait uncddans le dossier du projet avant de lancer Node, ce qui garantit la résolution correcte desnode_modules. Ne pas appelernode build/index.jsdirectement depuis un autre répertoire.
Config alternative (mode dev avec npx tsx)
{
"mcpServers": {
"ara-rgaa": {
"command": "npx",
"args": ["--prefix", "/absolute/path/to/ara-rgaa-mcp", "tsx", "src/index.ts"],
"env": {
"ARA_BASE_URL": "https://ara.numerique.gouv.fr/api",
"ARA_AUTH_TOKEN": "votre-jwt-token"
}
}
}
}
Config Codex / Cursor
Même format — ajuster dans les réglages MCP de l'outil.
Workflow typique
1. auth_signin(username, password) # Ou auto-login via env vars
2. create_audit(FULL, "MonSite", pages...) # Créer l'audit
3. get_audit(editUniqueId) # Vérifier les pages et IDs
4. update_audit_results(editUniqueId, [...]) # Remplir les critères RGAA
5. get_audit_results(editUniqueId) # Vérifier les résultats
6. update_statement(editUniqueId, ...) # Remplir la déclaration
7. publish_audit(editUniqueId) # Publier l'audit terminé
8. get_report(consultUniqueId) # Consulter le rapport final
Enums RGAA
Types d'audit
FULL— 106 critères (audit complet)FAST— 25 critères (audit rapide)COMPLEMENTARY— 50 critères (audit complémentaire)
Statuts de critère
COMPLIANT— ConformeNOT_COMPLIANT— Non conformeNOT_APPLICABLE— Non applicableNOT_TESTED— Non testé
Impact utilisateur
MINOR— MineurMAJOR— MajeurBLOCKING— Bloquant
Thématiques RGAA (topics 1-13)
- Images
- Cadres
- Couleurs
- Multimédia
- Tableaux
- Liens
- Scripts
- Éléments obligatoires
- Structuration de l'information
- Présentation de l'information
- Formulaires
- Navigation
- Consultation
Licence
Même licence que le projet Ara (EUPL).
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.