# Okta (MCP Server)

> Administer Okta users, groups, applications and policies with an AI assistant

- Type: MCP server
- Publisher: Okta (official)
- Categories: Security, Business
- Website: https://github.com/okta/okta-mcp-server
- Source: https://github.com/okta/okta-mcp-server
- Transport: stdio
- Launch command: uvx okta-mcp-server
- Sign-in: oauth
- Environment variables: OKTA_ORG_URL, OKTA_CLIENT_ID, OKTA_SCOPES
- GitHub stars: 71
- Listed: 2025-09-23

## About

Okta's official self-hosted MCP server lets agents manage users, groups, applications and policies through the Okta Management API. It runs locally via uvx (or Docker) and authenticates with an Okta API service app using a client ID and either device authorization or a private key.

## Install

1. **Add the server to Codex**

   Codex CLI:

   ```bash
   codex mcp add okta --env OKTA_ORG_URL=YOUR_OKTA_ORG_URL --env OKTA_CLIENT_ID=YOUR_OKTA_CLIENT_ID --env OKTA_SCOPES=YOUR_OKTA_SCOPES -- uvx okta-mcp-server
   ```

   config.toml:

   ```toml
   [mcp_servers.okta]
   command = "uvx"
   args = ["okta-mcp-server"]
   
   [mcp_servers.okta.env]
   OKTA_ORG_URL = "YOUR_OKTA_ORG_URL"
   OKTA_CLIENT_ID = "YOUR_OKTA_CLIENT_ID"
   OKTA_SCOPES = "YOUR_OKTA_SCOPES"
   ```

   Agents SDK:

   ```python
   from agents import Agent, Runner
   from agents.mcp import MCPServerStdio
   
   async with MCPServerStdio(
       name="Okta",
       params={"command": "uvx", "args": ["okta-mcp-server"]},
   ) as server:
       agent = Agent(name="Assistant", mcp_servers=[server])
       result = await Runner.run(agent, "Which users haven't logged in for 90 days?")
       print(result.final_output)
   ```

## Tools

- `list_users`
- `get_user`
- `create_user`
- `deactivate_user`
- `list_groups`
- `add_user_to_group`
- `list_applications`
- `list_policies`
- `create_policy`

## Example prompts

- "Which users haven't logged in for 90 days?"
- "Add jane@example.com to the Engineering group"
- "List the applications assigned to the Sales group"
- "Deactivate the user account for a departed contractor"

## Related

- [Stripe](https://chatgptplugins.directory/mcp/stripe.md): Query and act on your Stripe account and search Stripe docs from any agent
- [monday.com](https://chatgptplugins.directory/mcp/monday-com.md): Create items, update columns, and manage boards in monday.com
- [Semgrep](https://chatgptplugins.directory/mcp/semgrep.md): Scan AI-generated code for security vulnerabilities with Semgrep
- [QuickBooks Online](https://chatgptplugins.directory/mcp/quickbooks-online.md): Read and write QuickBooks customers, invoices, bills and reports
- [Xero](https://chatgptplugins.directory/mcp/xero.md): Work with Xero invoices, contacts, payments, payroll and reports
- [SonarQube](https://chatgptplugins.directory/mcp/sonarqube.md): Bring SonarQube code quality and security findings into AI coding agents

---
Source: https://chatgptplugins.directory/mcp/okta · Index: https://chatgptplugins.directory/llms.txt · Independent and community-run. Not affiliated with or endorsed by OpenAI. ChatGPT is a trademark of OpenAI.
