{"name":"Ankiren Learn","version":"1.0.0","description":"LMS của Ankiren: khoá, chương, bài giảng, bài tập, tủ thẻ.","mcp_endpoint":"https://mcp-learn.ankiren.com/mcp","auth":"OAuth 2.1 (PKCE) qua iam.ankiren.com, hoặc Authorization: Bearer <Personal Access Token ank_…>","tools":[{"name":"list_courses","description":"Liệt kê khoá của tài khoản trên learn, cả khoá soạn lẫn khoá tham gia. `domain` khác rỗng là khoá của app nguồn, chỉ đọc được ở đây. `myRole` là vai trò của tài khoản."},{"name":"get_course","description":"Xem một khoá: thông tin, các chương, các bài học."},{"name":"create_course","description":"Tạo khoá mới của riêng learn, tài khoản là chủ khoá. Khoá mới ở trạng thái nháp, chưa ai thấy."},{"name":"update_course","description":"Sửa tên, tóm tắt, mô tả khoá. Không đổi được khoá của app nguồn."},{"name":"add_module","description":"Thêm một chương vào cuối khoá."},{"name":"rename_module","description":"Đổi tên chương."},{"name":"delete_module","description":"Xoá chương cùng bài giảng và bài tập của nó. Chỉ xoá được khi chưa ai học; đã có người học thì báo lỗi 409. Không khôi phục được từ đây."},{"name":"list_module_items","description":"Liệt kê bài giảng và bài tập của chương theo đúng thứ tự, không có đáp án."},{"name":"reorder_module_items","description":"Xếp lại bài giảng và bài tập trong chương, xen kẽ tuỳ ý. `items` phải đủ mọi bài tập và bài giảng có nội dung; thiếu hoặc lạ thì báo 409 và không ghi gì."},{"name":"get_exercise","description":"Đọc một bài tập đủ đáp án. Chỉ chủ khoá và đồng giảng đọc được."},{"name":"add_exercise","description":"Thêm bài tập vào cuối chương. Phải có đề và đáp án ở mọi ô."},{"name":"update_exercise","description":"Sửa bài tập. Chỉ cần gửi trường muốn đổi, trường khác giữ nguyên."},{"name":"delete_exercise","description":"Xoá bài tập. Chỉ xoá được khi chưa ai làm; đã có người làm thì báo lỗi 409. Không khôi phục được từ đây."},{"name":"add_exercise_image","description":"Tải ảnh cho bài tập, có hiệu lực ngay. slot: prompt (ảnh đề) hoặc solution (ảnh lời giải)."},{"name":"get_lecture","description":"Đọc một bài giảng đủ khối, kèm mediaKey của ảnh để gửi lại khi sửa."},{"name":"add_lecture","description":"Thêm bài giảng vào cuối chương. Muốn đặt trước bài tập thì gọi reorder_module_items sau đó."},{"name":"update_lecture","description":"Thay cả bài giảng: tên và toàn bộ khối. Đọc bằng get_lecture trước để không mất nội dung."},{"name":"delete_lecture","description":"Xoá bài giảng. Chỉ xoá được khi chưa ai mở; đã có người học thì báo lỗi 409. Không khôi phục được từ đây."},{"name":"upload_lecture_image","description":"Tải ảnh dùng trong bài giảng của chương, trả `mediaKey`. Ảnh chỉ hiện khi đưa mediaKey vào một khối image rồi lưu bài."},{"name":"list_decks","description":"Liệt kê tủ thẻ ôn tập của tài khoản, kèm số thẻ."}]}