Skip to main content
Glama
schoox

schoox-mcp-server

Official
by schoox

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SCHOOX_API_KEYYesSchoox API key from academy settings
SCHOOX_BASE_URLNoAPI base URLhttps://api.schoox.com/v1
SCHOOX_ACADEMY_IDYesNumeric academy ID from Schoox admin dashboard
SCHOOX_MAX_RECORDSNoMaximum records per paginated request1000

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
abovesA

Look up organizational hierarchy levels above units — regions, divisions, areas, districts, or any custom grouping configured in the academy. Use this for org hierarchy above the unit level. For units themselves (stores, locations, departments), use the units tool instead.

Sub-actions:

  • list: List all Above Units with optional filtering by type or search term. Supports pagination.

  • get: Get details of a single Above Unit by ID, including name, type, external ID, and parent information.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

badgesA

List available badges configured in the academy. Use this to see what badges exist and their definitions. To see badges earned by a specific user, use the users tool with the get_badges action instead.

Sub-actions:

  • list: List all badges of a given type (platform, group, or academy-created badges).

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

contentA

Browse content items (web resources, uploaded files, SCORM packages) and related metadata such as categories, venues, and timezones. Use this for browsing all content types and content metadata. For course-specific data (skills, students, lectures, exams), use the courses tool instead.

Sub-actions:

  • list: List content items with filtering by type, sub-type, category, tags, or search term. Supports pagination and sorting.

  • list_categories: List content categories configured in the academy. Useful for discovering category IDs to filter content.

  • list_venues: List venues (physical locations for events). Supports pagination and search.

  • list_timezones: List available timezones for scheduling.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

coursesA

Query the course catalog, course details, and course-related data including skills, students, lectures, exams, coupons, and invitations. Use this for course metadata, catalogs, and course-level data. For a specific user's course progress and completion status, use the dashboard tool with get_user_courses action. For browsing all content types (not just courses), use the content tool.

Sub-actions:

  • list: Search and filter the course catalog. Paginated.

  • list_user_courses: List courses for a specific user. Requires userId. Paginated.

  • list_categories: List course categories configured in the academy.

  • get: Get full details of a single course. Requires courseId.

  • get_skills: List skills taught by a course. Requires courseId.

  • get_students: List students enrolled in a course. Requires courseId. Paginated.

  • get_lectures: List lectures within a course. Requires courseId.

  • get_exams: List exams within a course. Requires courseId.

  • get_coupons: List coupons for a course. Requires courseId.

  • get_coupon: Get a specific coupon. Requires courseId and couponId.

  • get_invitations: List invitations for a course. Requires courseId.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

curriculumsA

Query learning paths (curricula) — collections of courses that form a structured training program. Use this for learning path metadata, enrollment, and student lists. For a user's completion progress across learning paths, use the dashboard tool with get_user_curriculums action.

Sub-actions:

  • list: Search and filter learning paths. Paginated.

  • list_user_curriculums: List learning paths for a specific user. Requires userId. Paginated.

  • get: Get full details of a single learning path. Requires curriculumId.

  • get_students: List students enrolled in a learning path. Requires curriculumId. Paginated.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

dashboardA

Training analytics and progress reporting. Get per-user training summaries, course/curriculum/exam progress, OJT status, and manager relationships. Also provides aggregate course and curriculum analytics. Use this for training progress, completions, and analytics. For entity metadata and catalogs, use the entity-specific tool instead: users (profile data), courses (course catalog/details), curriculums (learning path metadata), exams (exam catalog/scores).

Sub-actions: User analytics:

  • list_users: List users with training data. Paginated.

  • get_user_summary: Training summary for one user. Requires userId.

  • get_user_manager: Get a user's manager. Requires userId.

  • get_user_ojts: List on-the-job training items for a user. Requires userId.

  • get_user_courses: List courses a user is enrolled in with progress. Requires userId.

  • get_user_curriculums: List learning paths a user is enrolled in with progress. Requires userId.

  • get_user_exams: List exams a user has taken with scores. Requires userId. Course analytics:

  • list_courses: List courses with aggregate analytics. Paginated.

  • get_course: Get analytics for a specific course. Requires courseId. Paginated.

  • get_course_user: Get one user's progress in a specific course. Requires courseId and userId. Curriculum analytics:

  • list_curriculums: List learning paths with aggregate analytics.

  • get_curriculum: Get analytics for a specific learning path. Requires curriculumId. Paginated.

  • get_curriculum_user: Get one user's progress in a specific learning path. Requires curriculumId and userId. Exam analytics:

  • list_exams: List exams with aggregate analytics.

  • get_exam: Get analytics for a specific exam. Requires examId. Paginated.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

