Okta MCP Server
Official open-source MCP server from Okta: manage users, groups, applications, policies, and system logs by conversation, with confirmation for destructive actions.
- Skill Road
- Okta MCP Server
Categories
Description
The Okta MCP Server connects AI assistants such as Claude Code or Cursor to the Admin Management APIs of your Okta organization. Instead of clicking through the admin console or assembling API calls by hand, you phrase a task in natural language, for example "Show me all sign-in failures of the last 24 hours" or "Create a user and add them to the Sales group", and the assistant calls the matching tools. The project lives in the GitHub organization okta, carries the copyright notice "Okta, Inc.", is released under the Apache 2.0 license, currently has around 70 stars, is not archived, and was last updated on October 20, 2026. According to the README the server is generally available and uses Okta's official Python SDK.
What can the Okta MCP Server do?
According to the README the server covers the main administration areas of an Okta organization. For users there is list, retrieve, create, update, deactivate, delete, and viewing group memberships. Groups can be created, changed, and deleted, and their members and assigned applications managed. For applications the scope ranges from creating and changing through activating and deactivating to searching the Okta Integration Network and installing apps from it. Added to that are policies and policy rules, device assurance policies, retrieval of system logs, brands with themes, logos, and sign-in pages, email templates and settings, and custom domains including certificate and verification.
What is it particularly useful for?
The greatest value lies in recurring administration tasks and in troubleshooting. Whoever looks after joiners, role changes, or leavers can describe the steps to the assistant instead of running them repeatedly in the console. For support requests, access to the system logs helps: the assistant filters sign-in events, summarizes anomalies, and names possible causes. Clean-up work, such as finding unused groups or checking which applications are assigned to a group, can also be done in one conversation. Compared with a plain script the flow stays flexible, because the assistant reads intermediate results and adapts the next query to them.
Setup and configuration
The prerequisites are Python 3.13 or newer (or Docker), the tool uv, an MCP client such as Claude Desktop, Claude Code, or VS Code, and an Okta account with suitable permissions. There are three ways to install: Docker (recommended by the README), uv from source, and the PyPI package, which starts without cloning via uvx okta-mcp-server. Two sign-in methods are available. The interactive device authorization grant needs a native OIDC app with the device authorization grant enabled; sign-in happens in the browser, and in Docker you copy the URL from the logs. According to the README this method is not supported for private cloud tenants. The second method, private key JWT, works without a browser and uses an "API Services" app with a key pair; DPoP must be disabled for it, and API scopes and admin roles have to be assigned. Which tools the server offers depends on the scopes set in OKTA_SCOPES.
Security: what to keep in mind
An identity system is an especially sensitive target, so caution pays off. According to the README the server registers only tools for which matching scopes are configured at startup and additionally checks every call at runtime. Destructive operations such as delete or deactivate require confirmation through MCP's elicitation feature; clients without support receive a confirmation request in JSON format instead. The README stresses the principle of least privilege: grant write scopes (*.manage) only when you really need them, and start with read access. The option OKTA_MCP_INCLUDE_RAW passes stack frames to the client and should be enabled only deliberately for troubleshooting. Note also that every call consumes your management API rate limit. Retrieve untrusted content, such as user profile fields, with care, because it could lead the assistant into unintended calls.
Costs
The MCP server itself is free under Apache 2.0. A prerequisite is an Okta organization. According to the pricing page there is a free trial and, for developers, a free integrator plan for trying APIs and SDKs, which is intended only for non-production environments and has a limited number of users. For production use, paid plans for workforce and customer identities are available. Current terms are on Okta's official pricing page.
Who is the Okta MCP Server for?
It is worthwhile for administrators and platform and security teams who already use Okta and want to handle recurring tasks or log analysis in conversation. Without an Okta organization it is useless. Start with a test organization and read scopes before you grant write permissions, and keep the confirmation prompts for delete and deactivate switched on.
Requirements
Python 3.13 or newer (or Docker) with uv, an MCP client such as Claude Code or Cursor, and an Okta organization with an OIDC app (device authorization grant) or an API Services app (private key JWT) and suitable admin roles.
Installation instructions
With the Okta MCP Server an AI assistant manages users, groups, and applications of your Okta organization and analyzes system logs. This guide leads from the prerequisites to the first query.
Step 1: Check the prerequisites
You need Python 3.13 or newer with uv (or Docker), an MCP client such as Claude Code or Cursor, and an Okta organization. For first experiments use a test or developer organization, not your production environment.
Prepare the app and scopes
For interactive sign-in, create a native OIDC app in Okta with the device authorization grant enabled. For operation without a browser, use an API Services app instead, with a key pair, DPoP disabled, and API scopes and admin roles assigned. Start with read scopes; add write scopes (*.manage) only later.
Step 2: Register it in the MCP client
In Claude Code the command is claude mcp add okta -e OKTA_ORG_URL=<org-url> -e OKTA_CLIENT_ID=<client-id> -e OKTA_SCOPES=<scopes> -- uvx okta-mcp-server. Alternatively start the server via Docker or from source, as described in the README. On first sign-in the browser opens; in Docker you copy the URL from the logs.
claude mcp add okta -e OKTA_ORG_URL=<org-url> -e OKTA_CLIENT_ID=<client-id> -e OKTA_SCOPES=<scopes> -- uvx okta-mcp-server
Limit the risks
The server registers only tools for which matching scopes are set. Keep the confirmation prompts for delete and deactivate switched on and grant write permissions as narrowly as possible. Enable OKTA_MCP_INCLUDE_RAW only for deliberate troubleshooting.
Step 3: First queries
Start with read tasks, such as "List the groups of the organization" or "Show the sign-in failures of the last 24 hours". Test changes such as creating a user in the test organization first.
claude mcp add okta -e OKTA_ORG_URL=<org-url> -e OKTA_CLIENT_ID=<client-id> -e OKTA_SCOPES=<scopes> -- uvx okta-mcp-server
Authentication
Device authorization grant (interactive, sign-in in the browser) or private key JWT via an API Services app (no browser).
Required access permissions
Depending on the configured scopes, read or write access to users, groups, applications, policies, system logs, brands, email templates, and domains. Write scopes (*.manage) should be granted only when needed.
Transmitted or stored data
The server runs locally on your machine and talks to the Okta API. Retrieved user data, groups, and log entries enter the AI client context and therefore reach the model provider. Every call consumes management API rate limits.
Security risks
Unintended deletion or deactivation of users, groups, and applications, policy changes affecting all sign-ins, overly broad write scopes, prompt injection via profile or log content, and passing stack frames to the client when OKTA_MCP_INCLUDE_RAW is enabled.
License and costs
- License
- Not recorded yet.
- Cost
- free
The MCP server is free under Apache 2.0; Okta itself offers a free trial, a free integrator plan for non-production environments, and paid plans. Details are on Okta's official pricing page.
Alternatives
Not recorded yet.
At a glance
- Provider
- Okta
- Status
- Official server
- Deployment
- Local
- Current version
- Not recorded yet.
- Last reviewed
- 22.10.2026
Repository and documentation
Categories
Supported clients
Related guides
Guides and background related to this entry.
Set up the Asana plugin for Claude Code
Create your own Asana OAuth app, install the Claude Code plugin, and connect to Asana's V2 MCP server via /asana-setup.
30.09.2026
Setting up Azure Static Web Apps Skill: Speed up local deployment
Guide to the Azure Static Web Apps skill: prerequisites, SWA CLI, configuration, deployment, secrets, and safe boundaries.
18.09.2026
Set up X Ads MCP safely
Connect X Ads MCP with minimal OAuth scopes, verify ads accounts, and approve campaign changes deliberately.
18.09.2026
Set up X API MCP safely
Connect the general X API MCP with minimum scopes, inspect the data path, and control write access.
18.09.2026