Integrations
Supported AI provider via Google Vertex AI, allowing use of Google's Gemini models through the Vertex AI platform.
Mentioned as an example integration that could be used alongside the Okta MCP Server for operations like creating spreadsheets with Okta user data.
Enables AI models to interact directly with Okta environments, providing tools for user management (listing, retrieving user details), group operations (listing groups and members), application management (listing applications and assigned users), policy and network management (listing policy rules and network zones), and system log event retrieval.
Okta MCP 服务器是一款突破性的工具,它使 AI 模型能够使用模型上下文协议 (MCP) 直接与您的 Okta 环境交互。它专为 IAM 工程师、安全团队和 Okta 管理员构建,并遵循 MCP 规范,旨在彻底改变 AI 助手管理和分析 Okta 资源的方式。
📋 目录
🔍 什么是模型上下文协议?
⚠️ 重要提示:安全性和限制
在使用 Okta MCP 服务器之前,请仔细阅读本节。
🔄 数据流与隐私
当您发出请求时,交互直接发生在 LLM 和 Okta MCP 工具之间——客户端应用程序不再位于中间。这些工具返回的所有数据(包括完整的用户配置文件、组成员身份等)都会在该对话的整个事务期间发送到 LLM 的上下文中并存储在其中。
关键隐私考虑因素:
- LLM(Claude、GPT 等)接收并处理工具检索的所有 Okta 数据
- 这些数据在对话期间保留在法学硕士的上下文中
- 您必须同意 LLM 提供商的系统处理您的 Okta 用户数据
- 在使用这些工具之前,请确保您同意将 Okta 数据发送到 AI 模型的服务器
📊 上下文窗口限制
MCP 是为类似 Zapier 的轻量级工作流程而设计的,而不是批量数据操作。
**建议:**将每个事务的请求限制为少于 100 个实体。避免需要获取大型数据集或多次 API 调用的操作。
例子:
❌避免以下类型的请求:
- “从我们的 Okta 租户中获取所有 10,000 名用户并分析他们的登录模式”
- “查找未注册 Okta Verify 的用户”
✅更好的方法:
- “获取最近创建的20个用户”
- “查找 90 天以上未登录的用户,限制显示前 50 条结果”
💡**对于更大的数据集和复杂的查询:**考虑使用Okta AI Agent进行更大的查询和数据集,该代理正在通过类似的“可操作”功能进行增强,以便在不久的将来处理更大的数据集和更复杂的场景。
🚨 SSE 传输安全警告
SSE over HTTP 传输模式存在较大的安全风险:
- 它会打开一个未经身份验证的 HTTP 服务器,并具有对 Okta 租户的完全访问权限
- 不提供身份验证或授权
- 任何可以访问网络端口的人都可以向您的 Okta 环境发出命令
**最佳实践:**除非您有特定的安全控制,否则仅使用 STDIO 传输方法(默认模式)。
🛠️ 可用工具
Okta MCP 服务器目前提供以下工具:
用户管理
list_okta_users
- 使用过滤、搜索和分页选项检索用户get_okta_user
- 通过 ID 或登录获取特定用户的详细信息list_okta_user_groups
- 列出特定用户所属的所有组list_okta_user_applications
- 列出特定用户的所有应用程序链接(分配的应用程序)list_okta_user_factors
- 列出为特定用户注册的所有身份验证因素
集团运营
list_okta_groups
- 使用过滤、搜索和分页选项检索组get_okta_group
- 获取有关特定组的详细信息list_okta_group_members
- 列出特定组的所有成员list_okta_assigned_applications_for_group
- 列出分配给特定组的所有应用程序
应用程序管理
list_okta_applications
- 使用过滤、搜索和分页选项检索应用程序list_okta_application_users
- 列出分配给特定应用程序的所有用户list_okta_application_group_assignments
- 列出分配给特定应用程序的所有组
策略与网络管理
list_okta_policy_rules
- 列出特定策略的所有规则,包括详细条件和操作get_okta_policy_rule
- 获取有关特定策略规则的详细信息list_okta_network_zones
- 列出所有网络区域及其 IP 范围和配置详细信息
系统日志事件
get_okta_event_logs
- 使用基于时间的过滤和搜索选项检索 Okta 系统日志事件
日期和时间实用程序
get_current_time
- 获取 ISO 8601 格式的当前 UTC 时间parse_relative_time
- 将自然语言时间表达转换为 ISO 8601 格式
针对应用程序、因素、策略和更高级操作的附加工具已列入路线图,并将在未来的版本中添加。
🚀 快速入门
先决条件
✅ 您的机器上安装了 Python 3.8+
✅ 具有适当 API 访问权限的 Okta 租户
✅ 与 MCP 兼容的 AI 客户端(Claude Desktop、Microsoft Copilot Studio 等)
⚠️ 重要模型兼容性说明:
并非所有 AI 模型都可与此 MCP 服务器兼容。测试仅针对以下设备进行:
- GPT-4.0
- 克劳德 3.7 十四行诗
- Google-2.5-pro
您必须使用明确支持工具调用/函数调用功能的最新模型版本。较旧的模型或不支持工具调用的模型将无法与 Okta MCP 服务器交互。
🧠 支持的 AI 提供商
Okta MCP 服务器通过其灵活的配置系统支持多个 AI 提供商。这允许您根据特定需求和现有访问权限连接到各种大型语言模型。
当前支持的提供商:
提供者 | 环境变量 | 描述 |
---|---|---|
OpenAI | AI_PROVIDER=openai | 使用 GPT-4o 等模型连接到 OpenAI API。需要 OpenAI API 密钥。 |
Azure OpenAI | AI_PROVIDER=azure_openai | 使用具有增强安全性和合规性功能的 Azure 托管 OpenAI 模型。 |
人择 | AI_PROVIDER=anthropic | 连接到 Anthropic 的 Claude 模型(主要使用 Claude 3.7 Sonnet 进行测试)。 |
谷歌 Vertex AI | AI_PROVIDER=vertex_ai | 通过 Vertex AI 使用 Google 的 Gemini 模型。需要 Google Cloud 服务帐户。 |
OpenAI 兼容 | AI_PROVIDER=openai_compatible | 连接到任何与 OpenAI API 兼容的端点,例如 Fireworks.ai、Ollama 或其他实现 OpenAI API 规范的提供商。 |
安装
**⚠️ 注意:**如果您重新克隆此存储库或提取更新,请务必重新运行
pip install -r requirements.txt
以确保所有依赖项都是最新的。
配置和使用
使用您的 Okta 设置创建一个配置文件:
要使用命令行客户端(无内存),请使用以下说明
要使用 Claude Code、vsCode 等 MCP 主机,请找到下面的 json 配置
支持的运输和发射
Okta MCP 服务器支持两种传输协议:
1. 标准 I/O (STDIO) - 推荐
- 安全性:通过标准输入/输出流直接通信
- 用例:非常适合 Claude Desktop 等桌面 AI 助手
- 配置:对于 Claude Desktop,添加到
claude_desktop_config.json
:将CopyDIR
替换为您的绝对目录路径,将OKTA_API_TOKEN
为您的实际令牌
2. 服务器发送事件 (SSE) - 仅限高级使用
⚠️警告:SSE 传输会将您的服务器通过 Web 端点暴露给任何能够访问您网络的人。请仅在具有适当网络保护措施的安全环境中使用。
- 对于其他 MCP 客户端:根据其 STDIO 或 SSE 传输的文档进行配置。
⚠️ 值得了解
Alpha 版本🧪
- 早期开发阶段 - 预计频繁更新
- API表面覆盖范围仍在扩大
- 目前专注于用户和组的只读操作
- 正在快速添加更多工具和功能
- 尚不适合生产环境
安全第一
- 专为最低权限操作而设计
- Okta 资源的默认只读访问权限
- 未来的写入操作将需要明确的批准流程
当前限制🔍
- 从为用户和组提供有限的只读工具开始
- 计划在即将发布的版本中快速扩展 API 覆盖范围
- 一些复杂的 Okta 关系尚未公开
- 非常大的 Okta 实例的性能尚未优化
- 需要直接通过网络访问 Okta API 端点
🗺️ 路线图
目前进展:
- [x] MCP 协议合规性
- [x] 基本 Okta API 集成
- [x] 只读操作支持
未来计划包括:
- [ ] 综合文档
- [ ] 完成用户生命周期操作
- [ ] 应用程序分配管理
- [ ] 群组成员操作
- [ ] 因子登记与验证
- [ ] 策略和规则管理
- [ ] 敏感操作的审批工作流程
- [ ] 多渠道审批选项(网络、电子邮件、Slack)
- [ ] 审计日志和合规性报告
- [ ] 系统日志集成
- [ ] 安全洞察生成
- [ ] 多租户支持
- [ ] 基于角色的访问控制
🆘 需要幫助嗎?
在提出问题之前,请检查:
- 📝 服务器配置
- 🔑 Okta API 权限
- 🔌 MCP 客户端兼容性
- 📊 服务器日志
仍有问题?请在 GitHub 上提交问题或发送电子邮件至 support@fctr.io (回复时间可能有所不同)
💡 功能需求和想法
有想法或建议吗?在 GitHub 上提交功能请求!
👥 贡献者
有兴趣贡献吗?我们非常欢迎!请联系info@fctr.io了解合作机会。
⚖️ 法律事务
请查看License.md
了解详细信息。
🌟 © 2025 Fctr Identity。保留所有权利。用心❤️为 Okta 和 AI 社区打造。
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
MCP 服务器与 okta 实体协同工作
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server implementation that enables interaction with the Letta API for managing agents, memory blocks, and tools in the Letta system.Last updated -913JavaScriptMIT License
- GoApache 2.0
- Python