About Casdoor
Casdoor is an MCP server in the Agents category: an open-source AI-first Identity and Access Management (IAM) /AI MCP gateway and auth server with web UI supporting MCP, A2A, OAuth 2.1, OIDC, SAML, CAS, LDAP, SCIM, WebAuthn, TOTP, MFA, Face ID, Google Workspace, Azure AD.
Install
git clone https://github.com/casdoor/casdoorThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Casdoor
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
Table of contents
- Why Casdoor
- Live demos
- Quick start
- Features
- Technology stack
- Documentation
- Integrations
- Security
- Community and support
- Contributing
- License
Why Casdoor
Casdoor is a UI-first identity provider and access management platform: one place to manage users, organizations, applications, and providers, with a modern web console. Authorization policies can be expressed with Casbin (ACL, RBAC, ABAC, and more). Unlike reverse-proxy-centric auth companions, Casdoor is a dedicated auth server with broad protocol support, designed to be straightforward to self-host and integrate—see casdoor.ai for documentation.
🌐 Live demos
| Environment | URL | Description |
|---|---|---|
| Read-only | door.casdoor.com | Global demo; any modification or write operation will fail (read-only). |
| Writable | demo.casdoor.com | Full access for testing; data is reset about every 5 minutes. |
Default demo admin login (where applicable): admin / 123 — use only for demos; change credentials on your own deployment.
🚀 Quick start
Pick one deployment method below. To keep behavior consistent with upstream, the steps are aligned with official docs.
🛠️ Source code (default)
- Install dependencies: Go 1.25 (follow
go.mod), Node.js LTS (20), Yarn 1.x, and a supported database. - Clone the repository:
git clone https://github.com/casdoor/casdoor.git
cd casdoor
- Configure database in
conf/app.conf(at minimum setdriverName,dataSourceName, anddbName; for MySQL create databasecasdoorfirst). - Build frontend and start backend:
cd web
yarn install
yarn build
cd ..
go run main.go
- Open http://localhost:8000 and sign in with
built-in/admin/123on a fresh install (change password immediately in production).
Official guide: Server installation
🐳 Docker
Use one of the official Docker paths:
- All-in-one (SQLite quick trial):
docker run -p 8000:8000 casbin/casdoor-all-in-one
- Docker Compose (with your
conf/app.confnext todocker-compose.yml):
docker compose up
Then open http://localhost:8000 and sign in with built-in/admin / 123 on a fresh install.
Official guide: Try with Docker
☸️ Kubernetes Helm
With Helm v3 and a running Kubernetes cluster:
helm install casdoor oci://registry-1.docker.io/casbin/casdoor-helm-charts
After installation, access Casdoor through your cluster service/ingress. The official guide covers chart versions (including optional --version) and cluster-specific settings.
Official guide: Try with Helm
✨ Features
🔐 Authentication
- OAuth 2.0 / OIDC — OpenID Connect and OAuth 2.x authorization
- SAML 2.0 — Enterprise SSO integration
- CAS — Central Authentication Service
- LDAP — Directory service integration
- WebAuthn / Passkeys — Passwordless authentication
- TOTP / MFA — Multi-factor authentication
- Face ID — Biometric authentication
🏢 Enterprise
- SCIM 2.0 — User provisioning
- RBAC — Role-based access control
- Social Login — Google, GitHub, Azure AD, and more
- Custom providers — Extensible identity providers
- User management — Web UI for administration
- Audit logs — Comprehensive logging
- Multi-tenancy — Organization support
🤖 AI & MCP
- MCP Gateway — Model Context Protocol support
- A2A Protocol — Agent-to-Agent communication
- AI-First Design — Built for AI applications
🛠️ Developer Experience
- RESTful API — Complete API coverage
- SDKs — Go, Java, Python, Node.js, and more
- Swagger UI — Interactive API documentation
- Webhooks — Event-driven integrations
- Customizable UI — Brand theming support
Technology stack
Casdoor is built as a frontend–backend separated project:
- Web UI: JavaScript and React (
web/) - API server: Go with Beego, RESTful APIs (repository root)
- Data: mainstream databases including MySQL, PostgreSQL, and others (overview)
- Cache: optional Redis for session/cache-style deployments (configure as needed)
📖 Documentation
All product documentation, installation, and tutorials live at casdoor.ai/docs/overview. Start here, then use the sections below.
Install
Connect applications
APIs
- Public API
- Swagger UI (live API explorer)
🔌 Integrations
Casdoor integrates with common languages and frameworks:
Browse the full list: Integrations.
🤝 Community and support
- Discord: Join our community
- Contact: casdoor.ai/help
- Issues: GitHub Issues
- Discussions: GitHub Discussions
🌍 Contributing
If you have questions about Casdoor, you can open an issue. Pull requests are welcome; we recommend opening an issue first so you can align with maintainers and the community before larger changes.
Please also read our contribution guidelines before contributing.
Translation and i18n
- Crowdin is used for translation workflows: casdoor-site on Crowdin.
- The web app uses i18next. When you add or change user-visible strings under
web/, update the English catalog atweb/src/locales/en/data.jsonaccordingly.
📄 License
Casdoor is licensed under the Apache License 2.0.
© 2026 Casdoor. Licensed under Apache License 2.0.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.