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?

  • Mengelola konten edukasi — Minta AI Anda untuk membuat, memperbarui, atau mengambil soal, kuis, ujian, serta pengaturannya melalui toolset questions, quizzes, dan exams.

  • Menganalisis hasil dan pengguna — Minta AI Anda untuk menarik hasil kuis/ujian, unduhan sertifikat, detail pengguna, dan keanggotaan kelas menggunakan toolset results, users, dan classes.

  • Mengontrol akses tool — Konfigurasikan toolset mana yang diekspos melalui EDUBASE_TOOLSETS, aktifkan mode hanya-baca dengan EDUBASE_READONLY, atau biarkan model mengaktifkan toolset sesuai permintaan dengan edubase_enable_toolsets dan edubase_list_toolsets.

  • Mengunggah dan mengelola file — Gunakan tool edubase_filebin untuk mengunggah file sementara, dengan perlindungan SSRF dan daftar izin host opsional melalui EDUBASE_FILEBIN_ALLOWED_HOSTS.

  • Akses jarak jauh yang aman — Hubungkan melalui OAuth 2.1 dengan EduBase sebagai penyedia identitas, atau gunakan autentikasi token Bearer dengan header Authorization untuk deployment produksi.

Dokumentasi

EduBase logo

Server MCP EduBase

pre-commit.ci status Publish to MCP Registry

Repositori ini berisi implementasi Model Context Protocol (MCP) server untuk platform EduBase. Ini memungkinkan klien MCP (misalnya Claude Desktop) dan LLM untuk berinteraksi dengan akun EduBase Anda dan melakukan tugas atas nama Anda. Ini mendukung protokol transport stdio, SSE, dan streamable HTTP.

EduBase MCP demo GIF: Claude uploads math questions

Apa itu EduBase?

EduBase adalah platform pendidikan online yang inovatif, modular, dan interaktif yang membuat pembelajaran lebih menyenangkan, sederhana, dan interaktif, cocok untuk institusi pendidikan atau perusahaan.

Mengapa memilih EduBase?

EduBase merevolusi pembelajaran digital dengan kombinasi fitur uniknya:

  • Sistem Kuis Lanjutan dengan parameterisasi yang memungkinkan variasi tak terbatas dari pertanyaan yang sama, deteksi kecurangan real-time, typesetting LaTeX yang indah, dukungan STEM tingkat lanjut, dan penilaian otomatis
  • Lingkungan Belajar Terpadu yang memusatkan semua konten pendidikan Anda — video, ujian, dokumen, dan modul SCORM — dalam satu sistem yang intuitif
  • Keamanan Tingkat Perusahaan dengan fitur seperti integrasi SSO, kontrol akses granular, audit komprehensif, dan kepatuhan GDPR
  • Integrasi dengan sistem yang sudah ada melalui LTI, API komprehensif, dan opsi integrasi kustom
  • Alat Berbantuan AI, seperti Asisten EduBase, yang dapat secara instan mengubah konten yang sudah ada menjadi kuis dan penilaian interaktif, atau menerjemahkan materi Anda dari satu bahasa ke bahasa lain

Dari institusi pendidikan tinggi hingga departemen pelatihan perusahaan, EduBase dapat diskalakan untuk memenuhi kebutuhan spesifik Anda sambil mempertahankan pengalaman pengguna yang intuitif di semua perangkat.

Video demo

Membuat dan mengunggah pertanyaan secara kolaboratif, 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 Anda

Setelah masuk, di Dasbor Anda, cari menu Integrasi, klik "tambah integrasi" dan 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

Alat

Setiap endpoint API yang didokumentasikan tersedia sebagai alat, bernama edubase_<method>_<endpoint>. Misalnya, alat untuk endpoint GET /user:me bernama edubase_get_user_me. Endpoint tag, izin, dan transfer bekerja dengan cara yang sama untuk setiap jenis konten, sehingga mereka berbagi satu alat per metode dengan argumen type (misalnya edubase_post_content_tag untuk POST /exam:tag, POST /quiz:tag, dll.). Lihat dokumentasi pengembang kami untuk informasi lebih lanjut.

Toolset

Alat dikelompokkan ke dalam toolset, sehingga Anda hanya dapat mengekspos alat yang Anda butuhkan. Lebih sedikit alat menggunakan lebih sedikit konteks model dan memudahkan model untuk memilih alat yang tepat. Setiap toolset diaktifkan secara default.

ToolsetAlat untuk
filesUnggahan file sementara (selalu diaktifkan)
questionsPertanyaan
quizzesSet kuis, pertanyaannya, pengaturan, dan preset penilaian
examsUjian, pengaturannya, pengguna, sertifikat, dan branding
resultsHasil kuis dan ujian, unduhan sertifikat
usersPengguna, nama mereka, grup, dan tautan masuk
classesKelas dan keanggotaan kelas
organizationsOrganisasi, anggota, departemen, kompetensi, dan webhook
integrationsIntegrasi dan kunci mereka
tagsTag dan lampiran tag konten
permissionsIzin pengguna pada konten dan transfer kepemilikan
metricsMetrik kustom

