ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

ENT ONE (Edifice)

โดย edouard-claudeรุ่น 0.1.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.edouard-claude/ent1-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

ENT ONE school workspace for parents: teacher messaging, liaison book, homework, news.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: แชตและอีเมล
  • ต้องใส่ค่าเหล่านี้: ENT1_IDENTIFIANT, ENT1_MOT_DE_PASSE

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • Dockerติดตั้ง Docker ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "ent1": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ENT1_IDENTIFIANT",
        "-e",
        "ENT1_MOT_DE_PASSE",
        "-e",
        "ENT1_URL",
        "-e",
        "ENT1_FUSEAU",
        "ghcr.io/edouard-claude/ent1-mcp:0.1.1"
      ],
      "env": {
        "ENT1_IDENTIFIANT": "ใส่ค่าของคุณ",
        "ENT1_MOT_DE_PASSE": "ใส่ค่าของคุณ",
        "ENT1_URL": "ใส่ค่าของคุณ",
        "ENT1_FUSEAU": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add ent1 --env ENT1_IDENTIFIANT='ใส่ค่าของคุณ' --env ENT1_MOT_DE_PASSE='ใส่ค่าของคุณ' --env ENT1_URL='ใส่ค่าของคุณ' --env ENT1_FUSEAU='ใส่ค่าของคุณ' -- docker run -i --rm -e ENT1_IDENTIFIANT -e ENT1_MOT_DE_PASSE -e ENT1_URL -e ENT1_FUSEAU ghcr.io/edouard-claude/ent1-mcp:0.1.1

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "ent1": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ENT1_IDENTIFIANT",
        "-e",
        "ENT1_MOT_DE_PASSE",
        "-e",
        "ENT1_URL",
        "-e",
        "ENT1_FUSEAU",
        "ghcr.io/edouard-claude/ent1-mcp:0.1.1"
      ],
      "env": {
        "ENT1_IDENTIFIANT": "ใส่ค่าของคุณ",
        "ENT1_MOT_DE_PASSE": "ใส่ค่าของคุณ",
        "ENT1_URL": "ใส่ค่าของคุณ",
        "ENT1_FUSEAU": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "ent1": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ENT1_IDENTIFIANT",
        "-e",
        "ENT1_MOT_DE_PASSE",
        "-e",
        "ENT1_URL",
        "-e",
        "ENT1_FUSEAU",
        "ghcr.io/edouard-claude/ent1-mcp:0.1.1"
      ],
      "env": {
        "ENT1_IDENTIFIANT": "ใส่ค่าของคุณ",
        "ENT1_MOT_DE_PASSE": "ใส่ค่าของคุณ",
        "ENT1_URL": "ใส่ค่าของคุณ",
        "ENT1_FUSEAU": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • ENT1_IDENTIFIANT จำเป็น env
    ENT login (same as on the ENT sign-in page)
  • ENT1_MOT_DE_PASSE ความลับ จำเป็น env
    ENT password
  • ENT1_URL env
    ENT address
  • ENT1_FUSEAU env
    Time zone of returned dates

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub edouard-claude ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด แชตและอีเมลi

  • ดาวมากกว่า 0% ของอีก 1862 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 60% ของอีก 1862 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1862 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

ENT ONE (Edifice) ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: ENT1_IDENTIFIANT, ENT1_MOT_DE_PASSE

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.1) เข้า registry 20 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Vexa, emailmd, MCP WhatsApp Cloud

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Vexa

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

โดย Vexa-aiใช้กันมาก★ 2.9Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์✓ vexa.ai

emailmd

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

โดย anypostใช้กันมาก↓ 5.3K/สัปดาห์★ 1.4Kอัปเดต 33 วันที่ผ่านมา

บนเครื่องหรือคลาวด์✓ emailmd.dev

MCP WhatsApp Cloud

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

โดย codesparเริ่มต้น↓ 63/สัปดาห์★ 277อัปเดต 5 เดือนที่ผ่านมา

รันบนเครื่อง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

ent1-mcp

Parlez à l'ENT de vos enfants depuis votre assistant IA.

