Lets agents manage users, groups, applications and policies in an Okta org with natural language, with confirmation for destructive actions.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add okta --env OKTA_CLIENT_ID='<OKTA_CLIENT_ID>' --env OKTA_KEY_ID='<OKTA_KEY_ID>' --env OKTA_ORG_URL='<OKTA_ORG_URL>' --env OKTA_PRIVATE_KEY='<OKTA_PRIVATE_KEY>' --env OKTA_SCOPES='<OKTA_SCOPES>' -- uv run --directory /path/to/okta-mcp-server okta-mcp-server~/.codex/config.toml
[mcp_servers.okta]
command = "uv"
args = ["run", "--directory", "/path/to/okta-mcp-server", "okta-mcp-server"]
env = { OKTA_CLIENT_ID = "<OKTA_CLIENT_ID>", OKTA_KEY_ID = "<OKTA_KEY_ID>", OKTA_ORG_URL = "<OKTA_ORG_URL>", OKTA_PRIVATE_KEY = "<OKTA_PRIVATE_KEY>", OKTA_SCOPES = "<OKTA_SCOPES>" }
# codex mcp add okta --env OKTA_CLIENT_ID='<OKTA_CLIENT_ID>' --env OKTA_KEY_ID='<OKTA_KEY_ID>' --env OKTA_ORG_URL='<OKTA_ORG_URL>' --env OKTA_PRIVATE_KEY='<OKTA_PRIVATE_KEY>' --env OKTA_SCOPES='<OKTA_SCOPES>' -- uv run --directory /path/to/okta-mcp-server okta-mcp-server~/.cursor/mcp.json
{
"mcpServers": {
"okta": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/okta-mcp-server",
"okta-mcp-server"
],
"env": {
"OKTA_CLIENT_ID": "<OKTA_CLIENT_ID>",
"OKTA_KEY_ID": "<OKTA_KEY_ID>",
"OKTA_ORG_URL": "<OKTA_ORG_URL>",
"OKTA_PRIVATE_KEY": "<OKTA_PRIVATE_KEY>",
"OKTA_SCOPES": "<OKTA_SCOPES>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"okta": {
"type": "stdio",
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/okta-mcp-server",
"okta-mcp-server"
],
"env": {
"OKTA_CLIENT_ID": "<OKTA_CLIENT_ID>",
"OKTA_KEY_ID": "<OKTA_KEY_ID>",
"OKTA_ORG_URL": "<OKTA_ORG_URL>",
"OKTA_PRIVATE_KEY": "<OKTA_PRIVATE_KEY>",
"OKTA_SCOPES": "<OKTA_SCOPES>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"okta": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/okta-mcp-server",
"okta-mcp-server"
],
"env": {
"OKTA_CLIENT_ID": "<OKTA_CLIENT_ID>",
"OKTA_KEY_ID": "<OKTA_KEY_ID>",
"OKTA_ORG_URL": "<OKTA_ORG_URL>",
"OKTA_PRIVATE_KEY": "<OKTA_PRIVATE_KEY>",
"OKTA_SCOPES": "<OKTA_SCOPES>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"okta": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/okta-mcp-server",
"okta-mcp-server"
],
"env": {
"OKTA_CLIENT_ID": "<OKTA_CLIENT_ID>",
"OKTA_KEY_ID": "<OKTA_KEY_ID>",
"OKTA_ORG_URL": "<OKTA_ORG_URL>",
"OKTA_PRIVATE_KEY": "<OKTA_PRIVATE_KEY>",
"OKTA_SCOPES": "<OKTA_SCOPES>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"okta": {
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/okta-mcp-server",
"okta-mcp-server"
],
"env": {
"OKTA_CLIENT_ID": "<OKTA_CLIENT_ID>",
"OKTA_KEY_ID": "<OKTA_KEY_ID>",
"OKTA_ORG_URL": "<OKTA_ORG_URL>",
"OKTA_PRIVATE_KEY": "<OKTA_PRIVATE_KEY>",
"OKTA_SCOPES": "<OKTA_SCOPES>"
}
}
}
}需要的环境变量
OKTA_CLIENT_IDOKTA_KEY_IDOKTA_ORG_URLOKTA_PRIVATE_KEYOKTA_SCOPES
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。