Aurabase Logo
aurabasedocs
docsRéférenceServeur MCP

Serveur MCP

Pilotez votre backend Aurabase depuis Claude Desktop, Cursor, Windsurf, VS Code ou tout client compatible Model Context Protocol — 65 outils, aucune valeur fabriquée.

6 min de lecture·Niveau référence·Révisé le 10 août 2026
#
Installation

npx, aucune installation globale

terminal
BASH
npx @aurabase/mcp-server \
--url http://localhost:8080 \
--project-id <uuid> \
--service-role-key aura_sk_…
Claude Desktop / Cursor / Windsurf — claude_desktop_config.json ou équivalent :
claude_desktop_config.json
JSON
{
"mcpServers": {
"aurabase": {
"command": "npx",
"args": ["-y", "@aurabase/mcp-server"],
"env": {
"AURABASE_URL": "http://localhost:8080",
"AURABASE_PROJECT_ID": "<uuid>",
"AURABASE_SERVICE_ROLE_KEY": "aura_sk_…"
}
}
}
}
#
Principe

Un outil retourne la réponse du backend, ou une erreur

Jamais une valeur fabriquée. Cette règle n'est pas une intention : elle est vérifiée à chaque exécution de la CI par un banc qui lance le serveur contre une URL morte et échoue si le moindre outil répond en succès. Chaque outil déclare de surcroît un schéma de sortie que le SDK valide avant d'émettre la réponse.

Astuce
Le mode lecture seule (--read-only) retire les outils mutants du catalogue et demande à PostgreSQL d'exécuter le SQL dans une transaction en lecture seule — la garantie vient du moteur, pas seulement du filtrage côté client.
#
Options

Flags et variables d'environnement

--urlAURABASE_URLURL de l'instance Aurabase
--project-idAURABASE_PROJECT_IDIdentifiant du projet
--service-role-keyAURABASE_SERVICE_ROLE_KEYClé d'administration
--read-onlyAURABASE_READ_ONLYN'expose que les outils de lecture (24 sur 65)
--allowed-toolsAURABASE_ALLOWED_TOOLSListe blanche, séparée par des virgules
--transportstdio (défaut) ou http
--auth-tokenAURABASE_MCP_AUTH_TOKENJeton exigé sur /mcp — obligatoire en mode http
#
65 outils

Répartis par domaine

62 exposés avec une simple clé de projet, 3 réservés au plan de gestion (clés API — mieux vaut aucun outil qu'un outil qui échoue systématiquement sans ce canal).

Base de données (19)list_tables, execute_sql, query_table, call_rpc, create_sql_function, create_sql_trigger…
Storage (9)list_buckets, create_bucket, upload_file, create_signed_url…
Auth (7)list_users, create_user, ban_user, generate_link…
Edge Functions (6)invoke_function, deploy_function, set_function_env…
RLS (6)list_rls_policies, create_rls_policy, toggle_rls, get_security_advisors…
IA (5)index_document, rag_query, vector_search, ai_completion…
Notifications (4)send_email, send_sms, send_push_notification…
Projet (4)project_info, list_all_projects, switch_project…
Clés API (3)create_api_key, list_api_keys, revoke_api_key (canal management)
Observabilité (1)get_project_metrics
Realtime (1)list_realtime_channels
Les outils *_sql_function / *_sql_trigger créent de vraies fonctions et triggers PostgreSQL stockés dans le schéma du projet — sans rapport avec list_functions / deploy_function (Edge Functions WASM, un runtime séparé).
#
Transport

stdio par défaut, HTTP pour un usage distant

stdio reste le mode recommandé — la spec MCP le préconise et c'est celui qu'utilisent les clients locaux. Le mode http :

  • écoute sur 127.0.0.1 par défaut ;
  • exige un jeton (--auth-token) — sans lui, le serveur refuse de démarrer ;
  • valide l'en-tête Origin et répond 403 à une origine non autorisée ;
  • une instance de serveur par session, avec expiration et plafond configurable.
Dernière mise à jour · 10 août 2026