EduBase

chính thức

Tương tác với EduBase, một nền tảng học tập điện tử toàn diện với các khả năng quản lý bài kiểm tra, kỳ thi và tổ chức nội dung nâng cao

GitHub
29
Dùng thử MCP nàyĐược tài trợ

Bạn có thể làm gì với EduBase MCP?

  • Quản lý nội dung giáo dục — Yêu cầu AI của bạn tạo, cập nhật hoặc truy xuất câu hỏi, bài kiểm tra, kỳ thi và cài đặt của chúng thông qua các bộ công cụ questions, quizzes và exams.

  • Phân tích kết quả và người dùng — Cho phép AI của bạn kéo kết quả bài kiểm tra/kỳ thi, lượt tải chứng chỉ, chi tiết người dùng và thành viên lớp học bằng cách sử dụng các bộ công cụ results, users và classes.

  • Kiểm soát quyền truy cập công cụ — Cấu hình các bộ công cụ nào được hiển thị qua EDUBASE_TOOLSETS, bật chế độ chỉ đọc với EDUBASE_READONLY, hoặc để mô hình kích hoạt các bộ công cụ theo yêu cầu với edubase_enable_toolsets và edubase_list_toolsets.

  • Tải lên và quản lý tệp — Sử dụng công cụ edubase_filebin để tải lên các tệp tạm thời, với bảo vệ SSRF và tùy chọn danh sách trắng máy chủ qua EDUBASE_FILEBIN_ALLOWED_HOSTS.

  • Truy cập từ xa an toàn — Kết nối qua OAuth 2.1 với EduBase làm nhà cung cấp danh tính, hoặc sử dụng xác thực mã thông báo Bearer với tiêu đề Authorization cho các triển khai sản xuất.

Tài liệu

EduBase logo

Máy chủ MCP EduBase

pre-commit.ci status Publish to MCP Registry

Kho lưu trữ này chứa triển khai Giao thức Ngữ cảnh Mô hình (MCP) máy chủ cho nền tảng EduBase. Nó cho phép các máy khách MCP (ví dụ: Claude Desktop) và các mô hình ngôn ngữ lớn tương tác với tài khoản EduBase của bạn và thực hiện các tác vụ thay mặt bạn. Máy chủ hỗ trợ các giao thức truyền tải stdio, SSE và streamable HTTP.

EduBase MCP demo GIF: Claude uploads math questions

EduBase là gì?

EduBase là một nền tảng giáo dục trực tuyến sáng tạo, mô-đun, giúp việc học trở nên thú vị, đơn giản và tương tác hơn, phù hợp cho các tổ chức giáo dục hoặc doanh nghiệp.

Tại sao chọn EduBase?

EduBase cách mạng hóa việc học kỹ thuật số với sự kết hợp độc đáo các tính năng:

  • Hệ thống bài kiểm tra nâng cao với tham số hóa cho phép vô số biến thể của cùng một câu hỏi, phát hiện gian lận theo thời gian thực, định dạng LaTeX đẹp mắt, hỗ trợ STEM tiên tiến và chấm điểm tự động
  • Môi trường học tập hợp nhất tập trung toàn bộ nội dung giáo dục của bạn — video, bài thi, tài liệu và mô-đun SCORM — trong một hệ thống trực quan duy nhất
  • Bảo mật cấp doanh nghiệp với các tính năng như tích hợp SSO, kiểm soát truy cập chi tiết, kiểm toán toàn diện và tuân thủ GDPR
  • Tích hợp với các hệ thống hiện có của bạn thông qua LTI, API toàn diện và các tùy chọn tích hợp tùy chỉnh
  • Công cụ hỗ trợ AI, chẳng hạn như EduBase Assistant, có thể ngay lập tức chuyển đổi nội dung hiện có của bạn thành các bài kiểm tra và đánh giá tương tác, hoặc dịch tài liệu của bạn từ ngôn ngữ này sang ngôn ngữ khác

Từ các tổ chức giáo dục đại học đến các bộ phận đào tạo doanh nghiệp, EduBase mở rộng quy mô để đáp ứng nhu cầu cụ thể của bạn trong khi vẫn duy trì trải nghiệm người dùng trực quan trên mọi thiết bị.

Video demo

Cùng nhau tạo và tải lên câu hỏi, lên lịch thi và phân tích kết quả người dùng với Claude:

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

Lấy thông tin xác thực API của bạn

Sau khi đăng nhập, trên Bảng điều khiển của bạn, hãy tìm menu Tích hợp, nhấp vào "thêm tích hợp" và chọn loại "EduBase API".

Nếu bạn không thấy tùy chọn này, hãy nhập mã kích hoạt MCPGITHUB hoặc liên hệ với chúng tôi để yêu cầu quyền truy cập tại info@edubase.net.

EduBase API credentials page

Công cụ

