Okta MCP服务器
用于Okta用户管理的MCP(模型上下文协议)服务器。该服务器为Okta用户提供CRUD操作工具,可以部署到Railway或使用Docker在本地运行。
特性
- create_user -创建一个新的Okta用户
- list_users -列出具有可选搜索筛选的用户
- get_user -通过ID或登录获取用户详细信息
- update_user -更新用户配置文件信息
- 删除用户 -停用并删除用户
- API密钥验证 -所有MCP端点均受保护
x-api-key头球
先决条件
- Docker和Docker Compose
- 具有API访问权限的Okta开发人员帐户
- Octba API代币
获取Okta API代币
- 登录Okta管理控制台
- 导航至 安全>API>代币
- 点击 创建令牌
- 为其命名并复制令牌值(您将无法再次看到它)
本地开发
1.配置环境
# Copy the example environment file
cp .env.example .env
# Edit .env with your credentials
# OKTA_DOMAIN=dev-xxxxx.okta.com
# OKTA_API_TOKEN=00xxxxxxxxxxxxxxxxxx
# MCP_API_KEY=your-secret-api-key2.使用Docker构建和运行
# Build and start the server
docker-compose up --build
# The server will be available at http://localhost:80003.测试服务器
# Check server health (no auth required)
curl http://localhost:8000/health
# Test MCP endpoint (requires x-api-key header)
curl -X POST http://localhost:8000/mcp \
-H "x-api-key: your-secret-api-key" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "initialize", "params": {"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0.0"}}}'4.使用MCP检查员进行测试
npx @anthropic/mcp-inspector http://localhost:8000/mcp铁路部署
1.推送到GitHub
将此存储库推送到您的GitHub帐户。
2.部署到铁路
- 首选 铁路
- 点击 新项目 > 从GitHub仓库部署
- 选择您的存储库
- Railway将自动检测Dockerfile
3.配置环境变量
在铁路仪表板中,添加以下环境变量:
| 变量 | 描述 |
|---|---|
OKTA_DOMAIN | 您的Okta域名(例如。, dev-12345.okta.com) |
OKTA_API_TOKEN | 您的Okta API代币 |
MCP_API_KEY | 用于客户端身份验证的机密API密钥 |
铁路自动提供 PORT 变量。
4.获取您的服务器URL
部署后,Railway提供了一个公共URL:
https://okta-mcp-server-003-production.up.railway.app与Claude Desktop一起使用
添加到您的Claude Desktop MCP配置(claude_desktop_config.json):
{
"mcpServers": {
"okta": {
"url": "https://okta-mcp-server-003-production.up.railway.app/mcp",
"headers": {
"x-api-key": "your-mcp-api-key"
}
}
}
}对于当地发展:
{
"mcpServers": {
"okta": {
"url": "http://localhost:8000/mcp",
"headers": {
"x-api-key": "your-mcp-api-key"
}
}
}
}API 参考
create_user
创建一个新的Okta用户。
参数:
email(必填):用户的电子邮件地址first_name(必填):用户名last_name(必填):用户姓氏login(可选):用户登录(默认为电子邮件)
list_users
列出具有可选筛选功能的用户。
参数:
limit(可选):可返回的最大用户数(默认值:20)search(可选):搜索查询以进行筛选
get_user
通过ID或登录获取用户。
参数:
user_id(必填):用户名或登录电子邮件
update_user
更新用户配置文件。
参数:
user_id(必填):用户名或登录电子邮件first_name(可选):新名字last_name(可选):新姓氏email(可选):新电子邮件地址
删除用户
停用并永久删除用户。
参数:
user_id(必填):用户名或登录电子邮件
项目结构
okta-mcp-server/
├── src/
│ └── okta_mcp_server/
│ ├── __init__.py
│ ├── server.py # MCP server with tools
│ └── okta_client.py # Okta API wrapper
├── Dockerfile
├── docker-compose.yml
├── pyproject.toml
├── requirements.txt
├── .env.example
└── README.md许可证
麻省理工学院
