LearnWorlds MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HOST | No | HTTP bind address | 0.0.0.0 |
| PORT | No | HTTP listen port | 8765 |
| MCP_HTTP_PATH | No | HTTP MCP route | /mcp |
| MCP_TRANSPORT | No | stdio or http (the Docker image defaults to http) | stdio |
| MCP_SHARED_TOKEN | No | Require Authorization: Bearer <token> on /mcp | |
| LEARNWORLDS_BASE_URL | Yes | Your school's API base URL | |
| LEARNWORLDS_API_TOKEN | Yes | Bearer access token | |
| LEARNWORLDS_CLIENT_ID | Yes | Sent as the Lw-Client header | |
| LEARNWORLDS_TIMEOUT_MS | No | Per-attempt request timeout | 30000 |
| LEARNWORLDS_MAX_RETRIES | No | Retries on 429 / 5xx / network errors | 3 |
| LEARNWORLDS_MAX_REQUESTS | No | Client-side requests per window (0 disables throttling) | 25 |
| LEARNWORLDS_OPENAPI_PATH | No | Load a different OpenAPI YAML | |
| LEARNWORLDS_RATE_WINDOW_MS | No | Rate-limit window in ms | 10000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_coursesA | ๐ข READ-ONLY ยท GET /v2/courses Get all courses. Returns a list of all courses of the school. The courses are in sorted order, with the most recently created course appearing first, and the list is paginated, with a limit of 50 courses per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_courseA | ๐ก WRITE ยท creates data ยท POST /v2/courses Creates a new course. The endpoint response is the created Course resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_courseA | ๐ข READ-ONLY ยท GET /v2/courses/{id} Get a course. Returns information about the course specified by the provided course id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_courseA | ๐ก WRITE ยท updates data ยท PUT /v2/courses/{id} Updates the course specified by the provided course id. The endpoint response is the updated Course resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_analytics_courseA | ๐ข READ-ONLY ยท GET /v2/courses/{id}/analytics Get analytics for a course. Returns analytics about the course specified by the provided course id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_analytics_learning_activityA | ๐ข READ-ONLY ยท GET /v2/courses/{id}/units/{uid}/analytics Get analytics for a learning activity. Returns analytics about a learning activity of a course specified by the provided course id and learning activity id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_bundlesA | ๐ข READ-ONLY ยท GET /v2/bundles Get all bundles. Returns a list of all bundles of the school. The bundles are in sorted order, with the most recently created bundle appearing first, and the list is paginated, with a limit of 20 bundles per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_bundleA | ๐ข READ-ONLY ยท GET /v2/bundles/{id} Get a bundle. Returns the bundle specified by the provided bundle id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_list_subscription_plansA | ๐ข READ-ONLY ยท GET /v2/subscription-plans Get a list of subscription plans. Returns a list of all subscription plans. The subscription plans are in sorted order, with the most recently created subscription plan appearing first, and the list is paginated, with a limit of 50 subscription plans per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_subscription_planA | ๐ข READ-ONLY ยท GET /v2/subscription-plans/{id} Get subscription plan. Returns the subscription plan specified by the provided subscription plan id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_users_subscriptionsA | ๐ข READ-ONLY ยท GET /v2/user-subscriptions Get users subscriptions. Returns a list with the user subscriptions. The subscriptions are in sorted order based on user's creation date in descending order and the list is paginated, with a limit of 20 subscriptions per page. To refine the list of subscriptions, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_active_installmentsA | ๐ข READ-ONLY ยท GET /v2/installments/active Get active installments. Return a list with active installments of users. The installments are in sorted order based on user's creation date in descending order, and the list is paginated, with a limit of 50 installments per page. To refine the list of installments, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_school_eventsA | ๐ข READ-ONLY ยท GET /v2/school/events Get school events. Returns all the upcoming scheduled school events, regarding course drip feed, file assignment and live session. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_usersA | ๐ข READ-ONLY ยท GET /v2/users Get all users. Returns a list with all the users of the school. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a default limit of 20 users per page. To refine the list of users, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_userA | ๐ก WRITE ยท creates data ยท POST /v2/users Creates a new user. The endpoint response is the created User resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_userA | ๐ข READ-ONLY ยท GET /v2/users/{id} Get a user. Returns the user specified by the provided user id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_userA | ๐ก WRITE ยท updates data ยท PUT /v2/users/{id} Updates user information. The endpoint response is the updated User resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_courses_enrollments_userA | ๐ข READ-ONLY ยท GET /v2/users/{id}/courses Get courses (enrollments) of user. Returns a list with all course enrollment data of the specified user. The list is paginated, with a limit of 50 course enrollments per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_users_per_courseA | ๐ข READ-ONLY ยท GET /v2/courses/{id}/users Get all users per course. Retrieves all the users enrolled in the course specified by the provided course id. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a default limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_course_sectionA | ๐ก WRITE ยท creates data ยท POST /v2/courses/{id}/sections Creates a new course section in the course, specified by the course id. The endpoint response is the course contents including the newly created section. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_paymentsA | ๐ข READ-ONLY ยท GET /v2/payments Get payments. Returns a list with all the payments. The payments are in sorted order, with the most recently created payment appearing first, and the list is paginated, with a default limit of 50 payments per page. To refine the list of payments, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_paymentA | ๐ข READ-ONLY ยท GET /v2/payments/{id} Get payment. Returns information about the payment specified by the provided payment id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_contents_courseA | ๐ข READ-ONLY ยท GET /v2/courses/{id}/contents Get contents of a course. Returns the contents of the course specified by the provided course id. Includes sections and learning activities. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_leadsA | ๐ข READ-ONLY ยท GET /v2/leads Get leads. Returns a list with all the leads of the school. The leads are in sorted order, with the most recently created leads appearing first, and the list is paginated, with a limit of 20 leads per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_products_userA | ๐ข READ-ONLY ยท GET /v2/users/{id}/products Get products of user. Returns a list with all the products of the user specified by the provided user id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_user_tagsA | ๐ก WRITE ยท updates data ยท PUT /v2/users/{id}/tags Updates the tags of the user specified by the provided user Id or email. The endpoint response is the updated User resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_promotions_couponsA | ๐ข READ-ONLY ยท GET /v2/promotions/{pid}/coupons Get promotions coupons. Returns all coupons for the promotion specified by the provided promotion id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| create_coupon_promotionA | ๐ก WRITE ยท creates data ยท POST /v2/promotions/{pid}/coupons Creates a coupon for the promotion specified by the provided promotion id. The endpoint response is the created coupon resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_coupon_usageA | ๐ข READ-ONLY ยท GET /v2/promotions/{pid}/coupons/{cid}/usage Get coupon usage. Returns information about the coupon specified by the provided promotion id and coupon code. More specifically, the coupon usage details are listed along with the asocciated payments.The payments are in sorted order, with the most recently created payment appearing first, and the list is paginated, with a limit of 50 payments per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| enroll_user_productA | ๐ก WRITE ยท creates data ยท POST /v2/users/{id}/enrollment Enroll user to product, regarding course, bundle, manual subscription Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| unenroll_user_productA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/users/{id}/enrollment Unenroll user from a product specified by the provided product id Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_affiliatesA | ๐ข READ-ONLY ยท GET /v2/affiliates Get affiliates. Returns a list with all the affiliates of the school. The affiliates are in sorted order, with the most recently created affiliate appearing first, and the list is paginated, with a limit of 20 affiliates per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_leads_per_affiliateA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/leads Get all leads per affiliate. Retrieves all the leads connected with the affiliate specified by the provided affiliate id. The leads are in sorted order, with the most recently created lead appearing first, and the list is paginated, with a limit of 20 leads per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| update_certificate_reissueA | ๐ก WRITE ยท updates data ยท PUT /v2/certificates/{id} Update a certificate (Reissue). Updates the certificate specified by the provided certificate id. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| delete_certificate_revoke_invalidateA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/certificates/{id} Delete a certificate (Revoke / Invalidate). Deletes the certificate specified by the provided certificate id. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_promotionsA | ๐ข READ-ONLY ยท GET /v2/promotions Get promotions. Returns a list with all the promotions of the school. The promotions are in sorted order, with the most recently created promotion appearing first, and the list is paginated, with a limit of 20 promotions per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_promotionA | ๐ก WRITE ยท creates data ยท POST /v2/promotions Create a new Promotion without coupons. The endpoint response is the created Promotion resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_customers_per_affiliateA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/customers Get all customers per affiliate. Retrieves all the customers connected with the affiliate specified by the provided affiliate id. The customers are in sorted order, with the most recently created customer appearing first, and the list is paginated, with a limit of 20 customers per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_affiliate_paymentsA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/payments Get affiliate payments. Returns a list with all the affiliate payments. The payments are in sorted order, with the most recently created payment appearing first, and the list is paginated, with a limit of 50 payments per page. To refine the list of payments, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_invoice_link_per_paymentA | ๐ข READ-ONLY ยท GET /v2/payments/{id}/invoice-link Get invoice link per payment. Returns the invoice number and a private expiring link to acccess the invoice. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_progress_per_courseA | ๐ข READ-ONLY ยท GET /v2/users/{id}/courses/{cid}/progress Get user progress per course. Returns information about the user progress for the user and course specified by the provided user id and course id. The result also includes the breakdown of user progress data per learning activity. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_segmentsA | ๐ข READ-ONLY ยท GET /v2/users/segments Get user segments. Returns a list of all user segments in the school. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| suspend_userA | ๐ก WRITE ยท updates data ยท PUT /v2/users/{id}/suspend Suspends a user from loging in or creating another account. The endpoint response is the suspended User resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| unsuspend_userA | ๐ก WRITE ยท updates data ยท PUT /v2/users/{id}/unsuspend Unsuspends a user. The endpoint response is the unsuspended User resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_certificatesA | ๐ข READ-ONLY ยท GET /v2/certificates Get certificates. Returns a list with certificates. The certificates are in sorted order, with the most recently created user appearing first, and the list is paginated, with a limit of 20 certificates per page. To refine the list of certificates, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). At least one query parameter is required. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_promotionA | ๐ข READ-ONLY ยท GET /v2/promotions/{id} Get promotion. Returns the promotion specified by the provided promotion id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_users_segmentA | ๐ข READ-ONLY ยท GET /v2/users/by-segment Get all users by segment. Retrieves all the users in the segment specified by the provided segment id. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a limit of 20 user per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_users_productA | ๐ข READ-ONLY ยท GET /v2/users/by-product Get all users by product. Retrieves all the users with access to the product specified by the provided product id. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_upcoming_affiliate_payoutsA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/payouts/upcoming Get upcoming affiliate payouts. Returns the upcoming payouts specified by the provided affiliate id Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_due_affiliate_payoutsA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/payouts/due Get due affiliate payouts. Returns the due payouts related to the provided affiliate Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_completed_affiliate_payoutsA | ๐ข READ-ONLY ยท GET /v2/affiliates/{id}/payouts/completed Get completed affiliate payouts. Returns a list with all the completed payouts related to the provided affiliate. The payouts are in sorted order, with the most recently created payouts appearing first, and the list is paginated, with a limit of 20 payouts per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| create_coupons_promotion_bulkA | ๐ก WRITE ยท creates data ยท POST /v2/promotions/{id}/coupons-bulk Bulk create coupons in a promotion. The endpoint response is an array with the created coupon resources. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_event_logsA | ๐ข READ-ONLY ยท GET /v2/event-logs Get event logs. Returns a list with all event logs of the school. The list is paginated, with a limit of 50 event logs per page. To refine the list of event logs, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| make_affiliateA | ๐ก WRITE ยท creates data ยท POST /v2/affiliates/{id} Makes a user specified by the provided user id an affiliate. The endpoint response is the affiliate resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_user_progressA | ๐ข READ-ONLY ยท GET /v2/users/{id}/progress Get user progress. Returns information about the user progress, for the user specified by the provided user id, for all courses the user is enrolled in. The result also includes the breakdown of user progress data per learning activity. The list is paginated, with a default limit of 20 course progress data per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_course_gradesA | ๐ข READ-ONLY ยท GET /v2/courses/{id}/grades Get course grades. Retrieves the grades of all enrolled users in the course specified by the provided course id. The list is paginated with a limit of 20 grades per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_assessment_responsesA | ๐ข READ-ONLY ยท GET /v2/assessments/{id}/responses Get assessment responses. Retrieves all the responses a user has submitted in an assessment, with the most recent submission appearing first. The list is paginated with a limit of 20 responses per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_form_responsesA | ๐ข READ-ONLY ยท GET /v2/forms/{id}/responses Get form responses. Retrieves all the responses a user has submitted in a form, with the most recent submission appearing first. The list is paginated with a limit of 20 responses per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| mark_as_completeA | ๐ก WRITE ยท creates data ยท POST /v2/users/{id}/courses/{cid}/complete Mark as complete. Updates the user's progress on a course or learning activity level as complete. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| reset_user_progressA | ๐ก WRITE ยท creates data ยท POST /v2/users/{id}/courses/{cid}/reset Resets the user's progress on a course or learning activity level. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_progress_asynchronous_actionA | ๐ข READ-ONLY ยท GET /v2/async-actions/{id} Get the progress of an asynchronous action. Returns information about the progress of an asynchronous action. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_seat_offeringsA | ๐ข READ-ONLY ยท GET /v2/seats Get all seat offerings. Returns a list of all seat offerings of the school. The seat offerings are in sorted order, with the most recently created appearing first and the list is paginated, with a default limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_seat_offeringA | ๐ก WRITE ยท creates data ยท POST /v2/seats Creates a new seat offering. The endpoint response is the created Seat offering resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_specific_seat_offeringA | ๐ข READ-ONLY ยท GET /v2/seats/{id} Get a specific seat offering. Returns the seat offering specified by the provided seat offering id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_seat_offeringA | ๐ก WRITE ยท updates data ยท PUT /v2/seats/{id} Updates a seat offering. The endpoint response is the updated seat offering resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| delete_seat_offeringA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/seats/{id} Deletes a specific seat offering asynchronously. This endpoint removes a seat offering identified by its unique ID. The deletion request is processed asynchronously, meaning the operation may continue after the initial request is accepted. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_users_seat_offeringA | ๐ข READ-ONLY ยท GET /v2/seats/{id}/users Get all users of seat offering. Retrieves all the users who are members of the seat offering specified by the provided seat offering id. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a default limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| add_user_seat_offeringA | ๐ก WRITE ยท creates data ยท POST /v2/seats/{id}/users/{uid} Add a user to the seat offering specified by the provided seat offering id. Additionally there is the option to assign the user a seat in the seat offering. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| remove_user_seatA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/seats/{id}/users/{uid} Remove a user from a seat and optionally from the seat offering. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_seat_offerings_that_user_is_memberA | ๐ข READ-ONLY ยท GET /v2/users/{id}/seats Get seat offerings that a user is member of. Returns a list of all seat offerings that the specified user is a member of. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_groupsA | ๐ข READ-ONLY ยท GET /v2/user_groups Get all user groups. Returns a list of all user groups of the school. The user groups are in sorted order, with the most recently created appearing first and the list is paginated, with a default limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_user_groupA | ๐ก WRITE ยท creates data ยท POST /v2/user_groups Creates a new user group. The endpoint response is the created user group resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_user_groupA | ๐ข READ-ONLY ยท GET /v2/user_groups/{id} Get a user group. Returns the user group specified by the provided user group id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_user_groupA | ๐ก WRITE ยท updates data ยท PUT /v2/user_groups/{id} Updates a user group. The endpoint response is the updated user group resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| deletes_user_groupA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/user_groups/{id} Deletes a specific user group asynchronously. This endpoint removes a user group identified by its unique ID. The deletion request is processed asynchronously, meaning the operation may continue after the initial request is accepted. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_users_user_groupA | ๐ข READ-ONLY ยท GET /v2/user_groups/{id}/users Get users of a user group. Retrieves all the users who are members of the user group specified by the provided group id. The users are in sorted order, with the most recently created user appearing first, and the list is paginated, with a default limit of 20 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| add_user_user_groupA | ๐ก WRITE ยท creates data ยท POST /v2/user_groups/{id}/users/{uid} Add a user to a user group. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| remove_user_user_groupA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/user_groups/{id}/users/{uid} Remove a user from a user group. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_groups_that_user_is_memberA | ๐ข READ-ONLY ยท GET /v2/users/{id}/user-groups Get user groups that a user is member of. Returns a list of all user group that the specified user is a member of. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_rolesA | ๐ข READ-ONLY ยท GET /v2/user-roles Get all user roles. Returns a list with all the user roles of the school. The roles are in alphabetical ascending order according to their title. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_user_role_userA | ๐ข READ-ONLY ยท GET /v2/users/{id}/user-role Get user role of a user. Returns the user role of the user specified by the provided user id. Includes the assigned resources, if applicable (assigned course(s) for instructor role, assigned user group(s) for user group managers, assigned seat offering(s) for segment manager, assigned segment for reporter roles). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_user_role_userA | ๐ก WRITE ยท updates data ยท PUT /v2/users/{id}/user-role Updates the role assigned to the user. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_community_collectionsA | ๐ข READ-ONLY ยท GET /v2/community/collections Get all community collections. Returns a list with all community collections of the school. The community collections are in sorted order, with the oldest created collections appearing first Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_community_spacesA | ๐ข READ-ONLY ยท GET /v2/community/spaces Get community spaces. Returns a list with all community spaces of the school. The community spaces are in sorted order, with the oldest created spaces appearing first Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| create_community_spaceA | ๐ก WRITE ยท creates data ยท POST /v2/community/spaces Create a community space. The endpoint response is the created community Space resource. Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| get_community_spaceA | ๐ข READ-ONLY ยท GET /v2/community/spaces/{id} Get a community space. Returns information about the community space specified by the provided space id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| update_community_spaceA | ๐ก WRITE ยท updates data ยท PUT /v2/community/spaces/{id} Updates the community space specified by the provided space id. The endpoint response is the updated community space resource. Behavior: replaces the fields you send on an existing record in the live school. Idempotent: repeating it leaves the same state. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| delete_community_spaceA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/community/spaces/{id} Deletes the community space specified by the provided space id. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_users_community_spaceA | ๐ข READ-ONLY ยท GET /v2/community/spaces/{id}/users Get users of a community space. Returns a list with all the users of the space. The users are in sorted order, with the oldest created user appearing first, and the list is paginated, with a default limit of 10 users per page. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| add_invite_users_community_spaceA | ๐ก WRITE ยท creates data ยท POST /v2/community/spaces/{id}/users Add/Invite users to a community space. Adds or invites users to a space. If space has Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
| remove_user_community_spaceA | ๐ด DESTRUCTIVE ยท deletes ยท DELETE /v2/community/spaces/{id}/users/{uid} Remove a user from a community space. Removes the user specified by the provided user id from the provide space id. Behavior: permanently removes the addressed record from the live school โ no undo from this server. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| get_community_postsA | ๐ข READ-ONLY ยท GET /v2/community/posts Get community posts. Returns a list with all the posts of the school community. The post are in sorted order, with the most recently created post appearing first, and the list is paginated, with a default limit of 10 posts per page. To refine the list of posts, there are a number of query params outlined in the following section; In case more than one Query param is provided, then all of them will be applied (AND operator). Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: results are paged โ walk them with |
| get_community_postA | ๐ข READ-ONLY ยท GET /v2/community/posts/{id} Get a community post. Returns information about the community post specified by the provided post id. Behavior: read-only lookup against the live school; creates, changes and deletes nothing. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Returns: |
| review_submission_user_s_assessment_submissionA | ๐ก WRITE ยท creates data ยท POST /v2/assessments/scores/{id}/review Review the submission of a user's assessment submission. Updates the grades and feedback for each delivered question in an assessment submission and calculates the new grades Behavior: creates a record or triggers an action in the live school. Not idempotent: a repeated call can duplicate the effect. Auth (admin API token + Lw-Client id) is injected server-side, never by the model; calls are throttled to stay under LearnWorlds' 30-per-10s cap and retried on 429/5xx.
Parameters: the whole JSON payload goes in the single |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ohneben/Learnworlds-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server