Labsco
MCP SERVER

Okta MCP Server

by kapilduraphe

Answer directory questions about your Okta org and act on the account — find the user, read the record, suspend or activate them.

Identity, Access, Secrets & Encryption
Summary
Directory answers, and the action that follows them.

"Who in engineering reports to her" and "suspend that account now" belong to the same conversation: search runs on any profile attribute, and the lifecycle calls are in the same connection.

What it is

A Node server over Okta's user management API. It reads user and group records, searches the directory on any profile attribute, and performs the account lifecycle actions an administrator would do by hand in the console.

What you get
  • get_user returns the full record: status, created, activated and last-login dates, name, email, employment details, contact information, address and preferences
  • find_users_by_attribute searches on firstName, lastName, email, manager, department, title, division, organization, employeeNumber, costCenter, userType, city or state, with eq for exact match and sw for starts-with
  • list_users and list_groups return the directory and its groups
  • activate_user, suspend_user, unsuspend_user and delete_user cover the account lifecycle
  • get_user_last_location reports where the account was last seen from
Requirements

Node.js v16 or higher, an Okta org, and an admin API token created under Security > API > Tokens. The server reads OKTA_ORG_URL and OKTA_API_TOKEN. That token can suspend and delete accounts, so scope and store it the way you would any admin credential.

Setup effort

Build from source — clone the repository and build it, then point your client at the binary