Welcome to MC2 Client’s documentation!

MC2 Client is a local trusted client that enables users to securely interface with the MC2 ecosystem. In particular, MC2 Client allows users to initialize their identities, launch MC2-loaded VMs and other resources on Azure Confidential Computing, start and stop MC2 compute services (Opaque SQL and Secure XGBoost), transfer their encrypted sensitive data to the cloud for processing, and remotely run secure computation on their data.

MC2 Client provides two interfaces, a Python interface and a command line interface. Both rely on a configuration file to configure MC2 Client; the command line interface is simpler but less flexible, while the Python interface gives users finer grained control over what they want to do.

While MC2 currently offers various compute services, the client is currently only compatible with Opaque SQL. We are currently in the midst of updating Secure XGBoost to be compatible with the client.