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.0.tar.gz (16.3 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.0-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcs_auth_auth0-0.4.0.tar.gz
  • Upload date:
  • Size: 16.3 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.0.tar.gz
Algorithm Hash digest
SHA256 ed0a6c078e052fb33098d28f4bab2afa461ab31fc3514795bbaafdba8201a9bb
MD5 a00dd8ee69dc8cecf542ada00384f80a
BLAKE2b-256 64eab66b95a8e62739cfaf683d6006391312975c543d034d4128778018d0cbf5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcs_auth_auth0-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 12.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b5d87d7ef7aa4fbf578266c193afeab3dd5fbdccc77e840e5b75bc3db2191db2
MD5 c4ea87c43763a27b16f636d4efafb730
BLAKE2b-256 3996317e8d55a100c85231720cb5d8a165eac6ca0b6d987681694159d0b8ed80

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