EduBase

resmi

Berinteraksi 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

EduBase logo

Server MCP EduBase

pre-commit.ci status Publish

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.

EduBase MCP demo GIF: Claude uploads math questions

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:

Demonstrating EduBase's MCP server to collaboratively create and upload questions, schedule exams and analyze results.

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.

EduBase API credentials page

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.

ToolsetTools untuk
filesUnggahan file sementara (selalu diaktifkan)
questionsPertanyaan
quizzesSet kuis, pertanyaan, pengaturan, dan preset penilaiannya
examsUjian, pengaturan, pengguna, sertifikat, branding, dan alur pembelajarannya
resultsHasil kuis dan ujian, unduhan sertifikat
usersPengguna, nama, grup, dan tautan login mereka
classesKelas dan keanggotaan kelas
organizationsOrganisasi, anggota, departemen, jabatan, kompetensi, dan webhook
integrationsIntegrasi dan kuncinya
tagsTag dan lampiran tag pada konten
permissionsIzin pengguna pada konten dan transfer kepemilikan
metricsMetrik 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.

PromptFungsinyaArgumen
Buat pertanyaan (edubase_prompt_create_question)Menulis pertanyaan baru dan menerbitkannya ke QuestionBase Andatype, 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 kuisdocument, 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 darinyatopic, 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 diperlukansama seperti Buat ujian
Salin ujian (edubase_prompt_copy_exam)Membuat ujian baru dengan set kuis dan pengaturan yang sama untuk rentang waktu baruexam, schedule, opsional title
Tetapkan kelas ke ujian (edubase_prompt_assign_class_to_exam)Menetapkan anggota aktif suatu kelas ke ujianexam, class
Ringkas hasil ujian (edubase_prompt_summarize_exam_results)Menganalisis hasil ujian dan secara opsional menyimpan ringkasannya ke ujianexam, 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 kendalaexam

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:

VariabelDeskripsiWajibNilai default
EDUBASE_API_URLURL dasar API EduBase, kemungkinan besar https://subdomain.edubase.net/api.Yahttps://www.edubase.net/api
EDUBASE_API_APPID 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_KEYKunci 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_MODEJalankan server MCP dalam mode HTTP dengan transport SSE. Nilai harus true.Tidakfalse
EDUBASE_STREAMABLE_HTTP_MODEJalankan server MCP dalam mode HTTP dengan transport HTTP yang dapat dialirkan. Nilai harus true.Tidakfalse
EDUBASE_TOOLSETSDaftar toolset yang diaktifkan, dipisahkan koma toolsets, atau all.Tidakall
EDUBASE_READONLYHanya tampilkan tool yang membaca data. Nilai harus true.Tidakfalse
EDUBASE_OUTPUT_SCHEMASSkema 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).Tidakfields
EDUBASE_CONFIG_PROVIDERSDaftar 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_RESOURCESCantumkan ujian dan set Kuis akun sebagai resources. Atur ke false untuk menonaktifkannya, misalnya saat server diperiksa tanpa kredensial. Dokumen referensi tetap tersedia.Tidaktrue
EDUBASE_DYNAMIC_TOOLSETSMulai sesi hanya dengan tool unggah file dan biarkan model mengaktifkan toolsets sesuai kebutuhan. Nilai harus true.Tidakfalse
EDUBASE_ELICITATIONMinta 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.Tidaktrue
EDUBASE_HTTP_PORTServer HTTP akan mendengarkan pada port ini jika mode transport SSE atau HTTP yang dapat dialirkan digunakan.Tidak3000
EDUBASE_OAUTHMengaktifkan 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.Tidakfalse
EDUBASE_OAUTH_AUTHORIZATION_SERVERURL dasar publik deployment EduBase yang bertindak sebagai IdP OAuth. Digunakan untuk mengiklankan server otorisasi dalam dokumen metadata protected-resource.Tidakditurunkan dari EDUBASE_API_URL
EDUBASE_OAUTH_RESOURCE_URLURL dasar publik server MCP ini (indikator resource OAuth). Digunakan dalam header WWW-Authenticate dan metadata resource.Tidakditurunkan dari EDUBASE_API_URL
EDUBASE_ALLOW_PRIVATE_NETWORKSaat 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.Tidakfalse
EDUBASE_FILEBIN_ALLOWED_HOSTSDaftar 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_APP dan EDUBASE_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 untuk 8.6.6), diverifikasi terhadap EduBase pada commit a29c6af51. Untuk memperbarui server, jalankan git log --oneline <commit>..HEAD dan git diff <commit>..HEAD -- docs/api/endpoints di repositori dokumentasi pengembang, dari commit pull request dokumentasi untuk 8.6.6, perbarui tool yang terdampak di src/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