Okta User Management
About
Integrates with Okta's user management system to retrieve detailed user information including profile data, account status, employment details, and contact information through a Node.js implementation.
Details
- Author
- kapilduraphe
- Repository
- kapilduraphe/okta-mcp-server
- GitHub stars
- 9
- License
- MIT License
- Categories
- Cloud Service, Security, Infrastructure, Automation, AI, Design, Developer Tools, File Management, Knowledge Base, API
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Okta User ManagementCommand (node, npx, python, etc.)nodeArguments-
Argument 1
PATH_TO_PROJECT_DIRECTORY/dist/index.js
Environment-
OKTA_ORG_URL
https://your-domain.okta.com -
OKTA_API_TOKEN
your-api-token
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install dependencies:
npm install
Open your Claude Desktop configuration file:
For MacOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
For Windows:
code %AppData%\Claude\claude_desktop_config.json
Add or update the configuration:
{
"mcpServers": {
"okta": {
"command": "node",
"args": [
"PATH_TO_PROJECT_DIRECTORY/dist/index.js"
],
"env": {
"OKTA_ORG_URL": "https://your-domain.okta.com",
"OKTA_API_TOKEN": "your-api-token"
}
}
}
}
Save the file and restart Claude Desktop.
After setup, you can use commands like:
If you're getting environment variable errors, verify:
- OKTA_ORG_URL: Should be complete URL (e.g., "https://dev-123456.okta.com")
- OKTA_API_TOKEN: Should be a valid API token
get_user
Retrieves detailed user information from Okta, including User Details, Account Dates, Personal Information, Employment Details, Contact Information, Address, and Preferences.
find_users_by_attribute
Search users by any profile attribute with advanced filtering using supported attributes like firstName, lastName, email, and more, along with various search operators.
list_users
Lists users from Okta with optional filtering and pagination, supporting SCIM filter expressions and free-form text search across multiple fields.
activate_user
Activates a user in Okta, with an option to send an activation email and updates user status to active.
suspend_user
Suspends a user in Okta.
unsuspend_user
Unsuspends a previously suspended user in Okta.
delete_user
Deletes a user from Okta, noting that the user must be deactivated first.
get_user_last_location
Retrieves the last known location and login information for a user from Okta system logs.
list_groups
Lists user groups from Okta with optional filtering and pagination, allowing for filter expressions and free-form text search.
create_group
Creates a new group in Okta with a name and optional description.
get_group
Retrieves detailed information about a specific group.
delete_group
Deletes a group from Okta.
assign_user_to_group
Assigns a user to a group in Okta.
remove_user_from_group
Removes a user from a group in Okta.
list_group_users
Lists all users in a specific group with pagination support.
bulk_user_import
Imports multiple users from a CSV string, creating user accounts based on CSV data with optional activation and email notifications.
assign_users_to_groups
Assigns multiple users to groups based on attribute mappings, mapping user attributes to specific groups.
provision_applications
Provisions application access for multiple users, assigning users to applications and supporting bulk provisioning.
run_onboarding_workflow
Runs a complete onboarding workflow for multiple users from CSV data, including user import, activation, group assignment, application provisioning, and welcome email configuration.
The server provides the following tools:
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"okta user management": {
"env": {
"OKTA_ORG_URL": "https://your-domain.okta.com",
"OKTA_API_TOKEN": "your-api-token"
},
"args": [
"PATH_TO_PROJECT_DIRECTORY/dist/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"OKTA_ORG_URL": "https://your-domain.okta.com",
"OKTA_API_TOKEN": "your-api-token"
},
"args": [
"PATH_TO_PROJECT_DIRECTORY/dist/index.js"
],
"command": "node"
}
Macos
{
"env": {
"OKTA_ORG_URL": "https://your-domain.okta.com",
"OKTA_API_TOKEN": "your-api-token"
},
"args": [
"PATH_TO_PROJECT_DIRECTORY/dist/index.js"
],
"command": "node"
}
Windows
{
"env": {
"OKTA_ORG_URL": "https://your-domain.okta.com",
"OKTA_API_TOKEN": "your-api-token"
},
"args": [
"PATH_TO_PROJECT_DIRECTORY/dist/index.js"
],
"command": "node"
}
User Management
get_user
Retrieves detailed user information from Okta, including: - User Details (ID, Status) - Account Dates (Created, Activated, Last Login, etc.) - Personal Information (Name, Email) - Employment Details - Contact Information - Address - Preferencesfind_users_by_attribute
Search users by any profile attribute with advanced filtering: - Supported attributes: firstName, lastName, email, manager, department, title, division, organization, employeeNumber, costCenter, userType, city, state - Search operators: -eq (exact match) - Works for all attributes
- sw (starts with) - Works for all attributes
- ew (ends with) - Works for most attributes
- co (contains) - Works for some attributes (firstName, lastName, email)
- pr (present/exists) - Works for all attributes (finds users with any value for that attribute)
- Features:
- Uses Okta's native search for optimal performance
- Automatic fallback to client-side filtering for unsupported operators
- PII masking in search results for sensitive attributes
- Status filtering (include/exclude inactive users)
- Pagination support with customizable limits
list_users
Lists users from Okta with optional filtering and pagination: - Supports SCIM filter expressions (e.g., 'profile.firstName eq "John"') - Free-form text search across multiple fields - Sorting options (by status, creation date, etc.) - Pagination support with customizable limitsactivate_user
Activates a user in Okta: - Option to send activation email - Updates user status to activesuspend_user
Suspends a user in Oktaunsuspend_user
Unsuspends a previously suspended user in Oktadelete_user
Deletes a user from Okta (note: user must be deactivated first)get_user_last_location
Retrieves the last known location and login information for a user from Okta system logsSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.
