Okta MCP Server

Okta MCP Server

Local serverstdioTypeScript

What is the Okta MCP server?

Okta MCP server exists for a simple reason — assistants are far more useful when they can act on Okta directly instead of describing what you should do. Okta MCP Server.

What you get

This MCP server enables Claude to interact with Okta's user management system, providing comprehensive user and group management capabilities along with onboarding automation.

What the assistant can call

Once Okta is connected, these are the calls the assistant has available:

  • get_user — Retrieves detailed user information from Okta, including: - User Details (ID, Status) - Account Dates (Created, Activated, Last Login, etc.) -
  • find_users_by_attribute — Search users by any profile attribute with advanced filtering: - Supported attributes: firstName, lastName, email, manager, department, title
  • list_users — Lists users from Okta with optional filtering and pagination: - Supports SCIM filter expressions (e.g., 'profile.firstName eq "John"') - Free-form
  • activate_user — Activates a user in Okta: - Option to send activation email - Updates user status to active
  • suspend_user — The suspend_user tool exposed by this server
  • unsuspend_user — The unsuspend_user tool exposed by this server
  • delete_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 logs
  • list_groups — Lists user groups from Okta with optional filtering and pagination: - Filter expressions for groups (e.g., 'type eq "OKTA_GROUP"') - Free-form text
  • create_group — Creates a new group in Okta with a name and optional description
  • get_group — The get_group tool exposed by this server
  • delete_group — The delete_group tool exposed by this server

Setting it up

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.

Configuration and credentials

You will need 2 environment variables: OKTA_ORG_URL, OKTA_API_TOKEN. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

  • Node.js (v16 or higher) - Claude Desktop App - Okta Developer Account - Admin API Token from Okta

Choosing this one

Plenty of team communication servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Okta's toolset — get_user, find_users_by_attribute, list_users and 11 more — is a fair guide to whether it matches your workflow. It is maintained by kapilduraphe; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Before you rely on it

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Okta.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the okta mcp server does with a few real requests.

Available tools

ToolWhat it does
get_userRetrieves 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
find_users_by_attributeSearch users by any profile attribute with advanced filtering: - **Supported attributes**: firstName, lastName, email, manager, department, title, division, organization, employeeNumber, costCenter, userType, city, state
list_usersLists 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
activate_userActivates a user in Okta: - Option to send activation email - Updates user status to active
suspend_userThe suspend_user tool exposed by this server.
unsuspend_userThe unsuspend_user tool exposed by this server.
delete_userDeletes a user from Okta (note: user must be deactivated first)
get_user_last_locationRetrieves the last known location and login information for a user from Okta system logs
list_groupsLists user groups from Okta with optional filtering and pagination: - Filter expressions for groups (e.g., 'type eq "OKTA_GROUP"') - Free-form text search across group fields - Sorting options (by name, type, etc.) - Pag
create_groupCreates a new group in Okta with a name and optional description
get_groupThe get_group tool exposed by this server.
delete_groupThe delete_group tool exposed by this server.
assign_user_to_groupThe assign_user_to_group tool exposed by this server.
remove_user_from_groupThe remove_user_from_group tool exposed by this server.

How to install the Okta MCP server

{
    "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"
            }
        }
    }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Node.js (v16 or higher) - Claude Desktop App - Okta Developer Account - Admin API Token from Okta
VariableDescriptionRequired
OKTA_ORG_URLEndpoint or connection string the server talks to.Yes
OKTA_API_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use Okta to get user.
  • Use Okta to find users by attribute.
  • Use Okta to list users.

Frequently asked questions

You need Node.js v16 or higher, the Claude Desktop App, an Okta Developer Account, and an Admin API Token from Okta.