SCIM Server
A comprehensive SCIM 2.0 server library for Rust that makes identity provisioning simple, type-safe, and enterprise-ready. SCIM (System for Cross-domain Identity Management) is the industry standard for automating user provisioning between identity providers and applications.
📢 Notice Board
| Current Version | 0.5.3 |
| Latest Changes | Major documentation expansion with Architecture Deep Dives, concept guides, and streamlined README |
| Stability | Pre-1.0 development. Minor version increments indicate breaking changes. Pin to exact versions (scim-server = "=0.5.3") for production use |
| Breaking Changes | Minor version increments signal breaking changes until v1.0. See CHANGELOG for migration guides |
Quick Start
Get up and running in minutes with our Getting Started Guide.
Key Features
- Type-Safe by Design - Leverage Rust's type system to prevent runtime errors
- Multi-Tenant Ready - Built-in support for multiple organizations/tenants
- Full SCIM 2.0 Compliance - Complete implementation of RFC 7643 and RFC 7644
- High Performance - Async-first architecture with minimal overhead
- Framework Agnostic - Works with Axum, Warp, Actix, or any HTTP framework
- AI-Ready - Built-in Model Context Protocol (MCP) for AI tool integration
- ETag Concurrency Control - Prevents lost updates in multi-client scenarios
- Enterprise Grade - Production-ready with comprehensive error handling and logging
Architecture
Client Applications → SCIM Server → Your Storage Backend
The SCIM Server acts as intelligent middleware that handles provisioning complexity, validation, schema management, multi-tenancy, and concurrency control while you focus on your storage implementation.
Documentation
| Resource | Description |
|---|---|
| 📚 User Guide | Comprehensive tutorials, concepts, and integration patterns |
| 🔧 API Reference | Detailed API documentation with examples |
| 💡 Examples | Ready-to-run code examples for common use cases |
| 📝 Changelog | Version history and migration guides |
Learning Path
- Installation - Get started in minutes
- Your First SCIM Server - Build a basic server
- Core Concepts - Understand the architecture
- Examples - Explore real-world implementations
Common Use Cases
Browse our examples directory for complete implementations:
- Basic Usage - Simple CRUD operations
- Multi-Tenant - Enterprise tenant isolation
- Group Management - Managing groups and membership
- ETag Concurrency - Preventing lost updates
- AI Integration - MCP server for AI agents
- Authentication - Type-safe auth patterns
Contributing
We welcome contributions! Please:
- Check existing issues or create a new one
- Read our User Guide for development information
- Follow our examples for code style and patterns
License
Licensed under the MIT License.
Need help? Check the User Guide or open an issue.