Mỗi điểm cuối API được tài liệu hóa đều có sẵn dưới dạng một công cụ, có tên là edubase_<method>_<endpoint>. Ví dụ: công cụ cho điểm cuối GET /user:me có tên là edubase_get_user_me. Các điểm cuối thẻ, quyền và chuyển nhượng hoạt động theo cùng một cách cho mọi loại nội dung, vì vậy chúng dùng chung một công cụ duy nhất cho mỗi phương thức với một đối số type (ví dụ: edubase_post_content_tag cho POST /exam:tag, POST /quiz:tag, v.v.). Xem tài liệu dành cho nhà phát triển của chúng tôi để biết thêm thông tin.

Bộ công cụ

Các công cụ được nhóm thành các bộ công cụ, để bạn chỉ có thể hiển thị những công cụ mình cần. Ít công cụ hơn sẽ sử dụng ít ngữ cảnh của mô hình hơn và giúp mô hình dễ dàng chọn đúng công cụ hơn. Mọi bộ công cụ đều được bật theo mặc định.

Bộ công cụCông cụ cho
filesTải lên tệp tạm thời (luôn được bật)
questionsCâu hỏi
quizzesBộ câu hỏi, câu hỏi, cài đặt và cấu hình chấm điểm của chúng
examsBài thi, cài đặt, người dùng, chứng chỉ và thương hiệu của chúng
resultsKết quả bài kiểm tra và bài thi, tải xuống chứng chỉ
usersNgười dùng, tên, nhóm và liên kết đăng nhập của họ
classesLớp học và tư cách thành viên lớp học
organizationsTổ chức, thành viên, phòng ban, năng lực và webhook
integrationsTích hợp và khóa của chúng
tagsThẻ và tệp đính kèm thẻ của nội dung
permissionsQuyền của người dùng trên nội dung và chuyển nhượng quyền sở hữu
metricsSố liệu tùy chỉnh

Chọn bộ công cụ bằng danh sách phân tách bằng dấu phẩy trong EDUBASE_TOOLSETS (ví dụ: questions,quizzes,exams). Đặt EDUBASE_READONLY=true để chỉ hiển thị các công cụ đọc dữ liệu (các công cụ get và các công cụ chỉ tạo liên kết tải xuống, như edubase_post_question_export).

Đặt EDUBASE_DYNAMIC_TOOLSETS=true để bật các bộ công cụ theo yêu cầu: các phiên bắt đầu chỉ với các công cụ quan trọng và mô hình bật các bộ công cụ cần thiết bằng công cụ edubase_enable_toolsets (được liệt kê với edubase_list_toolsets). Điều này giữ cho danh sách công cụ ban đầu nhỏ gọn cho các máy khách tải mọi công cụ trước, nhưng cần một máy khách làm mới danh sách công cụ khi được thông báo về các thay đổi.

