mcs-auth-auth0
One credential. Every service. Auth0 Token Vault integration for the Model Context Standard (MCS).
Configure Gmail, Google Drive, Slack, GitHub, and Microsoft connections
once in the Auth0 dashboard. Your agent accesses all of them through a
single get_token(scope) call. No separate OAuth clients, no per-service
credential management, no token refresh headaches.
Installation
pip install mcs-auth-auth0
Quick start
from mcs.auth.auth0 import Auth0Provider
provider = Auth0Provider(
domain="my-tenant.auth0.com",
client_id="...",
client_secret="...",
refresh_token="...", # from auth setup or AuthPort connector
)
# One call -- Auth0 handles the Token Vault exchange (RFC 8693)
google_token = provider.get_token("gmail")
slack_token = provider.get_token("slack")
github_token = provider.get_token("github")
How it works
Your Agent Auth0 Token Vault External Provider
| | |
|-- get_token("gmail") ----->| |
| |-- RFC 8693 exchange ---->|
| |<--- Google access token -|
|<-- "ya29.a0..." ----------| |
The Auth0Provider exchanges an Auth0 refresh token for an external
provider's access token via Token Vault. It doesn't know how the
refresh token was obtained -- that's pluggable via AuthPort:
from mcs.auth.auth0 import Auth0Provider
from mcs.auth.oauth import OAuthConnector # browser login
from mcs.auth.linkauth import LinkAuthConnector # device-flow broker
# Browser-based login
provider = Auth0Provider(..., _auth=OAuthConnector(...))
# LinkAuth device-flow (no browser callback needed)
provider = Auth0Provider(..., _auth=LinkAuthConnector(...))
Built-in scope mapping
| MCS scope | Auth0 connection |
|---|---|
gmail, google, google-drive, google-calendar |
google-oauth2 |
slack |
slack |
github |
github |
microsoft |
windowslive |
Custom mappings: Auth0Provider(..., connections={"myservice": "my-connection"})
Links
- Homepage: https://www.modelcontextstandard.io
- Source: https://github.com/modelcontextstandard/python-sdk
License
Apache-2.0
Metadata
Release files for mcs-auth-auth0 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcs_auth_auth0-0.4.2.tar.gz | 17.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcs_auth_auth0-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.6 kB
Release files / mcs_auth_auth0-0.4.2.tar.gz
| Download URL | mcs_auth_auth0-0.4.2.tar.gz |
|---|---|
| Size | 17.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e61b8253b7913e1bdafb2d5cf7600082150fdcf1e4a1b44ba7e475521b3bc879
|
|
BLAKE2b-256 checksum How to use checksums |
d3f29c5e1b7bf1ac986b206b5b024a395e99c73a00a28526418590ef6c9fcb4b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.5
|
Release files / mcs_auth_auth0-0.4.2-py3-none-any.whl
| Download URL | mcs_auth_auth0-0.4.2-py3-none-any.whl |
|---|---|
| Size | 13.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d06ca7dda9c3ab233da0a295ecebbf3be954005740909e5f4fb1d325269c571a
|
|
BLAKE2b-256 checksum How to use checksums |
0d92eee253b738fa1df1ce0b2884c14a586fcad1844a09e092739ace9ebefa2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.5
|