Enma Daio
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Enma Daio Where should I save the meeting notes for project Atlas?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Enma Daio — moteur de classement et de conseil de destination (MCP)
Enma Daio apprend l'organisation de vos dossiers, mémorise des règles de classement validées, et propose une destination pour chaque contenu. Il s'expose en serveur MCP stdio (n'importe quel harnais compatible MCP : Claude Code, Codex, OpenCode, Cursor…) et en interface web locale.
Mode conseil : Enma propose, le harnais exécute l'écriture. Enma ne crée ni n'écrit aucun fichier de contenu. Ce n'est pas un garde-fou de sécurité : un harnais disposant d'un shell peut écrire sans passer par Enma.
Fonctionnalités
Scan + index (
Mister Popo) : parcourt l'arborescence, indexe les chemins (borné : 120 000 entrées, profondeur 8, 16 Mio/fichier, budget 600 s).Apprentissage : déduit des règles candidates depuis l'index (dossier à forte concentration d'un type → destination proposée), seuil 50 fichiers, types binaires et dossiers massifs exclus.
Résolution : chaîne de priorité
instruction ponctuelle > règle projet > gabarit > héritage, avec consultation de l'index en secours.Serveur MCP stdio : 4 outils (
resoudre_destination,memoriser_regle,lister_regles,proposer_regle).Interface web locale (
enma web) : état, arborescence repliable, règles proposées (tuile compacte), dossiers scannés (ajout/retrait), planification.Planificateur (
Karin) : scan périodique en fond (LaunchAgentcom.enmadaio.karin), fréquence réglable.
Related MCP server: llm-file-operations-agent
Installation
Aucune dépendance obligatoire (bibliothèque standard Python uniquement). Python ≥ 3.10 requis.
pip install git+https://github.com/Edsorel75019/enma-daio # ou : pip install .
enma install-opencode # pièces OpenCode (plugins, tool, permissions)Deux points d'entrée : enma (CLI) et enma-serve (serveur MCP).
enma uninstall-opencode restaure l'état antérieur.
Configuration
Fichier enma-catalogue.json (chemin via ENMA_CATALOGUE) :
{
"racines": ["/Volumes/ULYSSE/Atelier"],
"zones_interdites": ["/Volumes/ULYSSE/Atelier/secrets"],
"zones_confirmation": ["…/commun/decisions", "…/commun/etat"],
"exclusions_noms": ["node_modules", "__pycache__", ".git", ".venv", "caches", ".local", "cache"]
}racines : dossiers à observer. zones_interdites : jamais lues/scannées/ cibles. zones_confirmation : proposées avec confirmation. exclusions_noms : dossiers techniques ignorés partout.
Variables d'environnement : ENMA_CATALOGUE, ENMA_STORE (règles),
ENMA_INDEX (index), ENMA_REJETS (candidats rejetés).
Branchement MCP
Exemple OpenCode (opencode.json, section mcp) :
{
"mcp": {
"enma": {
"type": "local",
"command": ["/Users/sorel/Library/Python/3.14/bin/enma-serve"],
"environment": {
"ENMA_CATALOGUE": "…/Enma_Daio/enma-catalogue.json",
"ENMA_STORE": "…/Enma_Daio/enma-regles.json",
"ENMA_INDEX": "…/Enma_Daio/enma-scan-index.json"
},
"enabled": true
}
}
}Claude Code (mcpServers) et Codex ([mcp_servers.enma]) déclarent le même
serveur stdio.
Convention de vocabulaire (inscrite dans Atelier/AGENTS.md)
« solliciter Enma Daio », « demander à Enma Daio », « réveiller Enma Daio »,
« solliciter le portier » = appeler l'outil MCP resoudre_destination.
Utilisation en ligne de commande
enma scan # observer les racines (Mister Popo)
enma web # interface web locale (Enma Daio)
enma resoudre --projet atlas --type-contenu compte-rendu
enma memoriser --projet atlas --type-contenu compte-rendu --destination projets/atlas/rapports/
enma listerInterface web
enma web ouvre http://127.0.0.1:PORT. Le serveur n'écoute que 127.0.0.1,
avec un jeton local (mutations refusées sans lui). Sections : présentation
(Enma Daio, Mister Popo, Karin), mode d'emploi, état, dossiers scannés
(ajout via panneau natif, retrait), règles proposées (tuile compacte + filtre +
pagination), arborescence repliable, règles mémorisées.
Tests
python3 tests/run.py # 42 tests, stdlib uniquementLimites
Mode conseil, pas de confinement OS.
Ne connaît pas le contenu des fichiers (seulement l'arborescence et les règles).
Pas de publication GitHub (décision Sorel : test local d'abord).
Documentation
MODE-EMPLOI.md — usage quotidien.
NOTICE-FONCTIONNEMENT.md — architecture et protocole.
PASSATION.md — état complet et reprise du projet.
ENMA-DAIO-TECHNIQUE.md — fiche technique façon GitHub.
Licence
MIT.
Available Tools
4 toolslister_reglesA
Liste les règles de classement mémorisées.
Inputs: projet, type_contenu.
memoriser_regleC
Mémorise ou modifie une règle de classement (projet/gabarit). Une exception fichier n'est jamais persistée.
Inputs: projet (required), destination (required), type_contenu (required), portee, +5 more.
proposer_regleC
Propose une règle candidate à faire valider, à partir d'une destination observée.
Inputs: destination (required), contexte, sessionID.
resoudre_destinationC
Propose une destination pour un contenu (mode conseil : Enma propose, le harnais écrit).
Inputs: projet, fichier, reponse, sessionID, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool serves a distinct function: resolving a destination, memorizing/modifying rules, listing rules, and proposing new rules based on observations. There is no overlap or ambiguity between them.
All tool names follow a consistent pattern of infinitive verb + underscore + noun in French (e.g., resoudre_destination, memoriser_regle). The style is uniform and predictable.
With 4 tools, the set is well-scoped for a rule-based classification system. Each tool addresses a core need (resolution, rule management, listing, and suggestion) without unnecessary bloat.
The main workflows are covered (resolve, create/update, list, propose), but there is no delete operation for rules. This is a notable gap that could hinder rule maintenance, though agents might work around it by modifying rules instead.
Maintenance
Related MCP Connectors
Persistent file storage for AI agents. Save files over MCP, get a link a human can open.
Persistent file storage for AI agents via MCP and curl. Upload, download, and version files.
Shared memory for your AI tools: tasks, notes and context every tool can read and write over MCP.
Project management shared by people and AI agents, with persistent project state through MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides file system operations (list, read, write, search) via MCP, enabling an AI agent to manage files through natural language.2,203 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables natural language file operations and intelligent file analysis via MCP, supporting CRUD actions and multi-step reasoning for directory management.1-
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to safely interact with the file system through a set of tools for reading, writing, deleting, copying, moving files, and managing directories.-
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with a sandboxed filesystem via MCP tools for reading, writing, searching, and monitoring files, including batch processing and resource discovery for resume management.-