EduBase
resmiBerinteraksi dengan EduBase, platform e-learning komprehensif dengan kemampuan kuis lanjutan, manajemen ujian, dan organisasi konten.
Apa yang bisa Anda lakukan dengan EduBase MCP?
- Buat dan publikasikan soal — Minta asisten menulis soal baru dan memublikasikannya ke QuestionBase Anda melalui
edubase_prompt_create_question. - Ubah dokumen menjadi soal — Ubah dokumen terlampir, jalur file, atau URL menjadi soal setelah menyetujui rencana, dan tambahkan ke set Quiz jika diinginkan.
- Buat ujian berdasarkan topik — Buat soal tentang suatu topik, kumpulkan dalam set Quiz, dan buat ujian terjadwal dengan
edubase_prompt_create_exam. - Ringkas hasil ujian — Analisis hasil ujian dan simpan ringkasannya ke ujian jika diinginkan dengan
edubase_prompt_summarize_exam_results. - Tetapkan kelas ke ujian — Tetapkan anggota aktif suatu kelas ke ujian menggunakan
edubase_prompt_assign_class_to_exam. - Periksa progres perjalanan ujian — Lihat progres pengguna dalam perjalanan ujian dan siapa yang mengalami kendala melalui
edubase_prompt_exam_journey_status.
Dokumentasi
Server MCP EduBase
Repositori ini berisi implementasi Model Context Protocol (MCP) server untuk platform EduBase. Server ini memungkinkan klien MCP (misalnya Claude Desktop) dan LLM berinteraksi dengan akun EduBase Anda dan melakukan tugas atas nama Anda. Server ini mendukung protokol transport stdio, SSE, dan HTTP yang dapat dialirkan.

