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.3.0.tar.gz (15.9 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.3.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcs_auth_auth0-0.3.0.tar.gz
  • Upload date:
  • Size: 15.9 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.3.0.tar.gz
Algorithm Hash digest
SHA256 97dcbbd04d9b0f3801664ef9d6e5abac83b3083d40f99b79403eca88a9379fda
MD5 d070fe87cf87c2d6e32ed75234857b69
BLAKE2b-256 52e26e1a7d7c8413ae7fc37aa04169f5eba174621a0fe1b596ca5af14bfa5918

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcs_auth_auth0-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 12.1 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4db2572e0e16d8fa7e950bd2090832729875ff7ca9fe15f32b9dcf968508e505
MD5 012d79892e81efb4393df1447f070dfa
BLAKE2b-256 167f191dd17165d193dce8ac564639f46bb8a85265bb9c4ca0b262a5d383c056

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