eventsA

Query instructor-led training (ILT) and virtual classroom (VC) events -- sessions, offerings, attendees, and attendance data. Use this for scheduled training events. ILT = in-person sessions; VC = virtual/online sessions. Both types share the same parameter patterns but use separate actions (e.g. list_ilt vs list_vc).

Sub-actions: ILT (in-person):

  • list_ilt: List ILT events with optional date/status filters. Paginated.

  • get_ilt: Get details of a single ILT event. Requires eventId.

  • get_ilt_offers: List session offerings for an ILT event. Requires eventId. Paginated.

  • get_ilt_addOffers: List additional session offerings for an ILT event. Requires eventId. Paginated.

  • get_ilt_users: List attendees of an ILT event. Requires eventId. Paginated.

  • get_ilt_usersAttendanceData: Get attendance records for an ILT event. Requires eventId. Paginated. VC (virtual):

  • list_vc: List VC events with optional date/status filters. Paginated.

  • get_vc: Get details of a single VC event. Requires eventId.

  • get_vc_offers: List session offerings for a VC event. Requires eventId. Paginated.

  • get_vc_users: List attendees of a VC event. Requires eventId. Paginated.

  • get_vc_usersAttendanceData: Get attendance records for a VC event. Requires eventId. Paginated.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

examsA

Query exam metadata and student exam results/scores. Use this for exam catalogs and per-exam student scores. For a specific user's exam history across all exams, use the dashboard tool with get_user_exams action.

Sub-actions:

  • list: List all exams in the academy. Paginated.

  • get_students: List all students who took a specific exam with their scores. Requires examId. Paginated.

  • get_student: Get one user's score for a specific exam. Requires examId and userId.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

groupsA

List user groups configured in the academy. Groups are used for organizing users and assigning content, courses, and learning paths to specific audiences. Use this to browse user groups and discover group IDs.

Sub-actions:

  • list: List all academy groups with pagination support.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

jobsA

List job roles defined in the academy (e.g. Store Manager, Cashier, Trainer). Job IDs from this tool can be used as filters in the users and skills tools to find users or skills associated with a specific role.

Sub-actions:

  • list: List all job roles with optional search by title. Supports pagination.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

skillsA

Query skill/competency definitions, skill assessments, and the relationships between skills, jobs, courses, and users. Use this for competency management. To see what skills a course teaches, use the courses tool with get_skills action. To see a user's overall training progress (not just skills), use the dashboard tool.

Sub-actions:

  • list: List all skills/competencies with optional filtering by type or search term. Paginated.

  • get_job: List skills required for a specific job. Requires jobId.

  • get_user: Get a user's skill profile (all skills and levels). Requires userId.

  • get_user_skillAssessments: Get assessment results for a user on a specific skill. Requires skillId and userId.

  • get_jobs: List jobs that require a specific skill. Requires skillId. Paginated.

  • get_courses: List courses that teach a specific skill. Requires skillId. Paginated.

  • get_assessment: Get details of a single assessment. Requires assessmentId.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

typesA

List custom type definitions configured in the academy settings. Returns type enumerations such as Above Unit types, which define the organizational hierarchy levels. Use this to discover available type IDs that can be used as filters in other tools (e.g. type_id parameter in the aboves tool).

Sub-actions:

  • list: List all configured type definitions in the academy.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

unitsA

Look up organizational units (stores, locations, departments) in the academy hierarchy. Units are the lowest level of the organizational structure. Use this for units themselves. For higher-level groupings (regions, divisions, areas), use the aboves tool instead.

Sub-actions:

  • list: List all active units with optional filtering by search term, parent Above Unit, or Above Unit ID. Supports pagination.

  • get: Get details of a single unit by ID, including name, external ID, and organizational placement.

  • list_archived: List archived (inactive) units. Supports pagination.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

usageA

Get academy-wide usage and licensing summary statistics, including total users, active users, and license utilization. Use this for high-level academy usage stats. For per-user training data and progress details, use the dashboard tool instead.

Sub-actions:

  • list: Retrieve aggregate usage data for the academy.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

usersA

Look up Schoox user profiles and badges. Use this for identity data (name, email, role, organizational placement). For training progress, course completions, and analytics, use the dashboard tool instead.

Sub-actions:

  • list: Search and filter users by role, org unit, job, or search term. Paginated.

  • get: Get full profile for one user. Requires userId. Accepts Schoox ID, external ID (set external_id=true), or email (set is_email=true).

  • get_badges: List badges earned by a user. Requires userId.

Returns JSON: { data, _meta: { tool, action, returned, truncated? } }. When truncated is true, apply filters or pagination params to narrow results.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

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/schoox/schoox-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server