io.usefulapi/learnworlds

LearnWorlds MCP by usefulapi

Check LearnWorlds courses, learners, progress, grades and payments, and enroll or tag users.

1.11.1
Version
remote
Transport
20
Tools

Security review

Review passed

Reviewed 1d ago.

  • tools: 20 tools scanned
  • metadata: scanned

No findings.

Tools (20)

  • learnworlds_list_courses

    List the school's courses, newest first, 50 per page — title, price fields, access (paid/free/draft...), categories and author. A cheap way to confirm the credentials work. LearnWorlds: GET /v2/courses.

  • learnworlds_get_course

    Fetch one course by id (its slug). LearnWorlds: GET /v2/courses/{id}.

  • learnworlds_get_course_contents

    The course outline: its sections (with drip-feed settings) and the learning activities (videos, PDFs, SCORM, assessments, certificates...) in each, with their ids. LearnWorlds: GET /v2/courses/{id}/contents.

  • learnworlds_get_course_analytics

    Course-level analytics: students, learning units, average score and success rate, total study time, average time to finish, social interactions and certificates issued. LearnWorlds: GET /v2/courses/{id}/analytics.

  • learnworlds_list_course_users

    The users enrolled in one course, newest first (20 per page by default). LearnWorlds: GET /v2/courses/{id}/users.

  • learnworlds_get_course_grades

    Assessment grades of the users enrolled in a course — per user and learning unit, with submission time. LearnWorlds: GET /v2/courses/{id}/grades.

  • learnworlds_list_users

    List the school's users, newest first (20 per page by default), filterable by status, role, tags, registration date and custom fields. All filters are ANDed. LearnWorlds: GET /v2/users.

  • learnworlds_get_user

    Fetch one user by id or email — profile, role, tags, sign-up fields, UTMs and last login. LearnWorlds: GET /v2/users/{id}.

  • learnworlds_list_user_courses

    The courses a user is enrolled in, with enrollment and expiry dates (50 per page). LearnWorlds: GET /v2/users/{id}/courses.

  • learnworlds_get_user_course_progress

    A user's progress in one course — status, progress rate, average score, time on course, completed units, and a per-section / per-activity breakdown. LearnWorlds: GET /v2/users/{id}/courses/{cid}/progress.

  • learnworlds_list_payments

    List payments, newest first (50 per page by default) — product, price, discount, tax, coupon, affiliate, gateway and billing info. All filters are ANDed. LearnWorlds: GET /v2/payments.

  • learnworlds_get_payment

    Fetch one payment by payment id or transaction id. LearnWorlds: GET /v2/payments/{id}.

  • learnworlds_list_certificates

    Certificates awarded, newest first (20 per page), for a course and/or a user — at least one of course_id or user_id is required. LearnWorlds: GET /v2/certificates.

  • learnworlds_list_user_groups

    List the school's user groups (cohorts / B2B seats), newest first — title, products, group managers, capacity and tags. LearnWorlds: GET /v2/user_groups.

  • learnworlds_list_event_logs

    The school's activity log (50 per page) — registrations, logins, purchases, enrollments, course completions, certificates, subscription changes and more, filterable by user, activity and time. LearnWorlds: GET /v2/event-logs.

  • learnworlds_create_user

    WRITE: create a learner account. Deliberately no password or admin flag — set send_registration_email so the learner sets their own password. LearnWorlds: POST /v2/users.

  • learnworlds_update_user

    WRITE: update a user's email, username, marketing consent, sign-up fields or tags. Only the fields you pass are sent. Passing `tags` REPLACES the tag list — use learnworlds_update_user_tags to add/remove individual tags. LearnWorlds: PUT /v2/users/{id}.

  • learnworlds_update_user_tags

    WRITE: add (attach) or remove (detach) tags on a user, leaving their other tags untouched. Reversible with the opposite action. LearnWorlds: PUT /v2/users/{id}/tags.

  • learnworlds_enroll_user

    WRITE: manually enroll a user in a course, bundle or subscription. This grants access and records a manual enrollment at the given price (use 0 for a free grant) — it does not charge the learner's card. Optionally emails the learner. LearnWorlds: POST /v2/users/{id}/enrollment.

  • learnworlds_add_user_to_group

    WRITE: add an existing user to a user group (which may enroll them in the group's products). LearnWorlds: POST /v2/user_groups/{id}/users/{uid}.