Khi sử dụng giao thức truyền tải HTTP, máy khách có thể thu hẹp cấu hình hơn nữa cho phiên của riêng họ bằng các tiêu đề EduBase-Mcp-Toolsets, EduBase-Mcp-ReadOnly và EduBase-Mcp-Dynamic, hoặc các tham số truy vấn toolsets, read_only và dynamic_toolsets (ví dụ: https://domain.edubase.net/mcp?toolsets=exams&read_only=true). Một phiên không bao giờ có thể bật các bộ công cụ hoặc công cụ ghi mà cấu hình máy chủ đã vô hiệu hóa.

Cấu hình

Máy chủ MCP có thể được cấu hình bằng các biến môi trường. Các biến sau đây có sẵn:

BiếnMô tảBắt buộcGiá trị mặc định
EDUBASE_API_URLURL cơ sở của API EduBase, rất có thể là https://subdomain.edubase.net/api.Cóhttps://www.edubase.net/api
EDUBASE_API_APPID ứng dụng của ứng dụng tích hợp của bạn trên EduBase, app trên API EduBase. Tìm thông tin này trong cửa sổ chi tiết tích hợp trên EduBase.Không nếu sử dụng giao thức truyền tải HTTP với xác thực, nếu không thì Có-
EDUBASE_API_KEYKhóa bí mật của ứng dụng tích hợp của bạn trên EduBase, secret trên API EduBase. Tìm thông tin này cùng với ID ứng dụng trong cửa sổ chi tiết tích hợp trên EduBase.Không nếu sử dụng giao thức truyền tải HTTP với xác thực, nếu không thì Có-
EDUBASE_SSE_MODEKhởi động máy chủ MCP ở chế độ HTTP với giao thức truyền tải SSE. Giá trị phải là true.Khôngfalse
EDUBASE_STREAMABLE_HTTP_MODEKhởi động máy chủ MCP ở chế độ HTTP với giao thức truyền tải HTTP có thể phát trực tuyến. Giá trị phải là true.Khôngfalse
EDUBASE_TOOLSETSDanh sách phân tách bằng dấu phẩy các bộ công cụ được bật, hoặc all.Khôngall
EDUBASE_READONLYChỉ hiển thị các công cụ đọc dữ liệu. Giá trị phải là true.Khôngfalse
EDUBASE_OUTPUT_SCHEMASLược đồ đầu ra của các công cụ và kết quả công cụ có cấu trúc: off liệt kê các công cụ không có lược đồ đầu ra và chỉ trả về kết quả dưới dạng văn bản JSON, on bao gồm các lược đồ đầu ra hoàn chỉnh, fields bao gồm các lược đồ đầu ra mà không có mô tả trường (giữ các kết quả có cấu trúc, nhưng tiết kiệm hầu hết các token của lược đồ).Khôngfields
EDUBASE_CONFIG_PROVIDERSDanh sách phân tách bằng dấu phẩy các nhà cung cấp lưu trữ được phép cung cấp cấu hình phiên trong các yêu cầu khi sử dụng giao thức truyền tải HTTP. Hiện chỉ hỗ trợ smithery (tham số truy vấn config được mã hóa base64).Không-
EDUBASE_DYNAMIC_TOOLSETSBắt đầu các phiên chỉ với các công cụ tải lên tệp và để mô hình bật bộ công cụ theo yêu cầu. Giá trị phải là true.Khôngfalse
EDUBASE_HTTP_PORTMáy chủ HTTP sẽ lắng nghe trên cổng này nếu sử dụng chế độ truyền tải SSE hoặc HTTP có thể phát trực tuyến.Không3000
EDUBASE_OAUTHBật hành vi tài nguyên được bảo vệ OAuth 2.1: các yêu cầu chưa xác thực bị từ chối với 401 + WWW-Authenticate trỏ đến /.well-known/oauth-protected-resource và các token bearer được chuyển tiếp đến API EduBase.Khôngfalse
EDUBASE_OAUTH_AUTHORIZATION_SERVERURL cơ sở công khai của triển khai EduBase đóng vai trò là IdP OAuth. Được sử dụng để quảng cáo máy chủ ủy quyền trong tài liệu siêu dữ liệu tài nguyên được bảo vệ.Khôngsuy ra từ EDUBASE_API_URL
EDUBASE_OAUTH_RESOURCE_URLURL cơ sở công khai của máy chủ MCP này (chỉ báo tài nguyên OAuth). Được sử dụng trong tiêu đề WWW-Authenticate và siêu dữ liệu tài nguyên.Khôngsuy ra từ EDUBASE_API_URL
EDUBASE_ALLOW_PRIVATE_NETWORKKhi sử dụng giao thức truyền tải HTTP, công cụ edubase_filebin chặn các yêu cầu gửi đi đến các địa chỉ riêng tư, loopback, link-local và dành riêng (bảo vệ SSRF) và từ chối các đường dẫn tệp cục bộ. Đặt thành true để cho phép chúng, ví dụ: triển khai tự lưu trữ trên mạng riêng đáng tin cậy. Không có tác dụng ở chế độ stdio, nơi người dùng cục bộ là người gọi duy nhất.Khôngfalse
EDUBASE_FILEBIN_ALLOWED_HOSTSDanh sách cho phép tùy chọn phân tách bằng dấu phẩy các tên máy chủ được phép làm mục tiêu tải lên edubase_filebin (tên máy chủ chính xác hoặc bất kỳ tên miền phụ nào, ví dụ: edubase.net). Khi trống, mọi máy chủ công khai đều được phép (vẫn tuân theo bộ lọc địa chỉ ở trên).Không-

Sử dụng như một máy chủ MCP từ xa

Bạn có thể sử dụng máy chủ MCP EduBase như một máy chủ MCP từ xa cho máy khách MCP của mình. Để làm điều này, bạn cần lưu trữ máy chủ MCP ở nơi máy khách có thể truy cập, sau đó cấu hình máy khách để kết nối với máy chủ. Hãy khởi động nó với chế độ truyền tải SSE hoặc HTTP có thể phát trực tuyến và luôn sử dụng HTTPS khi truy cập máy chủ từ xa qua internet!

Xác thực với máy chủ từ xa

Bạn có thể sử dụng máy chủ ở hai chế độ:

  • Không có xác thực máy khách: Trong chế độ này, máy chủ sẽ không yêu cầu bất kỳ xác thực nào từ máy khách. Điều này hữu ích cho mục đích thử nghiệm hoặc phát triển, hoặc trong mạng kín nhưng không được khuyến nghị cho sản xuất. Để làm điều này, bạn phải cấu hình máy chủ với EDUBASE_API_APP và EDUBASE_API_KEY nữa!
  • Với xác thực token Bearer: Trong chế độ này, máy chủ sẽ yêu cầu một token Bearer được gửi kèm với mỗi yêu cầu. Đây là cách được khuyến nghị để sử dụng máy chủ trong sản xuất. Bạn có thể lấy token Bearer từ tài khoản EduBase của mình bằng cách tạo một ứng dụng tích hợp và cung cấp ID ứng dụng và Khóa bí mật ở định dạng {app}:{secret}, được mã hóa base64 dưới dạng token. Máy chủ sau đó sẽ sử dụng token này để xác thực máy khách và ủy quyền truy cập vào các điểm cuối API.
  • Với OAuth 2.1 (EduBase là IdP): Khi EDUBASE_OAUTH=true, các máy khách tương thích (Claude Desktop, bộ kết nối Claude.ai, Cursor, bộ kết nối ChatGPT, v.v.) khám phá máy chủ ủy quyền EduBase thông qua /.well-known/oauth-protected-resource, tự đăng ký động (RFC 7591), hướng dẫn người dùng qua màn hình đồng ý của EduBase và trao đổi mã ủy quyền (với PKCE S256) để lấy token truy cập không minh bạch. Máy chủ MCP chuyển tiếp token đó nguyên văn đến API EduBase, API này giải quyết nó thành tích hợp MCP được cấp phát tự động, được tạo khi đồng ý lần đầu. Không cần sao chép ID ứng dụng/Khóa bí mật — người dùng chỉ cần nhấp "Kết nối EduBase" trong máy khách của họ.

Sử dụng với Claude Desktop

Để có hướng dẫn từng bước, hãy xem bài đăng blog của chúng tôi về cách kết nối EduBase với Claude: Hướng dẫn tích hợp MCP hoàn chỉnh.

Sử dụng máy chủ MCP EduBase được cung cấp

Bạn có thể sử dụng máy chủ MCP EduBase được cung cấp (nếu có) mà không cần bất kỳ cấu hình nào, chỉ cần thêm nó làm máy chủ từ xa trong máy khách của bạn với URL https://domain.edubase.net/mcp (thay thế bằng tên miền thực tế), nếu nó hỗ trợ xác thực OAuth, hoặc với token Bearer phù hợp trong tiêu đề Authorization (Authorization: Bearer ${BASE64_ENCODED_TOKEN}).

Được khuyến nghị cho người dùng www.edubase.net, vì máy chủ được chúng tôi duy trì và cập nhật, và bạn không phải lo lắng về việc lưu trữ hoặc cấu hình nó. Chỉ cần đảm bảo sử dụng đúng URL và phương thức xác thực khi kết nối máy khách của bạn.

Cài đặt thủ công

Thêm nội dung sau vào claude_desktop_config.json của bạn:

Sử dụng Node.js

Trước khi chạy máy chủ MCP, hãy đảm bảo bạn đã cài đặt Node.js. Bạn có thể tải xuống từ nodejs.org hoặc sử dụng trình quản lý gói như 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"
      }
    }
  }
}

