# Illumidesk MCP MCP

> Illumidesk MCP handles campus records, course structures, and user enrollments across your LMS. It lets you list campuses, get specific course details, track memberships, and audit activity logs using one connection. This is for automating academic data retrieval.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** course-management, lms, student-tracking, e-learning, education-automation

## Description

Managing an educational network means juggling multiple databases. You need to know who belongs where, which courses are running on which campus, and what actions were taken last week. This MCP connects your AI client directly to the Illumidesk API, giving you full visibility into your LMS structure without needing manual exports or dashboard clicks. Your agent can list all campuses and then drill down to find specific course details or track who is actually enrolled in a class. It's built for automating complex educational workflows. When you connect this MCP via Vinkius, you get centralized access so your agent doesn't need multiple credentials or API keys. You just ask for the data, and it gets pulled straight from Illumidesk.

## Tools

### get_activity_logs
Retrieves all logged activity records for a specific campus location.

### get_campus
Pulls the detailed information profile for one specified campus.

### get_course
Retrieves all metadata and details related to a single course.

### get_me
Gets the basic profile information for the user who is currently authenticated to the system.

### list_campuses
Returns a complete list of every campus registered in Illumidesk.

### list_courses
Generates a full listing of courses available within a specific, designated campus.

### list_lti_credentials
Shows all LTI credentials configured for a particular campus location.

### list_lti_deployments
Lists every LTI deployment set up for the specified campus.

### list_memberships
Generates a list of all users currently enrolled in a specific course or program.

### list_users
Provides a full directory listing of every user account registered within a campus.

## Prompt Examples

**Prompt:** 
```
List all campuses in my Illumidesk account.
```

**Response:** 
```
I'll fetch the list of your Illumidesk campuses.
```

**Prompt:** 
```
Show me courses for campus slug 'main-campus'.
```

**Response:** 
```
I'll retrieve the list of courses for that specific campus.
```

**Prompt:** 
```
Check who is enrolled in course 'ai-fundamentals'.
```

**Response:** 
```
I'll look up the user memberships for that course.
```

## Capabilities

### Audit Campus Structures
Retrieve a list of all available campuses, or fetch detailed information about one specific campus.

### Manage Course Records
Get details for any course or pull a full list of courses associated with a given campus.

### Track User Enrollments
List all registered users in a campus, and check the exact membership status (enrollment) for a specific class.

### Monitor System Activity
Fetch detailed logs of activity that occurred on a specific campus over time.

### Verify Integrations
List and check the status of both LTI credentials and deployments for a given campus.

## Use Cases

### Finding Out Who Can't Access Resources
The problem: A department head needs to know which users are enrolled in the 'Advanced Calculus' course but haven't logged in for three months. The solution: Your agent first runs `list_users` for the campus, then checks `list_memberships` for 'Advanced Calculus', and finally cross-references that list against activity data using `get_activity_logs`. This gives a precise list of inactive members.

### Migrating Course Structures
The problem: You're moving curriculum from one campus to another. You need to ensure all the necessary classes exist and are correctly structured. The solution: Your agent runs `list_campuses` to confirm both locations, then uses `list_courses` on each site to generate a comparison report showing what needs to be ported.

### Debugging LTI Integration Failures
The problem: A third-party tool (like a virtual lab) suddenly isn't working. You don't know if the credential expired or if the deployment changed. The solution: Your agent checks `list_lti_credentials` and then verifies all active endpoints using `list_lti_deployments`. This immediately points to the broken link.

### User Onboarding Audit
The problem: New staff members need access validated across multiple departments. You must ensure their user record is current and properly linked. The solution: Your agent uses `get_me` to confirm the basic user profile, then runs `list_memberships` on all relevant courses to validate their permissions.

## Benefits

- Stop manually compiling enrollment reports. You can use `list_memberships` to get the exact roster for any course in seconds, regardless of how many users are involved.
- Don't waste time checking multiple dashboards. Pull all user data by running `list_users` against a campus and cross-reference it with `get_campus` details.
- Compliance auditing gets easier. Use `get_activity_logs` to track who accessed what, and when. This is critical for security reviews.
- Verify external links quickly. Instead of logging into the LMS admin panel, your agent can run `list_lti_credentials` to check if an integration broke.
- Get a complete structural overview by calling `list_campuses` first, then feeding those names into `list_courses` to map out every available class in your network.

## How It Works

The bottom line is that your agent treats Illumidesk like another API endpoint, pulling structural data directly into your workflow without needing UI interaction.

1. First, tell your agent to locate the specific academic structure you need by requesting a list of all campuses or pulling details on a single campus.
2. Next, specify what data point you're targeting: do you need the full roster of users in that location? Are you looking for courses, or maybe just activity logs?
3. Your agent executes the request, and you get back clean JSON containing only the structured data points needed—whether it's a list of user IDs or specific course metadata.

## Frequently Asked Questions

**How do I find out all available campuses using `list_campuses`?**
You call `list_campuses`. This returns a clean JSON object with the name and ID of every campus in your account. You then use those IDs to scope subsequent queries, like finding courses or users.

**If I use `get_course`, can I also see who is enrolled?**
No, `get_course` only returns the course's metadata (name, description, etc.). To find out who is taking it, you must call `list_memberships` using the course ID.

**What’s the difference between `list_users` and `get_me`?**
`get_me` only gives info on your own authenticated profile. You use `list_users` when you need a full directory of every single user account registered in a specific campus.

**Can I check LTI credentials using the general API?**
You must use the dedicated tool, `list_lti_credentials`. This function is specifically designed to show all LTI credential setups for a given campus ID.

**How do I use `get_activity_logs` to audit a specific campus's history?**
It retrieves detailed records of all activity for the specified campus. You can track who did what and when, which is essential for security audits.

**If I need to check external integrations, should I use `list_lti_deployments`?**
Yes, this tool lists all LTI deployments attached to a campus. It shows the current status and configuration of your educational platform connections.

**What kind of information does the `get_me` tool return about my account?**
It returns your authenticated user profile details. This confirms exactly which identity is making the API call, providing immediate context for your agent's actions.

**How do I find the correct course ID before running `get_course`?**
Run `list_courses` first to fetch all available course slugs and IDs within a campus. You must use one of those returned identifiers to query detailed data.

**How do I get Illumidesk API credentials?**
You can find your API key in your Illumidesk account settings under the 'Developer' or 'Integrations' section.

**What is a campus slug?**
A slug is a unique identifier for your campus or course, usually found in the URL (e.g., app.illumidesk.com/campus/my-campus-slug/).

**Does it support LTI integrations?**
Yes, you can list LTI credentials and deployments using the dedicated tools in this MCP.