Okta MCP 服务器
该 MCP 服务器使 Claude 能够与 Okta 的用户管理系统进行交互,提供全面的用户和组管理功能以及入职自动化。
先决条件
- Node.js(v16 或更高版本)
- 克劳德桌面应用程序
- Okta开发者账户
- Okta 的管理员 API 令牌
设置说明
1.创建 Okta 开发者账户
- 前往Okta 开发者控制台
- 创建新帐户或登录现有帐户
- 记下您的 Okta 域名(例如,
dev-123456.okta.com
)
2. 创建 API 令牌
- 在 Okta 开发者控制台中,转到“安全”>“API”>“令牌”
- 点击“创建代币”
- 给你的令牌起一个有意义的名字(例如,“MCP 服务器令牌”)
- 复制令牌值(您将无法再看到它)
3. 初始项目设置
安装依赖项:
4.配置Claude桌面
打开您的 Claude Desktop 配置文件:
对于 MacOS:
对于 Windows:
添加或更新配置:
保存文件并重新启动 Claude Desktop。
可用工具
该服务器提供以下工具:
用户管理
获取用户
从 Okta 检索详细的用户信息,包括:
- 用户详细信息(ID、状态)
- 帐户日期(创建、激活、上次登录等)
- 个人信息(姓名、电子邮件)
- 就业详情
- 联系信息
- 地址
- 偏好设置
列出用户
列出 Okta 中的用户,并提供可选的过滤和分页功能:
- 支持 SCIM 过滤表达式(例如,'profile.firstName eq“John”')
- 跨多个字段的自由格式文本搜索
- 排序选项(按状态、创建日期等)
- 具有可自定义限制的分页支持
激活用户
在 Okta 中激活用户:
- 发送激活电子邮件的选项
- 将用户状态更新为活跃
暂停用户
在 Okta 中暂停用户
取消暂停用户
取消 Okta 中先前暂停的用户
删除用户
从 Okta 中删除用户(注意:必须先停用用户)
获取用户最后位置
从 Okta 系统日志中检索用户的最后已知位置和登录信息
集团管理
列表组
列出 Okta 中的用户组,并带有可选的过滤和分页功能:
- 组的过滤表达式(例如,'type eq“OKTA_GROUP”')
- 跨组字段的自由格式文本搜索
- 排序选项(按名称、类型等)
- 具有可自定义限制的分页支持
创建组
在 Okta 中创建一个新组,并指定名称和可选描述
获取组
检索特定组的详细信息
删除组
从 Okta 中删除一个组
将用户分配给组
在 Okta 中将用户分配到组
从组中删除用户
从 Okta 中的组中删除用户
列出组用户
列出特定组中的所有用户,并支持分页
入职自动化(实验性)
**注意:**入门自动化工具尚处于实验阶段,可能会根据 Okta 的 API 限制而有所变更或受限。请在生产环境中谨慎使用。
批量用户导入
从 CSV 字符串导入多个用户:
- 根据 CSV 数据创建用户帐户
- 用户可选激活
- 可选的电子邮件通知
- 分配到默认组
将用户分配到组
根据属性映射将多个用户分配到组:
- 将用户属性(部门、职称等)映射到特定组
- 根据属性批量分配用户
预配应用程序
为多个用户提供应用程序访问权限:
- 将用户分配到应用程序
- 支持批量配置
运行入职工作流
通过 CSV 数据为多个用户运行完整的入职工作流程:
- 从 CSV 导入用户
- 自动激活
- 基于属性的组分配
- 应用程序配置
- 欢迎电子邮件配置
Claude 中的示例用法
设置完成后,您可以使用以下命令:
用户管理
- “显示用户 ID XXXX 的详细信息”
- “用户john.doe@company.com的状态是什么?”
- “用户jane.smith@organization.com的上次登录时间是什么时候”
- “列出市场部所有用户”
- “查找上个月创建的用户”
- “激活 ID XXXX 的用户”
- “暂停 ID 为 XXXX 的用户”
- “删除 ID 为 XXXX 的已停用用户”
- “用户XXXX上次从哪里登录的?”
集团管理
- “显示我的 Okta 组织中的所有群组”
- “列出包含单词‘admin’的组”
- “创建一个名为‘营销团队’的新组”
- “获取 ID 为 XXXX 的组的详细信息”
- “删除 ID 为 XXXX 的组”
- “将用户 XXXX 添加到组 YYYY”
- “从组 YYYY 中删除用户 XXXX”
- “列出‘财务’组中的所有用户”
入职自动化
- “从 CSV 数据导入这些用户:[CSV 内容]”
- “根据部门属性将用户分配到组”
- “为这 5 位用户提供应用程序访问权限”
- “为这些新员工运行完整的入职流程:[CSV 内容]”
错误处理
该服务器包括强大的错误处理功能:
- 未找到用户或组(404 错误)
- API 身份验证问题
- 用户资料缺失或无效
- 常规 API 错误
- CSV解析问题
- 用户属性映射失败
- 应用程序配置错误
故障排除
常见问题
Claude 中未出现的工具:
- 检查 Claude Desktop 日志:
tail -f ~/Library/Logs/Claude/mcp*.log
- 验证所有环境变量是否设置正确
- 确保 index.js 的路径是绝对的并且正确
身份验证错误:
- 验证您的 API 令牌是否有效
- 检查 OKTA_ORG_URL 是否包含带有 https:// 的完整 URL
- 确保您的 Okta 域名正确
服务器连接问题:
- 检查服务器是否搭建成功
- 验证 build/index.js 的文件权限(应为 755)
- 尝试直接运行服务器:
node /path/to/build/index.js
查看日志
查看服务器日志:
对于 MacOS/Linux:
对于 Windows:
环境变量
如果您收到环境变量错误,请验证:
OKTA_ORG_URL
:应为完整的 URL(例如,“ https://dev-123456.okta.com ”)OKTA_API_TOKEN
:应该是一个有效的 API 令牌
安全注意事项
- 确保您的 API 令牌安全
- 不要将凭证提交到版本控制
- 使用环境变量来存储敏感数据
- 定期轮换 API 令牌
- 在 Okta 管理控制台中监控 API 使用情况
- 实施 API 调用速率限制
- 使用 API 令牌所需的最低权限
类型
该服务器包括用于 Okta 用户和组数据的 TypeScript 接口:
用于入职培训的 CSV 格式
使用批量导入或入职工作流工具时,您的 CSV 应包含以下标题:
firstName
(必填)lastName
(必填)email
(必填)department
(可选)title
(可选)mobilePhone
(可选)
例子:
执照
MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件。
支持
如果您遇到任何问题:
- 查看上面的故障排除部分
- 查看 Claude Desktop 日志
- 检查服务器的错误输出
- 查看 Okta 的开发者文档
注意:欢迎 PR!
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
使 Claude 能够与 Okta 的用户管理系统进行交互,提供检索用户详细信息、使用过滤选项列出用户以及管理用户组的功能。
Related MCP Servers
- AsecurityAlicenseAqualityEnables Claude to interact with Ethereum nodes, allowing users to check ENS token balances, view smart contract code, and decode transactions through natural language.Last updated -51JavaScriptMIT License
- -securityAlicense-qualityEnhances Claude's capabilities by providing access to website analytics data from Umami, enabling analysis of user behavior, website performance tracking, and data-driven insights generation.Last updated -4PythonMIT License
- AsecurityFlicenseAqualityA server that enables Claude Desktop users to access the Claude API directly, allowing them to bypass Professional Plan limitations and use advanced features like custom system prompts and conversation management.Last updated -15Python
- -securityFlicense-qualityLets you use Claude Desktop to interact with your task management data in Things app, enabling you to create tasks, analyze projects, manage priorities, and implement productivity workflows through natural language.Last updated -12Python