Hoặc tải xuống bản phát hành máy chủ MCP EduBase hoặc sao chép kho lưu trữ và chạy npm run build để xây dựng máy chủ. Đừng quên điều chỉnh /path/to/dist đến thư mục thực tế và cấu hình các biến môi trường!

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

Sử dụng Docker

Trước khi chạy máy chủ MCP, hãy đảm bảo bạn đã cài đặt Docker và nó đang chạy. Bạn có thể tải xuống từ docker.com hoặc sử dụng trình quản lý gói. Đừng quên cấu hình các biến môi trường!

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

Cài đặt qua máy chủ MCP từ xa

Bạn có thể sử dụng máy chủ MCP EduBase được cung cấp (nếu có) như một máy chủ từ xa. Chúng tôi khuyên bạn nên mã hóa Base64 EDUBASE_API_APP và EDUBASE_API_KEY của mình và sử dụng chúng làm mã thông báo Bearer trong tiêu đề 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}"
      ]
    }
  }
}

Cài đặt qua Smithery

Để cài đặt máy chủ MCP EduBase cho Claude Desktop tự động qua Smithery:

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

Phát triển

Chạy npm test để xây dựng máy chủ và kiểm tra danh sách công cụ: ngân sách kích thước của danh sách công cụ và hướng dẫn máy chủ, mô tả công cụ, bộ công cụ, các chế độ bộ công cụ chỉ đọc và động, cũng như cách xử lý cấu hình của truyền tải HTTP. Khi các công cụ mới vượt quá ngân sách, hãy rút ngắn lược đồ của chúng hoặc tăng ngân sách trong test/server.test.mjs một cách có chủ đích, vì mọi máy khách đều phải trả phí cho danh sách công cụ trong mỗi phiên.

Liên hệ

Trang web: www.edubase.net
Tài liệu dành cho nhà phát triển: developer.edubase.net
Email: info@edubase.net