litmos-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LITMOS_REGION | No | API region: us, eu, or au | us |
| LITMOS_SOURCE | No | Source label sent with every API request | litmos-mcp |
| LITMOS_API_KEY | Yes | Your Litmos API key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| litmos_search_usersA | Search for Litmos users by name, email, username, or company. Returns a list of matching users with their IDs. Use the returned Id values with other tools to retrieve training data for specific individuals. Args: params: UserSearchInput with: - search (str): Search string (name, email, username, company) Returns: str: JSON array of matching users: [{"Id": str, "UserName": str, "FirstName": str, "LastName": str}, ...] |
| litmos_get_userA | Retrieve the full profile for a single Litmos user by their encrypted ID. Args: params: UserIdInput with: - user_id (str): Litmos encrypted user ID Returns: str: JSON object with full user profile including Id, UserName, FirstName, LastName, Email, AccessLevel, Active, LastLogin, JobTitle, ExternalEmployeeId, CustomField1-10, and more. |
| litmos_list_usersA | List users in the Litmos organisation with pagination support. Returns basic user info (Id, UserName, FirstName, LastName). Use litmos_get_user for full profiles or litmos_search_users to find a specific individual. Args: params: UserListInput with: - limit (int): Records to return, default 100, max 1000 - start (int): Offset for pagination, default 0 - show_inactive (bool): Include inactive users, default False Returns: str: JSON array of users: [{"Id": str, "UserName": str, "FirstName": str, "LastName": str}, ...] |
| litmos_get_user_coursesA | Get all courses assigned to a user and their completion status. This is the primary tool for checking training completion. Returns each course with completion status, percentage, dates, and whether the user is overdue or compliant. Args: params: UserIdInput with: - user_id (str): Litmos encrypted user ID Returns: str: JSON array of course assignments: [{ "Id": str, "Name": str, "Code": str, "Active": bool, "Complete": bool, "PercentageComplete": float, "AssignedDate": str, "StartDate": str | null, "DateCompleted": str | null, "Overdue": bool, "CompliantTill": str | null, "IsLearningPath": bool }, ...] |
| litmos_get_user_course_resultsA | Get detailed course and module-level results for a specific user/course pair. Provides granular completion data including scores, attempt counts, and pass/fail status for each module within the course. Args: params: UserCourseResultInput with: - user_id (str): Litmos encrypted user ID - course_id (str): Litmos encrypted course ID Returns: str: JSON object with course-level fields plus a Modules array: { "Id": str, "Name": str, "Complete": bool, "PercentageComplete": float, "DateCompleted": str | null, "Modules": [{ "Id": str, "Name": str, "Completed": bool, "Score": int, "Passmark": int, "Attempt": int, "DateCompleted": str | null }, ...] } |
| litmos_get_user_learning_pathsA | Get all learning paths assigned to a user and their completion status. Args: params: UserIdInput with: - user_id (str): Litmos encrypted user ID Returns: str: JSON array of learning path assignments: [{ "Id": str, "Name": str, "Active": bool, "Complete": bool, "PercentageComplete": float, "AssignedDate": str, "StartDate": str | null, "DateCompleted": str | null, "AccessTillDate": str | null }, ...] |
| litmos_list_coursesA | List courses available in the Litmos organisation. Use the returned course IDs with litmos_get_user_course_results to fetch detailed results for a specific user/course combination. Args: params: CourseListInput with: - limit (int): Records to return, default 100, max 1000 - start (int): Offset for pagination, default 0 Returns: str: JSON array of courses: [{"Id": str, "Name": str, "Code": str, "Active": bool, ...}, ...] |
| litmos_get_user_teamsA | Get all teams that a user is assigned to. Useful for understanding a user's organisational grouping or filtering completion data by team membership. Args: params: UserIdInput with: - user_id (str): Litmos encrypted user ID Returns: str: JSON array of teams: [{"Id": str, "Name": str, "TeamCodeForBulkImport": str, "ParentTeamId": str}, ...] |
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
- 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/dbuxton/litmos-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server