Pilih toolset dengan daftar yang dipisahkan koma di EDUBASE_TOOLSETS (misalnya questions,quizzes,exams). Setel EDUBASE_READONLY=true untuk hanya mengekspos alat yang membaca data (alat get, dan alat yang hanya menghasilkan tautan unduhan, seperti edubase_post_question_export).

Setel EDUBASE_DYNAMIC_TOOLSETS=true untuk mengaktifkan toolset sesuai permintaan: sesi dimulai hanya dengan alat penting, dan model mengaktifkan toolset yang dibutuhkannya dengan alat edubase_enable_toolsets (terdaftar dengan edubase_list_toolsets). Ini menjaga daftar alat awal tetap kecil untuk klien yang memuat setiap alat di awal, tetapi membutuhkan klien yang menyegarkan daftar alat saat diberi tahu tentang perubahan.

Saat transport HTTP digunakan, klien dapat lebih mempersempit konfigurasi untuk sesi mereka 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 akan pernah dapat mengaktifkan toolset atau alat tulis yang dinonaktifkan oleh konfigurasi server.

Konfigurasi

Server MCP dapat dikonfigurasi menggunakan variabel lingkungan. Variabel berikut tersedia:

VariabelDeskripsiDiperlukanNilai default
EDUBASE_API_URLURL dasar API EduBase, kemungkinan besar https://subdomain.edubase.net/api.Yahttps://www.edubase.net/api
EDUBASE_API_APPID Aplikasi dari aplikasi integrasi Anda di EduBase, app di API EduBase. Temukan ini di jendela detail integrasi di EduBase.Tidak jika transport HTTP digunakan dengan autentikasi, jika tidak Ya-
EDUBASE_API_KEYKunci Rahasia dari aplikasi integrasi Anda di EduBase, secret di 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_MODEMulai server MCP dalam mode HTTP dengan transport SSE. Nilai harus true.Tidakfalse
EDUBASE_STREAMABLE_HTTP_MODEMulai server MCP dalam mode HTTP dengan transport HTTP streamable. Nilai harus true.Tidakfalse
EDUBASE_TOOLSETSDaftar yang dipisahkan koma dari toolset yang diaktifkan, atau all.Tidakall
EDUBASE_READONLYHanya mengekspos alat yang membaca data. Nilai harus true.Tidakfalse
EDUBASE_OUTPUT_SCHEMASSkema keluaran alat dan hasil alat terstruktur: off mencantumkan alat tanpa skema keluaran dan mengembalikan hasil hanya sebagai teks JSON, on menyertakan skema keluaran lengkap, fields menyertakan skema keluaran tanpa deskripsi bidang (menjaga hasil terstruktur, tetapi menghemat sebagian besar token skema).Tidakfields
EDUBASE_CONFIG_PROVIDERSDaftar yang dipisahkan koma dari penyedia hosting yang diizinkan untuk memasok konfigurasi sesi dalam permintaan saat transport HTTP digunakan. Saat ini hanya smithery yang didukung (parameter kueri config yang dienkode base64).Tidak-
EDUBASE_DYNAMIC_TOOLSETSMulai sesi hanya dengan alat unggah file dan biarkan model mengaktifkan toolset sesuai permintaan. Nilai harus true.Tidakfalse
EDUBASE_HTTP_PORTServer HTTP akan mendengarkan di port ini jika mode transport SSE atau HTTP streamable digunakan.Tidak3000
EDUBASE_OAUTHMengaktifkan perilaku sumber daya yang dilindungi OAuth 2.1: permintaan yang tidak diautentikasi ditolak dengan 401 + WWW-Authenticate yang menunjuk ke /.well-known/oauth-protected-resource, dan token bearer diteruskan ke API EduBase.Tidakfalse
EDUBASE_OAUTH_AUTHORIZATION_SERVERURL dasar publik dari penyebaran EduBase yang bertindak sebagai IdP OAuth. Digunakan untuk mengiklankan server otorisasi dalam dokumen metadata sumber daya yang dilindungi.Tidakditurunkan dari EDUBASE_API_URL
EDUBASE_OAUTH_RESOURCE_URLURL dasar publik dari server MCP ini (indikator sumber daya OAuth). Digunakan di header WWW-Authenticate dan metadata sumber daya.Tidakditurunkan dari EDUBASE_API_URL
EDUBASE_ALLOW_PRIVATE_NETWORKSaat transport HTTP digunakan, alat edubase_filebin memblokir permintaan keluar ke alamat pribadi, loopback, link-local, dan cadangan (perlindungan SSRF) dan menolak jalur file lokal. Setel ke true untuk mengizinkannya, misalnya penyebaran yang dihosting sendiri di jaringan pribadi tepercaya. Tidak berpengaruh dalam mode stdio, di mana pengguna lokal adalah satu-satunya pemanggil.Tidakfalse
EDUBASE_FILEBIN_ALLOWED_HOSTSDaftar izin opsional yang dipisahkan koma dari nama host yang diizinkan sebagai target unggahan edubase_filebin (host persis atau subdomain apa pun, misalnya edubase.net). Saat kosong, host publik apa pun diizinkan (masih tunduk pada pemfilteran alamat di atas).Tidak-