Apa itu EduBase?
EduBase adalah platform pendidikan online yang inovatif dan modular, yang membuat pembelajaran lebih menyenangkan, sederhana, dan interaktif, serta cocok untuk institusi pendidikan maupun perusahaan.
Mengapa memilih EduBase?
EduBase merevolusi pembelajaran digital dengan kombinasi fitur uniknya:
- Sistem Kuis Canggih dengan parameterisasi yang memungkinkan variasi tak terbatas dari pertanyaan yang sama, deteksi kecurangan secara real-time, tata letak LaTeX yang menarik, dukungan STEM tingkat lanjut, dan penilaian otomatis
- Lingkungan Pembelajaran Terpadu yang memusatkan semua konten pendidikan Anda — video, ujian, dokumen, dan modul SCORM — dalam satu sistem intuitif
- Keamanan Tingkat Perusahaan dengan fitur seperti integrasi SSO, kontrol akses terperinci, audit menyeluruh, dan kepatuhan GDPR
- Integrasi dengan sistem yang sudah Anda gunakan melalui LTI, API komprehensif, dan opsi integrasi khusus
- Alat Berbantuan AI, seperti EduBase Assistant, yang dapat langsung mengubah konten Anda menjadi kuis dan penilaian interaktif, atau menerjemahkan materi Anda ke bahasa lain
Mulai dari institusi pendidikan tinggi hingga departemen pelatihan perusahaan, EduBase dapat disesuaikan dengan kebutuhan spesifik Anda sekaligus mempertahankan pengalaman pengguna yang intuitif di semua perangkat.
Video demo
Berkolaborasi membuat dan mengunggah pertanyaan, menjadwalkan ujian, dan menganalisis hasil pengguna dengan Claude:
Mendapatkan kredensial API
Setelah masuk, di Dashboard Anda, cari menu Integrations, klik "add integration", lalu pilih jenis "EduBase API".
Jika Anda tidak melihat opsi ini, masukkan kode aktivasi MCPGITHUB atau hubungi kami untuk meminta akses di info@edubase.net.
Tools
Setiap endpoint API yang didokumentasikan tersedia sebagai tool dengan nama edubase_<method>_<endpoint>. Misalnya, tool untuk endpoint GET /user:me bernama edubase_get_user_me. Endpoint tag, permission, dan transfer bekerja dengan cara yang sama untuk setiap jenis konten, sehingga semuanya menggunakan satu tool per metode dengan argumen type (misalnya edubase_post_content_tag untuk POST /exam:tag, POST /quiz:tag, dan sebagainya). Lihat dokumentasi developer kami untuk informasi lebih lanjut.
Toolset
Tools dikelompokkan ke dalam toolset, sehingga Anda dapat mengekspos hanya tools yang diperlukan. Lebih sedikit tools menggunakan lebih sedikit konteks model dan memudahkan model memilih tool yang tepat. Setiap toolset diaktifkan secara default.
| Toolset | Tools untuk |
|---|---|
files | Unggahan file sementara (selalu diaktifkan) |
questions | Pertanyaan |
quizzes | Set kuis, pertanyaan, pengaturan, dan preset penilaiannya |
exams | Ujian, pengaturan, pengguna, sertifikat, branding, dan alur pembelajarannya |
results | Hasil kuis dan ujian, unduhan sertifikat |
users | Pengguna, nama, grup, dan tautan login mereka |
classes | Kelas dan keanggotaan kelas |
organizations | Organisasi, anggota, departemen, jabatan, kompetensi, dan webhook |
integrations | Integrasi dan kuncinya |
tags | Tag dan lampiran tag pada konten |
permissions | Izin pengguna pada konten dan transfer kepemilikan |
metrics | Metrik khusus |
Pilih toolset dengan daftar yang dipisahkan koma di EDUBASE_TOOLSETS (misalnya questions,quizzes,exams). Atur EDUBASE_READONLY=true untuk mengekspos hanya tools yang membaca data (tools get, serta tools yang hanya membuat tautan unduhan, seperti edubase_post_question_export).
Atur EDUBASE_DYNAMIC_TOOLSETS=true untuk mengaktifkan toolset sesuai kebutuhan: sesi dimulai hanya dengan tools penting, lalu model mengaktifkan toolset yang diperlukan menggunakan tool edubase_enable_toolsets (tercantum bersama edubase_list_toolsets). Ini menjaga daftar tools awal tetap kecil bagi klien yang memuat semua tools sejak awal, tetapi memerlukan klien yang memperbarui daftar tools saat diberi tahu tentang perubahan.
Saat menggunakan transport HTTP, klien dapat mempersempit konfigurasi lebih lanjut untuk sesinya sendiri dengan header EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly, dan EduBase-Mcp-Dynamic, atau parameter kueri toolsets, read_only, dan dynamic_toolsets (misalnya https://domain.edubase.net/mcp?toolsets=exams&read_only=true). Sesi tidak dapat mengaktifkan toolset atau tools tulis yang dinonaktifkan oleh konfigurasi server.
Prompt
Prompt adalah alur kerja siap pakai yang dapat Anda mulai dari klien MCP (misalnya dari menu + atau /). Klien yang mendukung completions akan menyarankan nilai argumen saat Anda mengetik: jenis pertanyaan, serta ujian, set kuis, dan kelas Anda sendiri.
| Prompt | Fungsinya | Argumen |
|---|---|---|
Buat pertanyaan (edubase_prompt_create_question) | Menulis pertanyaan baru dan menerbitkannya ke QuestionBase Anda | type, subject, opsional difficulty dan language |
Buat pertanyaan dari dokumen (edubase_prompt_questions_from_document) | Mengubah dokumen terlampir (atau jalur file atau URL) menjadi pertanyaan setelah Anda menyetujui rencananya, dan secara opsional menambahkannya ke set kuis | document, opsional questions (jumlah), types, quiz, dan language |
Buat ujian (edubase_prompt_create_exam) | Membuat pertanyaan tentang suatu topik, mengumpulkannya dalam set kuis baru, lalu membuat ujian darinya | topic, questions (jumlah), opsional types (dipisahkan koma), language, dan schedule |
Buat ujian dengan alur pembelajaran (edubase_prompt_create_exam_journey) | Membuat ujian seperti di atas, lalu menyusun dan menerbitkan alur ujian singkat darinya, menggunakan kembali ujian terkait di akun Anda serta membuat set kuis latihan dan ujian lanjutan jika diperlukan | sama seperti Buat ujian |
Salin ujian (edubase_prompt_copy_exam) | Membuat ujian baru dengan set kuis dan pengaturan yang sama untuk rentang waktu baru | exam, schedule, opsional title |
Tetapkan kelas ke ujian (edubase_prompt_assign_class_to_exam) | Menetapkan anggota aktif suatu kelas ke ujian | exam, class |
Ringkas hasil ujian (edubase_prompt_summarize_exam_results) | Menganalisis hasil ujian dan secara opsional menyimpan ringkasannya ke ujian | exam, opsional focus dan save (ask, yes, atau no) |
Periksa alur ujian (edubase_prompt_exam_journey_status) | Menampilkan kemajuan pengguna dalam alur ujian dan siapa yang mengalami kendala | exam |
Prompt hanya ditawarkan jika toolset terkait diaktifkan; dalam mode hanya-baca, hanya dua prompt terakhir yang ditawarkan.
Jika jenis pertanyaan untuk suatu ujian tidak diisi, klien yang mendukung elicitation akan menanyakannya melalui kotak centang. Klien ini juga meminta konfirmasi sebelum melakukan perubahan yang tidak dapat dibatalkan (menghapus ujian, set kuis, pertanyaan, pengguna, organisasi, dan integrasi; mentransfer kepemilikan; memulai putaran ujian baru; serta merotasi kunci integrasi). Atur EDUBASE_ELICITATION=false untuk menonaktifkan pertanyaan konfirmasi ini.
Resources
Dokumen referensi tersedia sebagai resources, dan melalui tool edubase_mcp_reference untuk model yang tidak dapat membaca resources: edubase://reference/questions (kolom dan jenis pertanyaan) dan edubase://reference/exam-journeys (format alur ujian portabel). Dokumen ini mencakup hal-hal yang dijelaskan oleh skill EduBase, bagi klien yang tidak memiliki skill tersebut. Ujian dan set kuis juga dapat dilampirkan sebagai resources (edubase://exam/{exam} dan edubase://quiz/{quiz}), dengan konten Anda dicantumkan dan disarankan. Nonaktifkan fitur ini dengan EDUBASE_CONTENT_RESOURCES=false, atau untuk satu sesi dengan header EduBase-Mcp-Content-Resources: false, parameter kueri content_resources=false, atau pengaturan Smithery edubaseContentResources.
Tools yang membuat atau mengubah ujian, set kuis, dan alur pembelajaran menyertakan tautan ke halamannya di EduBase.
Konfigurasi
Server MCP dapat dikonfigurasi menggunakan variabel lingkungan. Variabel berikut tersedia:
| Variabel | Deskripsi | Wajib | Nilai default |
|---|---|---|---|
EDUBASE_API_URL | URL dasar API EduBase, kemungkinan besar https://subdomain.edubase.net/api. | Ya | https://www.edubase.net/api |
EDUBASE_API_APP | ID Aplikasi aplikasi integrasi Anda di EduBase, yaitu app pada API EduBase. Temukan ini di jendela detail integrasi di EduBase. | Tidak jika transport HTTP digunakan dengan autentikasi, jika tidak Ya | - |
EDUBASE_API_KEY | Kunci Rahasia aplikasi integrasi Anda di EduBase, yaitu secret pada API EduBase. Temukan ini bersama ID Aplikasi di jendela detail integrasi di EduBase. | Tidak jika transport HTTP digunakan dengan autentikasi, jika tidak Ya | - |
EDUBASE_SSE_MODE | Jalankan server MCP dalam mode HTTP dengan transport SSE. Nilai harus true. | Tidak | false |
EDUBASE_STREAMABLE_HTTP_MODE | Jalankan server MCP dalam mode HTTP dengan transport HTTP yang dapat dialirkan. Nilai harus true. | Tidak | false |
EDUBASE_TOOLSETS | Daftar toolset yang diaktifkan, dipisahkan koma toolsets, atau all. | Tidak | all |
EDUBASE_READONLY | Hanya tampilkan tool yang membaca data. Nilai harus true. | Tidak | false |
EDUBASE_OUTPUT_SCHEMAS | Skema output tool dan hasil tool terstruktur: off mencantumkan tool tanpa skema output dan hanya mengembalikan hasil sebagai teks JSON, on menyertakan skema output lengkap, fields menyertakan skema output tanpa deskripsi bidang (tetap mempertahankan hasil terstruktur, tetapi menghemat sebagian besar token skema). | Tidak | fields |
EDUBASE_CONFIG_PROVIDERS | Daftar penyedia hosting yang diizinkan untuk memberikan konfigurasi sesi dalam permintaan saat transport HTTP digunakan, dipisahkan koma. Saat ini hanya smithery yang didukung (parameter kueri config yang dikodekan base64). | Tidak | - |
EDUBASE_CONTENT_RESOURCES | Cantumkan ujian dan set Kuis akun sebagai resources. Atur ke false untuk menonaktifkannya, misalnya saat server diperiksa tanpa kredensial. Dokumen referensi tetap tersedia. | Tidak | true |
EDUBASE_DYNAMIC_TOOLSETS | Mulai sesi hanya dengan tool unggah file dan biarkan model mengaktifkan toolsets sesuai kebutuhan. Nilai harus true. | Tidak | false |
EDUBASE_ELICITATION | Minta pengguna melalui klien untuk mengonfirmasi perubahan yang tidak dapat dibatalkan dan memilih jenis pertanyaan untuk prompt, jika klien mendukung elisitasi. Atur ke false untuk menonaktifkannya. | Tidak | true |
EDUBASE_HTTP_PORT | Server HTTP akan mendengarkan pada port ini jika mode transport SSE atau HTTP yang dapat dialirkan digunakan. | Tidak | 3000 |
EDUBASE_OAUTH | Mengaktifkan perilaku protected-resource OAuth 2.1: permintaan tanpa autentikasi ditolak dengan 401 + WWW-Authenticate yang mengarah ke /.well-known/oauth-protected-resource/mcp, dan token bearer diteruskan ke API EduBase. | Tidak | false |
EDUBASE_OAUTH_AUTHORIZATION_SERVER | URL dasar publik deployment EduBase yang bertindak sebagai IdP OAuth. Digunakan untuk mengiklankan server otorisasi dalam dokumen metadata protected-resource. | Tidak | diturunkan dari EDUBASE_API_URL |
EDUBASE_OAUTH_RESOURCE_URL | URL dasar publik server MCP ini (indikator resource OAuth). Digunakan dalam header WWW-Authenticate dan metadata resource. | Tidak | diturunkan dari EDUBASE_API_URL |
EDUBASE_ALLOW_PRIVATE_NETWORK | Saat transport HTTP digunakan, tool edubase_filebin memblokir permintaan keluar ke alamat privat, loopback, link-local, dan alamat yang dicadangkan (perlindungan SSRF), serta menolak jalur file lokal. Atur ke true untuk mengizinkannya, misalnya deployment yang di-host sendiri di jaringan privat tepercaya. Tidak berpengaruh dalam mode stdio, saat pengguna lokal adalah satu-satunya pemanggil. | Tidak | false |
EDUBASE_FILEBIN_ALLOWED_HOSTS | Daftar izin opsional nama host yang dipisahkan koma, yang diizinkan sebagai target unggahan edubase_filebin (host persis atau subdomain apa pun, misalnya edubase.net). Jika kosong, host publik apa pun diizinkan (tetap tunduk pada pemfilteran alamat di atas). | Tidak | - |
Gunakan sebagai server MCP jarak jauh
Anda dapat menggunakan server MCP EduBase sebagai server MCP jarak jauh untuk klien MCP Anda. Untuk melakukannya, host server MCP di tempat yang dapat diakses klien, lalu konfigurasikan klien agar terhubung ke server. Jalankan dengan mode transport SSE atau HTTP yang dapat dialirkan, dan selalu gunakan HTTPS saat mengakses server dari jarak jauh melalui internet!
Autentikasi dengan server jarak jauh
Anda dapat menggunakan server dalam dua mode:
- Tanpa autentikasi klien: Dalam mode ini, server tidak akan meminta autentikasi apa pun dari klien. Mode ini berguna untuk pengujian atau pengembangan, atau di jaringan tertutup, tetapi tidak disarankan untuk penggunaan produksi. Untuk ini, Anda juga harus mengonfigurasi server dengan
EDUBASE_API_APPdanEDUBASE_API_KEY! - Dengan autentikasi token Bearer: Dalam mode ini, server akan meminta token Bearer dikirim bersama setiap permintaan. Ini adalah cara yang disarankan untuk menggunakan server dalam produksi. Anda dapat memperoleh token Bearer dari akun EduBase dengan membuat aplikasi integrasi dan memberikan ID Aplikasi serta Kunci Rahasia dalam format
{app}:{secret}, yang dikodekan base64 sebagai token. Server kemudian akan menggunakan token ini untuk mengautentikasi klien dan mengizinkan akses ke endpoint API. - Dengan OAuth 2.1 (EduBase sebagai IdP): Saat
EDUBASE_OAUTH=true, klien yang kompatibel (Claude Desktop, konektor Claude.ai, Cursor, konektor ChatGPT, dll.) menemukan server otorisasi EduBase melalui/.well-known/oauth-protected-resource, mendaftarkan diri secara dinamis (RFC 7591), memandu pengguna melalui layar persetujuan EduBase, dan menukar kode otorisasi (dengan PKCE S256) dengan token akses opak. Server MCP meneruskan token tersebut apa adanya ke API EduBase, yang mengaitkannya dengan integrasi MCP yang disediakan otomatis dan dibuat saat persetujuan pertama. Tidak perlu menyalin ID Aplikasi/Kunci Rahasia — pengguna cukup mengeklik "Connect EduBase" di klien mereka.
Penggunaan dengan Claude Desktop
Untuk panduan langkah demi langkah, lihat postingan blog kami tentang cara menghubungkan EduBase dengan Claude: Panduan Lengkap Integrasi MCP.
Menggunakan server MCP EduBase yang disediakan
Anda dapat menggunakan server MCP EduBase yang disediakan (jika tersedia) tanpa konfigurasi apa pun, cukup dengan menambahkannya sebagai server jarak jauh di klien Anda menggunakan URL https://domain.edubase.net/mcp (ganti dengan domain sebenarnya), jika klien mendukung autentikasi OAuth, atau dengan token Bearer yang sesuai di header Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
Disarankan bagi pengguna www.edubase.net, karena server dikelola dan diperbarui oleh kami, sehingga Anda tidak perlu khawatir tentang hosting atau konfigurasinya. Pastikan Anda menggunakan URL dan metode autentikasi yang benar saat menghubungkan klien.
Instalasi manual
Tambahkan berikut ini ke claude_desktop_config.json:
Menggunakan Node.js
Sebelum menjalankan server MCP, pastikan Node.js telah terinstal. Anda dapat mengunduhnya dari nodejs.org atau menggunakan pengelola paket seperti brew.
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"-y",
"@edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Atau unduh rilis server MCP EduBase atau klon repositorinya, lalu jalankan npm run build untuk membangun server. Jangan lupa sesuaikan /path/to/dist dengan direktori sebenarnya dan konfigurasikan variabel lingkungan!
{
"mcpServers": {
"edubase": {
"command": "node",
"args": [
"/path/to/dist/index.js"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Menggunakan Docker
Sebelum menjalankan server MCP, pastikan Docker telah terinstal dan sedang berjalan. Anda dapat mengunduhnya dari docker.com atau menggunakan pengelola paket. Jangan lupa konfigurasikan variabel lingkungan! Image tersedia untuk linux/amd64 dan linux/arm64 di Docker Hub sebagai edubase/mcp dan di GitHub Packages sebagai ghcr.io/edubase/mcp.
{
"mcpServers": {
"edubase": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"EDUBASE_API_URL",
"-e",
"EDUBASE_API_APP",
"-e",
"EDUBASE_API_KEY",
"edubase/mcp"
],
"env": {
"EDUBASE_API_URL": "https://domain.edubase.net/api",
"EDUBASE_API_APP": "your_integration_app_id",
"EDUBASE_API_KEY": "your_integration_secret_key"
}
}
}
}
Instalasi melalui server MCP jarak jauh
Anda dapat menggunakan server MCP EduBase yang disediakan (jika tersedia) sebagai server jarak jauh. Sebaiknya enkode EDUBASE_API_APP dan EDUBASE_API_KEY Anda dengan Base64, lalu gunakan sebagai token Bearer di header Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).
{
"mcpServers": {
"edubase": {
"command": "npx",
"args": [
"mcp-remote",
"https://domain.edubase.net/mcp",
"--header",
"Authorization: Bearer ${EDUBASE_API_APP}:${EDUBASE_API_KEY}"
]
}
}
}
Instalasi melalui Smithery
Untuk menginstal server MCP EduBase secara otomatis untuk Claude Desktop melalui Smithery:
npx -y @smithery/cli install @EduBase/MCP --client claude
Pengembangan
Jalankan npm test untuk membangun server dan memeriksa daftar tool: batas ukuran daftar tool dan instruksi server, deskripsi tool, mode toolset, mode toolset hanya-baca dan dinamis, serta penanganan konfigurasi transport HTTP. Jika tool baru melampaui batas, persingkat skemanya atau naikkan batas di test/server.test.mjs dengan sengaja, karena setiap klien membayar biaya daftar tool di setiap sesi.
Dokumen referensi di src/references dibuat dari dokumentasi pengembang EduBase. Buat ulang dokumen tersebut dengan node scripts/sync-references.mjs <path to the developer documentation repository> saat bidang pertanyaan atau format alur ujian berubah.
Menggabungkan pull request berlabel major, minor atau patch akan mengirimkan versi berikutnya ke main dan memulai alur kerja Publish, yang menerbitkan paket ke npm dan MCP Registry serta image kontainer ke Docker Hub dan GitHub Packages, lalu memberi tag pada commit dan membuat rilis GitHub setelah semuanya berhasil. Tanpa salah satu label ini, tidak ada yang dirilis. Versi yang ditetapkan secara manual dalam pull request akan dirilis apa adanya. Commit, tag, dan rilis dibuat oleh aplikasi rilis khusus, yang kredensialnya berada di lingkungan release. Alur kerja Publish menjalankan pengujian terlebih dahulu, memeriksa image yang dibangun sebelum mengunggahnya, dan masuk ke Docker Hub dengan OIDC menggunakan variabel DOCKERHUB_OIDC_CONNECTIONID dan DOCKERHUB_OIDC_USERNAME. Alur ini mengunggah ke GitHub Packages menggunakan GITHUB_TOKEN milik job, karena GitHub menolak token GitHub App di sana. Jalankan secara manual dengan versi tertentu untuk mencoba ulang atau membangun ulang rilis: apa pun yang sudah ada di npm dan MCP Registry akan dilewati, dan latest hanya akan berpindah untuk rilis terbaru.
Titik sinkronisasi dokumentasi: tool, prompt, dan referensi terakhir disinkronkan pada 2026-11-06 dengan Dokumentasi pengembang yang disinkronkan ke rilis EduBase
8.6.6(pull request dokumentasi untuk8.6.6), diverifikasi terhadap EduBase pada commita29c6af51. Untuk memperbarui server, jalankangit log --oneline <commit>..HEADdangit diff <commit>..HEAD -- docs/api/endpointsdi repositori dokumentasi pengembang, dari commit pull request dokumentasi untuk8.6.6, perbarui tool yang terdampak disrc/tools(beserta prompt dan panduan toolset-nya), buat ulang dokumen referensi, lalu pindahkan penanda ini ke commit HEAD yang baru. Jika keduanya berbeda, repositori EduBase yang menjadi acuan.
Kontak
Situs web: www.edubase.net
Dokumentasi Pengembang: developer.edubase.net
Email: info@edubase.net