ent1-mcp est un serveur MCP (Model Context Protocol) pour l'ENT ONE, l'espace numérique de travail des écoles construit sur la plateforme Edifice (ex-Open Digital Education). Il permet à Claude, ChatGPT ou tout autre assistant compatible MCP de lire et d'écrire dans l'ENT à votre place : messagerie avec les enseignants, carnet de liaison, cahier de texte, actualités de l'école, blogs de classe, calendrier, casier, documents, formulaires…

Écrit en Rust, sans dépendance à un navigateur, il se connecte avec vos identifiants habituels et ne stocke rien.

[!IMPORTANT]

Projet communautaire non officiel. Il n'est ni développé, ni soutenu, ni validé par Edifice, par l'Éducation nationale ou par une académie. Il utilise l'API interne que l'application web de l'ENT appelle elle-même, qui peut changer sans préavis.


Sommaire

  • Ce que vous pouvez demander
  • Fonctionnalités
  • Installation
  • Configuration
  • Brancher un assistant
  • Sécurité et vie privée
  • Autres ENT Edifice
  • Architecture
  • Développement
  • Limites connues
  • Feuille de route
  • Contribuer
  • Licence

Ce que vous pouvez demander

« Qu'est-ce qui s'est passé sur l'ENT cette semaine ? »

« Y a-t-il des mots du carnet de liaison que je n'ai pas encore signés ? Signe-les. »

« Quels sont les devoirs de Léa pour jeudi ? Coche ceux qu'elle a déjà faits. »

