Scalekit is the auth stack for AI apps - from human authentication to agent authorization. Build secure AI products faster with authentication for humans (SSO, passwordless, full-stack auth) and agents (MCP/APIs, delegated actions), all unified on one platform. This Python SDK enables both traditional B2B authentication and cutting-edge agentic workflows.
- 🔐 Agent Identity: Agents as first-class actors with human ownership and org context
- 🎯 MCP-Native OAuth 2.1: Purpose-built for Model Context Protocol with DCR/PKCE support
- ⏰ Ephemeral Credentials: Time-bound, task-based authorization (minutes, not days)
- 🔒 Token Vault: Per-user, per-tool token storage with rotation and progressive consent
- 👥 Human-in-the-Loop: Step-up authentication when risk crosses thresholds
- 📊 Immutable Audit: Track which user initiated, which agent acted, what resource was accessed
- 🔐 Enterprise SSO: Support for SAML and OIDC protocols
- 👥 SCIM Provisioning: Automated user provisioning and deprovisioning
- 🚀 Passwordless Authentication: Magic links, OTP, and modern auth flows
- 🏢 Multi-tenant Architecture: Organization-level authentication policies
- 📱 Social Logins: Support for popular social identity providers
- 🛡️ Full-Stack Auth: Complete IdP-of-record solution for B2B SaaS
- 🐍 Pythonic API: Clean, intuitive interface following Python conventions
- Sign up for a Scalekit account.
- Get your
env_url
,client_id
andclient_secret
from the Scalekit dashboard.
Install Scalekit SDK using your preferred package manager.
pip install scalekit-sdk-python
from scalekit import ScalekitClient
sc = ScalekitClient(
env_url,
client_id,
client_secret
)
# Use the sc object to interact with the Scalekit API
auth_url = sc.get_authorization_url(
"https://acme-corp.com/redirect-uri",
state="state",
connection_id="con_123456789"
)
To use the Scalekit Python SDK, you must have the following:
Component | Version |
---|---|
Python | 3.8+ |
Tip: Although Python 3.8 meets the minimum requirement, using a more recent version (such as Python 3.9 or later) is advisable.
Below is a simple code sample that showcases how to implement Single Sign-on using Scalekit SDK
from fastapi import FastAPI, Request, Response
from scalekit import ScalekitClient
import uvicorn
app = FastAPI()
sc = ScalekitClient(
env_url,
client_id,
client_secret
)
redirect_uri = "http://localhost:8000/auth/callback"
@app.get("/auth/login")
async def auth_login(request: Request):
auth_url = sc.get_authorization_url(
redirect_uri,
state="state",
connection_id="con_123456789"
)
return Response(status_code=302, headers={"Location": auth_url})
@app.get("/auth/callback")
async def auth_callback(request: Request):
code = request.query_params.get("code")
token = sc.authenticate_with_code(
code,
redirect_uri
)
response = JSONResponse(content=token)
response.set_cookie("access_token", token["access_token"])
return response
if __name__ == "__main__":
uvicorn.run(app, port=8080)
Explore fully functional sample applications built with popular Python frameworks and the Scalekit SDK:
Framework | Repository | Description |
---|---|---|
FastAPI | scalekit-fastapi-example | Modern async Python API framework |
- SSO Integration - Implement enterprise Single Sign-on
- Full Stack Auth - Complete authentication solution
- Passwordless Auth - Modern authentication flows
- Social Logins - Popular social identity providers
- Machine-to-Machine - API authentication
- API Reference - Complete API documentation
- Developer Kit - Tools and utilities
- API Authentication Guide - Secure API access
- Setup Guide - Initial platform configuration
- Code Examples - Ready-to-use code snippets
- Admin Portal Guide - Administrative interface
- Launch Checklist - Pre-production checklist
This project is licensed under the MIT license. See the LICENSE file for more information.