MCP
Το Chamilo 3.0 εκθέτει έναν διακομιστή MCP ώστε οι βοηθοί και οι πράκτορες ΤΝ (Claude, σύνδεσμοι ChatGPT ή οποιοσδήποτε πελάτης συμβατός με MCP) να μπορούν να ενεργούν εντός της πλατφόρμας εκ μέρους ενός πιστοποιημένου χρήστη, χρησιμοποιώντας τα δικαιώματα του ίδιου του χρήστη — δεν υπάρχει ξεχωριστός λογαριασμός υπηρεσίας ούτε αυξημένη πρόσβαση.
Τι προσθέτει το MCP στο Chamilo
Το MCP (Model Context Protocol) είναι ένα ανοιχτό πρότυπο που επιτρέπει σε πελάτες ΤΝ να καλούν ένα καθορισμένο σύνολο «εργαλείων» που εκτίθενται από έναν διακομιστή. Ο διακομιστής MCP του Chamilo είναι προσβάσιμος σε ένα μοναδικό σημείο πρόσβασης, /mcp, και εκθέτει ένα επιλεγμένο σύνολο εργαλείων διαχείρισης μαθημάτων προσανατολισμένων στον διδάσκοντα, αντί για ολόκληρη την επιφάνεια του API.
Διαθέσιμες δυνατότητες
Κάθε κλήση εκτελείται ως ο συνδεδεμένος χρήστης, επομένως ένα εργαλείο βλέπει και τροποποιεί μόνο μαθήματα που διαχειρίζεται αυτός ο χρήστης. Το τρέχον σύνολο εργαλείων:
Current user
Επιστρέφει την ταυτότητα και τους ρόλους του πιστοποιημένου χρήστη
Teacher courses
Παραθέτει τα μαθήματα που διαχειρίζεται ο χρήστης ως διδάσκων
Course overview
Επιστρέφει βασικές πληροφορίες μαθήματος και πλήθος πόρων
Create course
Δημιουργεί νέο μάθημα χρησιμοποιώντας τους κανόνες δημιουργίας μαθημάτων της πλατφόρμας
Create course assignment
Δημιουργεί προσχέδιο ή δημοσιευμένη εργασία με περιγραφή και μέγιστη βαθμολογία
Create course test
Δημιουργεί τεστ πολλαπλής επιλογής με υποστήριξη ΤΝ από περιγραφή θέματος ή υπάρχον έγγραφο
Get course test response status
Αναφέρει ποιοι φοιτητές έχουν απαντήσει, βρίσκονται σε εξέλιξη ή εκκρεμούν σε ένα τεστ
Get user course test score
Επιστρέφει τις πιο πρόσφατες και τις καλύτερες ολοκληρωμένες βαθμολογίες ενός φοιτητή σε ένα τεστ
Create training satisfaction survey
Δημιουργεί έρευνα ικανοποίησης επτά ερωτήσεων
Create course learning path
Δημιουργεί διαδρομή μάθησης από σελίδες που παρέχει ο πελάτης MCP
List documents
Παραθέτει τα έγγραφα στο εργαλείο Documents ενός μαθήματος
Read course document
Επιστρέφει το περιεχόμενο HTML, τον τίτλο και τα μεταδεδομένα ενός επεξεργάσιμου εγγράφου
Edit course document
Αντικαθιστά ολόκληρο το περιεχόμενο HTML ενός υπάρχοντος επεξεργάσιμου εγγράφου
Create course document
Δημιουργεί έγγραφο HTML με υποστήριξη ΤΝ στον ριζικό φάκελο Documents
Create course illustration
Δημιουργεί εικονογράφηση ΤΝ για ένα θέμα και την αποθηκεύει ως έγγραφο
Illustrate document paragraph
Εισάγει υπάρχουσα εικόνα ή βίντεο πριν ή μετά από μια παράγραφο σε ένα έγγραφο
Find recent course forum activity
Εντοπίζει πρόσφατες, ορατές αναρτήσεις φόρουμ σχετικές με ένα θέμα
Review course quality
Αναλύει τις διαδρομές μάθησης, τα έγγραφα, τα τεστ, τις εργασίες και τις έρευνες ενός μαθήματος και επιστρέφει συστάσεις βελτίωσης
Αυτή η λίστα επιμελείται από την ομάδα πυρήνα του Chamilo και δεν είναι επεκτάσιμη από τον χρήστη εντός της πλατφόρμας — οι διδάσκοντες δεν μπορούν να προσθέσουν δικά τους εργαλεία.
Πώς συνδέονται οι χρήστες
Προσωπικό κλειδί API MCP
Κάθε χρήστης δημιουργεί το δικό του κλειδί στην ενότητα Κοινωνικό δίκτυο > Κλειδί API MCP:
Κάνοντας κλικ στο Generate API key δημιουργείται ένα κλειδί και εμφανίζεται μία φορά — το Chamilo αποθηκεύει στη συνέχεια μόνο μια καλυμμένη έκδοση, επομένως το πλήρες κλειδί πρέπει να αντιγραφεί και να αποθηκευτεί με ασφάλεια αμέσως.
Η δημιουργία νέου κλειδιού ανακαλεί αμέσως το προηγούμενο.
Η σελίδα εμφανίζει την κατάσταση του κλειδιού (ενεργό/ανενεργό), το σημείο πρόσβασης MCP προς διαμόρφωση στον πελάτη, καθώς και τις ημερομηνίες δημιουργίας και τελευταίας χρήσης.
Το πλαίσιο Remote MCP connection περιγράφει ακριβώς τι πρέπει να τοποθετηθεί στον πελάτη MCP: τη διεύθυνση URL του σημείου πρόσβασης και μια κεφαλίδα
Authorization: Bearer <your MCP API key>.
Όπως σημειώνει η ίδια η σελίδα, το κλειδί πιστοποιεί τον πελάτη ως τον λογαριασμό αυτού του χρήστη — δεν χορηγεί κανένα δικαίωμα που ο λογαριασμός δεν διαθέτει ήδη.
OAuth 2.1 (απομακρυσμένοι πελάτες και σύνδεσμοι)
Για πελάτες MCP που υποστηρίζουν ανακάλυψη OAuth και δυναμική καταχώριση πελάτη (αντί για κλειδί που επικολλάται χειροκίνητα), το Chamilo λειτουργεί επίσης ως διακομιστής εξουσιοδότησης OAuth 2.1: ο πελάτης ανακαλύπτει τα σημεία πρόσβασης του Chamilo, καταχωρίζει τον εαυτό του και ανακατευθύνει τον χρήστη στο /oauth/authorize για έγκριση πρόσβασης. Οι εγκεκριμένες εφαρμογές εμφανίζονται στην ενότητα Κοινωνικό δίκτυο > Εξουσιοδοτημένες εφαρμογές, όπου ο χρήστης μπορεί να ανακαλέσει όσες δεν χρησιμοποιεί πλέον ή δεν αναγνωρίζει.
Θέματα Ασφαλείας
Χωρίς κλιμάκωση προνομίων. Κάθε κλήση εργαλείου MCP και κάθε εφαρμογή εξουσιοδοτημένη μέσω OAuth εκτελείται με τα ίδια δικαιώματα Chamilo του συνδεδεμένου χρήστη — ένα προσωπικό κλειδί API ή μια εξουσιοδοτημένη εφαρμογή δεν μπορεί ποτέ να κάνει περισσότερα από όσα θα μπορούσε ήδη να κάνει ο χρήστης χειροκίνητα.
Μόνο Bearer, με περιορισμό ρυθμού. Το
/mcpδέχεται μόνο διαπιστευτήριο Bearer — ένα προσωπικό κλειδί API MCP, ένα διακριτικό πρόσβασης OAuth ή (σε ανάπτυξη) ένα JWT. Οι προσπάθειες αυθεντικοποίησης περιορίζονται ως προς τον ρυθμό ανά διεύθυνση IP ώστε να επιβραδύνεται η εικασία διαπιστευτηρίων.Στενή δημόσια επιφάνεια. Η μόνη μη αυθεντικοποιημένη κίνηση που δέχεται το
/mcpείναι το preflightOPTIONS· κάθε πραγματική κλήση απαιτείROLE_USER. Τα endpoints ανακάλυψης OAuth, δυναμικής εγγραφής πελάτη και διακριτικών είναι σκόπιμα δημόσια, όπως απαιτούν οι προδιαγραφές OAuth 2.1 / MCP — αυτό από μόνο του δεν χορηγεί πρόσβαση, απλώς επιτρέπει σε έναν πελάτη να μάθει πώς να ξεκινήσει τη ροή εξουσιοδότησης.Η προστασία από DNS-rebinding είναι σκόπιμα απενεργοποιημένη για το
/mcp. Το πακέτο που υλοποιεί το MCP περιορίζει κανονικά το endpoint στοlocalhostεκτός αν έχει ρυθμιστεί στατική λίστα επιτρεπόμενων ονομάτων κεντρικών υπολογιστών — κάτι που ταιριάζει άσχημα σε μια πύλη Chamilo με πολλαπλά URL προσβάσιμη υπό πολλά ονόματα κεντρικών υπολογιστών. Το Chamilo απενεργοποιεί αυτόν τον έλεγχο επειδή είναι πλεονάζων εδώ: κάθε αίτημα/mcpαπαιτεί ήδη διαπιστευτήριο Bearer ανεξάρτητα από την κεφαλίδαHost/Origin, και μια επίθεση DNS-rebinding (που βασίζεται σε περιβάλλουσα αυθεντικοποίηση τύπου cookie που συνοδεύει ένα πλαστογραφημένο Host) δεν μπορεί να πλαστογραφήσει ένα διακριτικό bearer που δεν έχει ήδη.
Ρύθμιση του διακομιστή MCP
Σε αντίθεση με τις περισσότερες ενσωματώσεις σε αυτόν τον οδηγό, το MCP δεν διαθέτει σελίδα ρυθμίσεων στον πίνακα διαχείρισης — ρυθμίζεται σε επίπεδο αρχείου, στο config/packages/mcp.yaml, και απαιτεί πρόσβαση κελύφους στον διακομιστή:
app, version, description
Ταυτότητα που αναφέρει το Chamilo στους συνδεόμενους πελάτες MCP
client_transports.stdio / client_transports.http
Ποια μέσα μεταφοράς είναι ενεργά· το Chamilo ενεργοποιεί και τα δύο από προεπιλογή
http.path
Το HTTP endpoint του MCP (/mcp από προεπιλογή)
http.allowed_hosts
Λίστα επιτρεπόμενων κεντρικών υπολογιστών για DNS-rebinding — ορισμένη σε false στο Chamilo (βλ. Θέματα Ασφαλείας παραπάνω)
http.session.store, .directory, .ttl
Πού αποθηκεύεται η κατάσταση συνεδρίας MCP και για πόσο χρόνο
Για να απενεργοποιήσετε πλήρως τον διακομιστή MCP, ορίστε client_transports.http: false (και stdio: false αν πρέπει να απενεργοποιηθεί και το μέσο μεταφοράς CLI) και καθαρίστε την προσωρινή μνήμη:
Συμβουλές
Αντιμετωπίστε ένα κλειδί API MCP όπως έναν κωδικό πρόσβασης — όποιος το κατέχει μπορεί να ενεργεί ως αυτός ο χρήστης μέσω οποιουδήποτε πελάτη MCP.
Ενθαρρύνετε τους χρήστες να ελέγχουν περιοδικά τις Εξουσιοδοτημένες εφαρμογές και να ανακαλούν οτιδήποτε δεν αναγνωρίζουν.
Δείτε τη Ρύθμιση AI για τους παρόχους AI που υποστηρίζουν τα εργαλεία δημιουργίας περιεχομένου (δημιουργία δοκιμασιών, δημιουργία εγγράφων, εικονογραφήσεις) που αναφέρονται παραπάνω.
Τελευταία ενημέρωση
Ήταν χρήσιμο αυτό;