Skip to main content

Auth0 Token Vault credential provider for the Model Context Standard.

Project description

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

License

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcs_auth_auth0-0.4.2.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcs_auth_auth0-0.4.2-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file mcs_auth_auth0-0.4.2.tar.gz.

File metadata

  • Download URL: mcs_auth_auth0-0.4.2.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for mcs_auth_auth0-0.4.2.tar.gz
Algorithm Hash digest
SHA256 e61b8253b7913e1bdafb2d5cf7600082150fdcf1e4a1b44ba7e475521b3bc879
MD5 b4000f20158fe69e5316932a6cb82bf3
BLAKE2b-256 d3f29c5e1b7bf1ac986b206b5b024a395e99c73a00a28526418590ef6c9fcb4b

See more details on using hashes here.

File details

Details for the file mcs_auth_auth0-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: mcs_auth_auth0-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.5

File hashes

Hashes for mcs_auth_auth0-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d06ca7dda9c3ab233da0a295ecebbf3be954005740909e5f4fb1d325269c571a
MD5 400f66dbb2c7f4951d2f129dae611147
BLAKE2b-256 0d92eee253b738fa1df1ce0b2884c14a586fcad1844a09e092739ace9ebefa2b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page