Connect Skilljar to Claude Code [Beta]
This article explains to admins the process to connect Claude Code with Skilljar using MCP.
Overview
The Skilljar MCP server connects Skilljar to AI agents using the Model Context Protocol (MCP). This first release supports MCP clients that authenticate with HTTP headers. Once connected, admins can perform LMS operations (such as managing enrollments, building course content, and updating student records) through natural-language prompts in Claude Code, without opening the Skilljar dashboard.
This release supports MCP clients that authenticate using HTTP headers, such as client ID and secret or HTTP Basic authentication. Verified clients currently include Claude Code and Microsoft Frontier. Other MCP clients that support custom authentication headers may also be used. Future MCP releases are expected to expand coverage to OAuth-based clients, including ChatGPT and the Claude.ai web and desktop apps.
Prerequisites
The following are required:
Supported Skilljar MCP Capabilities
The MCP server supports the following read and write actions.
Student and User Management
- Look up a student by email.
- List students with filters.
- Create student accounts in batch.
- Activate or deactivate students in batch.
- Erase student PII permanently (anonymize).
- Send a password reset email.
- Set a student's password directly.
- Bulk-enroll students in a course by email.
- Add or remove students from groups.
- Create, update, or delete groups.
- Configure domain-based auto-enrollment rules for a group.
- Add or remove course visibility overrides for a group.
Course Content Management
- List and search courses.
- Retrieve a course by ID.
- Create a course.
- Update a course.
- List and search lessons.
- Retrieve a lesson by ID.
- Create HTML lessons.
- Update lessons.
Example Use Cases
The following are example workflows that the Skilljar MCP server makes possible from within Claude Code. Each use case includes a sample prompt to illustrate how the request is phrased in a chat session.
Student and user management
- Onboard a new customer cohort: Create accounts and enroll a new group of learners into a course without opening the Skilljar dashboard.
- Enroll a segment into a new course: Bulk-enroll all users in a specific group or tier into a course in a single step.
- Set up auto-enrollment for a new group: Create a group and configure domain-based enrollment rules so users are automatically enrolled when they register.
- Reorganize users after an acquisition: Consolidate user groups from two merged accounts without a manual export and re-import.
Course content management
- Build a new course from an outline: Create a course and add HTML lessons from a spec or doc without opening the Skilljar dashboard.
- Update content after a product release: Revise specific lessons across a course without navigating the full dashboard editing flow.
- Translate a course into a new language: Recreate an existing course structure with translated HTML content as a new standalone course.
Set Up the MCP Server Connection in Claude Code
Claude Code authenticates the Skilljar MCP server using the API v2 client ID and secret passed as HTTP headers. Two methods are available: the Claude Code CLI command (recommended) or a direct edit of the configuration file.
Before setting up MCP in Claude Code, you need API v2 credentials from Skilljar.
Setup Skilljar API v2 Credentials
To get API v2 Credentials:
- Open your Skilljar dashboard.
- Navigate to Organization > API Credentials > v2 API Clients. The API v2 Clients page appears.

- Click Create Client. The Create API Client page appears.
- Provide the required details, and click Create Client. The Save your Credentials page appears.

- Copy and save your API v2 Credentials.

Note: The credentials will only be shown once after closing the dialog box. You cannot retrieve these credentials.
- Select the I have saved the secret somewhere secure Checkbox.
- Click Close.
Using the Claude Code CLI
- Open a Terminal in macOS and Linux or PowerShell in Windows.
- Run the following command, replacing YOUR_CLIENT_ID and YOUR_CLIENT_SECRET with the Skilljar API v2 credentials. For more information, refer to the Setup Skilljar API v2 Credentials section.
claude mcp add --transport http --scope user skilljar https://mcp.skilljar.com/mcp \ --header "X-Client-Id: YOUR_CLIENT_ID" \ --header "X-Client-Secret: YOUR_CLIENT_SECRET"
Note: The example uses --scope user. Substitute --scope project or --scope local if a different scope is required.
-
Confirm the success message. The output appears similar to:
File modified: /Users/<your-username>/.claude.json
The Skilljar MCP server is now registered. If Claude Code is currently running, restart it so the new configuration is loaded.
Verify the Connection
After completing the setup, confirm that Claude Code can both reach the server and execute tools against it.
Confirm the connection
Check if the Skilljar MCP is connected correctly:
- Open Claude in the terminal.
- Type
/mcpand press Enter.
The output lists all configured MCP servers. The Skilljar server appears as skilljar with a connected status and the number of available tools.
Test a tool call
Confirming connection alone does not exercise the full pipeline. To validate that tool execution works end-to-end, run a low-stakes read operation. At the main chat prompt, type:
List the first 5 students in our Skilljar account using the skilljar MCP server.
Claude Code shows a permission prompt before invoking the tool. Approve it. The student data returns into the chat. Compare the results against the Skilljar dashboard to confirm the data matches.
Set Up Skilljar in Other MCP Clients
The Skilljar MCP server can be configured in any MCP client that supports custom authentication headers. To connect, configure the client with the following details:
- Server URL: https://mcp.skilljar.com/mcp
- Authentication: Use either of the following methods:
- Custom headers: Send the client ID and secret as the X-Client-Id and X-Client-Secret headers.
- HTTP Basic auth: Use the client ID as the username and the client secret as the password.
Important Considerations
- Treat the API v2 client ID and secret as sensitive credentials. Do not commit them to version control without using environment variables or a secrets manager.
- Tools that perform irreversible operations (such as anonymize_student and delete_groups) should be used with caution. Claude Code's permission prompt asks for confirmation before each tool call by default; the default should be retained for these tools.