« Écris à la maîtresse de CM1 pour la prévenir que Léa sera absente vendredi matin (rendez-vous chez l'orthophoniste). Montre-moi le message avant de l'envoyer. »

« Résume-moi les trois dernières actualités de l'école et ajoute les dates importantes à ma liste. »

« Dépose l'attestation d'assurance dans le casier de l'enseignante. »

L'assistant enchaîne lui-même les outils : il cherche l'enseignante dans l'annuaire, rédige le message, vous le soumet, puis l'envoie.

Fonctionnalités

48 outils, regroupés par application de l'ENT. Les outils de lecture sont annotés readOnlyHint, les suppressions destructiveHint : les clients MCP s'en servent pour demander (ou non) votre confirmation.

ApplicationOutilsLectureÉcriture
Compteprofil, deconnexion✅
Quoi de neuf ?fil_nouveautes✅
Messageriemessagerie_lister, messagerie_lire, messagerie_non_lus, messagerie_envoyer, messagerie_enregistrer_brouillon, messagerie_joindre_fichier, messagerie_telecharger_piece_jointe, messagerie_marquer, messagerie_deplacer, messagerie_supprimer, messagerie_restaurer, messagerie_rappeler, messagerie_dossiers, messagerie_creer_dossier✅✅
Annuaireannuaire_rechercher, annuaire_fiche✅
Carnet de liaisoncarnet_lister, carnet_signer, carnet_repondre✅✅
Cahier de textecahier_lister, cahier_lire, cahier_marquer (devoir fait / à faire)✅✅
Actualitésactualites_lister, actualites_fils, actualites_lire, actualites_commenter✅✅
Blogblog_lister, blog_billets, blog_commentaires, blog_commenter, blog_supprimer_commentaire✅✅
Calendriercalendrier_lister, calendrier_evenements✅
Espace documentairedocuments_lister, documents_telecharger, documents_deposer✅✅
Casiercasier_lister, casier_destinataires, casier_deposer, casier_telecharger, casier_supprimer✅✅
Formulairesformulaires_lister, formulaires_lire✅lien
Wikiwiki_lister, wiki_lire_page✅

Détails utiles :

  • Texte brut partout. Le HTML de l'ENT est converti en texte à la lecture ; à l'écriture, votre texte est échappé puis mis en paragraphes. Aucune injection de HTML possible.
  • Réponses structurées. Chaque outil renvoie un JSON typé (structuredContent) avec son schéma de sortie, en plus du texte.
  • Fichiers en base64, 10 Mo maximum par fichier, dans les deux sens.
  • Dates dans votre fuseau horaire (Indian/Reunion par défaut).
  • Messages rappelables pendant 60 minutes (messagerie_rappeler), comme dans l'ENT.

Installation

Avec Cargo

Il faut Rust 1.88 ou plus récent.

cargo install --git https://github.com/edouard-claude/ent1-mcp

Le binaire ent1-mcp est installé dans ~/.cargo/bin.

Depuis les sources
git clone https://github.com/edouard-claude/ent1-mcp

cd ent1-mcp cargo build --release

binaire : target/release/ent1-mcp

Avec Docker

L'image est publiée sur GitHub Container Registry à chaque version. Par défaut elle parle en stdio, comme le binaire :

docker run --rm -i -e ENT1_IDENTIFIANT -e ENT1_MOT_DE_PASSE ghcr.io/edouard-claude/ent1-mcp

En mode HTTP :

docker run --rm -p 8080:8080 \

-e ENT1_TRANSPORT=http -e ENT1_ECOUTE=0.0.0.0:8080 \ -e ENT1_IDENTIFIANT -e ENT1_MOT_DE_PASSE -e ENT1_MCP_JETON \ ghcr.io/edouard-claude/ent1-mcp

Depuis le registre officiel MCP

Le serveur est référencé dans le registre MCP sous le nom io.github.edouard-claude/ent1-mcp : les clients qui s'appuient sur le registre le proposent directement, avec les variables à renseigner.

Configuration

Tout se règle par variables d'environnement. Les secrets ne peuvent pas être passés en argument de ligne de commande : ils apparaîtraient dans la liste des processus.

VariableObligatoireDéfautRôle
ENT1_IDENTIFIANT✅*Identifiant de connexion à l'ENT (ex. prenom.nom)
ENT1_MOT_DE_PASSE✅*Mot de passe de l'ENT
ENT1_URLhttps://ent1d.ac-reunion.frAdresse de votre ENT
ENT1_FUSEAUIndian/ReunionFuseau horaire des dates renvoyées
ENT1_TRANSPORTstdiostdio (client local) ou http (serveur distant)
ENT1_ECOUTE127.0.0.1:8080Adresse d'écoute en mode HTTP
ENT1_MCP_JETONen HTTPJeton d'accès du mode HTTP, 32 caractères minimum
ENT1_HOTESboucle localeNoms d'hôte publics acceptés en HTTP, séparés par des virgules
RUST_LOGent1_mcp=infoNiveau des journaux (écrits sur la sortie d'erreur)

Un modèle est fourni dans .env.exemple.

Au démarrage, le serveur ouvre une session sur l'ENT : des identifiants erronés sont signalés tout de suite, pas au premier appel d'outil.

\* Sans aucun des deux, le serveur démarre quand même (utile pour l'inspecter ou le référencer) : il liste ses outils, et chacun répond qu'aucun compte n'est configuré.

Brancher un assistant

Claude Desktop

Ouvrez *Réglages → Développeur → Modifier la configuration* et ajoutez :

{

"mcpServers": { "ent": { "command": "/Users/vous/.cargo/bin/ent1-mcp", "env": { "ENT1_IDENTIFIANT": "prenom.nom", "ENT1_MOT_DE_PASSE": "votre-mot-de-passe" } } } }

Redémarrez Claude Desktop : les outils de l'ENT apparaissent dans le menu des connecteurs.

Claude Code
claude mcp add ent --env ENT1_IDENTIFIANT=prenom.nom --env ENT1_MOT_DE_PASSE=votre-mot-de-passe -- ent1-mcp
Mode HTTP (assistant distant, API)

Pour un assistant qui ne tourne pas sur votre machine, lancez le serveur en Streamable HTTP derrière un reverse proxy HTTPS :

export ENT1_TRANSPORT=http

export ENT1_ECOUTE=0.0.0.0:8080 export ENT1_HOTES=ent-mcp.mondomaine.fr export ENT1_MCP_JETON="$(openssl rand -hex 32)" ent1-mcp

Le point d'accès est https://ent-mcp.mondomaine.fr/mcp, protégé par l'en-tête Authorization: Bearer . Une sonde de santé répond sur /sante.

Exemple avec le connecteur MCP de l'API Claude :

"mcp_servers": [{

"type": "url", "url": "https://ent-mcp.mondomaine.fr/mcp", "name": "ent", "authorization_token": " " }]

claude.ai et ChatGPT (web et mobile)

Les connecteurs personnalisés de claude.ai et de ChatGPT n'acceptent pas de jeton fixe : ils exigent OAuth 2.1. Le mode HTTP actuel ne suffit donc pas pour eux. C'est la prochaine étape du projet (voir la feuille de route) : une page de connexion où chaque parent saisit ses identifiants ENT, sans jamais les confier à l'assistant.

Sécurité et vie privée

L'ENT contient des données d'enfants. Ce projet part de ce principe.

Ce que fait le serveur

  • Il ne stocke rien : ni message, ni document, ni identifiant sur disque. La session ENT (cookie) vit en mémoire et disparaît à l'arrêt.
  • Le mot de passe n'est lu que dans l'environnement et reste enveloppé dans un type secrecy : il n'apparaît ni dans les journaux, ni dans les messages d'erreur, ni dans Debug.
  • Si l'ENT refuse les identifiants, le serveur cesse toute tentative jusqu'à son redémarrage, pour ne pas faire verrouiller votre compte.
  • Les reconnexions sont sérialisées : dix requêtes qui trouvent la session expirée déclenchent une seule connexion.
  • Chaque identifiant fourni par l'assistant est vérifié avant d'être placé dans une URL : impossible de détourner un appel vers une autre route de l'ENT.
  • Toute écriture porte le jeton anti-CSRF de l'ENT (X-XSRF-TOKEN), comme l'application web.
  • En HTTP : jeton obligatoire comparé en temps constant, protection contre le *DNS rebinding* (liste d'hôtes autorisés), unsafe interdit dans tout le code.

Ce que vous devez savoir

  • Les contenus lus par l'assistant (messages, mots, noms d'enfants et d'enseignants) sont envoyés au fournisseur de l'assistant (Anthropic, OpenAI…). Lisez sa politique de confidentialité et, si possible, désactivez l'utilisation de vos conversations pour l'entraînement.
  • L'assistant agit en votre nom. Demandez-lui de toujours vous montrer un message avant de l'envoyer ; les instructions du serveur le lui rappellent, et la plupart des clients demandent une confirmation avant chaque outil d'écriture.
  • N'exposez jamais le mode HTTP sans HTTPS ni sans jeton.

Une faille ? Merci de la signaler en privé (voir SECURITY.md) plutôt que dans une issue publique.

Autres ENT Edifice

L'ENT ONE est une déclinaison de la plateforme open source Edifice, également utilisée sous d'autres noms (NEO, ONE dans d'autres académies, ENT de collectivités…). Les routes utilisées étant celles du socle commun, ent1-mcp devrait fonctionner ailleurs en changeant ENT1_URL. Seule l'instance de La Réunion (ent1d.ac-reunion.fr) a été testée : vos retours sont bienvenus.

Les ENT qui imposent une connexion ÉduConnect ou une double authentification ne sont pas pris en charge pour l'instant (voir limites).

Architecture

  Assistant (Claude, ChatGPT…)

│ MCP : stdio ou Streamable HTTP (+ jeton) ▼ ┌──────────────────────────────┐ │ ent1-mcp │ │ outils/ 48 outils MCP │ un module par application de l'ENT │ texte.rs HTML ⇄ texte │ │ ent/ client HTTP │ session, reconnexion, XSRF, identifiants typés └──────────────┬───────────────┘ │ HTTPS, cookie de session ▼ ENT ONE / Edifice (/conversation, /schoolbook, /homeworks, /actualites, /blog, /rack…)

  • Connexion : formulaire POST /auth/login, puis cookie de session. Une réponse 401 ou une redirection vers la page de connexion déclenche une reconnexion et un unique rejeu de la requête.
  • Un compte par processus : le client ENT est partagé par toutes les sessions MCP du processus. Pour servir plusieurs familles, lancez un processus par compte (ou attendez le mode OAuth).
  • Stack : [rmcp](https://crates.io/cra

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx