dokos expose ses capacités aux agents IA de deux façons : un serveur MCP (Model Context Protocol) et une compétence (skill) prête pour le prompt. Une seule commande, dokos agent install, câble le tout dans vos runtimes.
dokos agent install fait trois choses pour chaque runtime détecté : il enregistre le serveur MCP dokos, auto-approuve les outils en lecture seule, et installe la compétence dokos-erp dans la bibliothèque centrale ~/.agents/skills (partagée par tous les runtimes).
dokos agent install --print # prévisualiser, sans rien écrire
dokos agent install # installer dans tous les runtimes détectés
dokos agent install --runtime claude,vibe # un sous-ensemble : claude,vibe,opencode,agy
L'opération est idempotente : relancer ne change rien. Les lectures s'exécutent sans confirmation ; les écritures restent soumises à validation.
~/.agents/skills, puis partagée à chaque runtime par lien symbolique. Seuls l'enregistrement MCP et la liste d'auto-approbation diffèrent d'un runtime à l'autre. agy importe sa configuration depuis Claude : appliquez donc la cible Claude en premier.Si vous n'utilisez pas l'installateur, enregistrez le serveur à la main. Il s'exécute en stdio — l'agent le lance comme sous-processus.
dokos mcp --print-config # affiche l'extrait d'enregistrement, puis quitte
dokos mcp # lance le serveur MCP en stdio
{
"mcpServers": {
"dokos": { "command": "dokos", "args": ["mcp"] }
}
}
Pour Claude Code, cet extrait va dans .mcp.json ; OpenCode et Vibe utilisent leur propre configuration MCP.
Chaque outil est une fine enveloppe autour des mêmes fonctions que les commandes du terminal. Les résultats sont des dictionnaires compacts pour limiter l'empreinte en jetons ; les erreurs sont renvoyées sous la forme {"error": "..."}.
Données Frappe/Dokos (REST) :
| Outil | Rôle |
|---|---|
meta_get(doctype) | Schéma compact d'un DocType |
perms_get(doctype) | Règles de permissions d'un DocType |
doc_get(doctype, name) | Lire un document complet |
doc_list(doctype, filters?, fields?, limit=20) | Lister des documents |
run_report(report_name, filters?) | Exécuter un Query Report |
doc_create(doc) | Créer un document — écriture |
doc_update(doctype, name, fields) | Mettre à jour un document — écriture |
report_create(report_name, query, ref_doctype) | Créer un Query Report depuis du SQL — écriture |
Sites (registre multi-sites) :
| Outil | Rôle |
|---|---|
site_list() | Lister les sites configurés |
site_current() | Afficher le site actif |
site_use(name) | Changer de site actif |
site_add(name, url, api_key, api_secret, make_active=True) | Enregistrer un site — écrit des identifiants |
dokos agent install n'auto-approuve que les outils en lecture seule : doc_get, doc_list, run_report, meta_get, perms_get, site_list, site_current. Les outils d'écriture restent soumis à confirmation dans les réglages de permissions de l'agent.Pour les agents qui préfèrent une « compétence » injectée dans le prompt plutôt que des outils MCP :
dokos skill # affiche skills/SKILL.md
SKILL.md résume les commandes de la CLI et ses modes de sortie.
--json (terminal) ou les outils MCP pour enchaîner les appels — la charge --json inclut un tableau next de commandes de suivi suggérées.dokos sync une fois pour que l'agent puisse lire ~/.config/dokos/doctypes.md et reports.md et découvrir les noms exacts (sensibles à la casse).meta get avant d'écrire, pour connaître les champs obligatoires et les options des champs Link / Select.