Penggunaan sebagai server MCP jarak jauh

Anda dapat menggunakan server MCP EduBase sebagai server MCP jarak jauh untuk klien MCP Anda. Untuk melakukan ini, Anda perlu menghosting server MCP di tempat klien dapat mengaksesnya, lalu mengonfigurasi klien untuk terhubung ke server. Mulai dengan mode transport SSE atau HTTP streamable 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 memerlukan autentikasi apa pun dari klien. Ini berguna untuk tujuan pengujian atau pengembangan, atau di jaringan tertutup tetapi tidak disarankan untuk penggunaan produksi. Untuk ini, Anda harus mengonfigurasi server dengan EDUBASE_API_APP dan EDUBASE_API_KEY juga!
  • Dengan autentikasi token Bearer: Dalam mode ini, server akan memerlukan token Bearer untuk dikirim dengan setiap permintaan. Ini adalah cara yang disarankan untuk menggunakan server dalam produksi. Anda dapat memperoleh token Bearer dari akun EduBase Anda dengan membuat aplikasi integrasi dan memberikan ID Aplikasi dan Kunci Rahasia dalam format {app}:{secret}, dienkode base64 sebagai token. Server kemudian akan menggunakan token ini untuk mengautentikasi klien dan mengotorisasi 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) untuk token akses buram. Server MCP meneruskan token itu apa adanya ke API EduBase, yang menyelesaikannya ke integrasi MCP yang disediakan otomatis, dibuat pada persetujuan pertama. Tidak ada ID Aplikasi/Kunci Rahasia yang perlu disalin — pengguna cukup mengklik "Hubungkan EduBase" di klien mereka.

Penggunaan dengan Claude Desktop

Untuk panduan langkah demi langkah, lihat posting blog kami tentang cara menghubungkan EduBase dengan Claude: Panduan Integrasi MCP Lengkap.

Menggunakan server MCP EduBase yang disediakan

Anda dapat menggunakan server MCP EduBase yang disediakan (jika tersedia) tanpa konfigurasi apa pun, hanya dengan menambahkannya sebagai server jarak jauh di klien Anda dengan URL https://domain.edubase.net/mcp (ganti dengan domain sebenarnya), jika mendukung autentikasi OAuth, atau dengan token Bearer yang sesuai di header Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).

Direkomendasikan untuk pengguna www.edubase.net, karena server dikelola dan diperbarui oleh kami, dan Anda tidak perlu khawatir tentang hosting atau konfigurasinya. Pastikan untuk menggunakan URL dan metode autentikasi yang benar saat menghubungkan klien Anda.

Menginstal secara manual

Tambahkan berikut ini ke claude_desktop_config.json Anda:

Menggunakan Node.js

Sebelum menjalankan server MCP, pastikan Anda memiliki Node.js terinstal. Anda dapat mengunduhnya dari nodejs.org atau menggunakan manajer 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 repositori dan jalankan npm run build untuk membangun server. Jangan lupa untuk menyesuaikan /path/to/dist ke 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 Anda memiliki Docker terinstal dan berjalan. Anda dapat mengunduhnya dari docker.com atau menggunakan manajer paket. Jangan lupa untuk konfigurasikan variabel lingkungan!

{
  "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"
      }
    }
  }
}

Menginstal melalui server MCP jarak jauh

Anda dapat menggunakan server MCP EduBase yang disediakan (jika tersedia) sebagai server jarak jauh. Kami merekomendasikan untuk melakukan encoding Base64 pada EDUBASE_API_APP dan EDUBASE_API_KEY Anda dan menggunakannya 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}"
      ]
    }
  }
}

Memasang melalui Smithery

Untuk memasang server MCP EduBase untuk Claude Desktop secara otomatis melalui Smithery:

npx -y @smithery/cli install @EduBase/MCP --client claude

Pengembangan

Jalankan npm test untuk membangun server dan memeriksa daftar alat: anggaran ukuran daftar alat dan instruksi server, deskripsi alat, kumpulan alat, mode kumpulan alat hanya-baca dan dinamis, serta penanganan konfigurasi transportasi HTTP. Ketika alat baru melebihi anggaran, perpendek skema mereka atau naikkan anggaran di test/server.test.mjs secara sengaja, karena setiap klien membayar daftar alat di setiap sesi.

Kontak

Situs Web: www.edubase.net
Dokumentasi Pengembang: developer.edubase.net
Email: info@edubase.net