Privacy

Privacy policy

mcc runs on your computer. It has no accounts, no telemetry and no analytics, and the project receives no data from you.

Effective October 21, 2026 · Applies to the mcc command-line tool and this website

Summary #

No telemetry

mcc does not report usage, crashes or any other data to the project or anyone else.

Local files only

Everything mcc stores stays in your home directory, mostly under ~/.mcc.

No logins read by default

Usage comes from what mcc statusline cached on your machine. Asking Anthropic with each account's login is an opt-in.

No cookies on this site

This website sets no cookies and loads no analytics, fonts or scripts from other hosts.

What mcc reads #

To do its job, mcc reads these files and settings on your computer. None of it leaves your machine except as described under Network requests.

  • Your Claude Code setup: ~/.claude, ~/.claude.json and each profile directory, to copy, sync and count settings, skills, agents, plugins, MCP servers and hooks.
  • Your shell environment: your OS, terminal, shell, $PATH, and your shell rc files (.zshrc, .bashrc, fish config and similar), to check that a new alias doesn't clash with an existing command and to manage its own alias block.
  • Cached usage: the rate limits mcc statusline, or the last mcc usage --all, saved in ~/.mcc/state/<profile>/usage.json (percent used and reset times only), which mcc list, mcc usage and mcc run show by default.
  • Claude Code logins, only if you turn on the live usage lookup (live = true under [usage] in ~/.mcc/config.toml; off by default) or run mcc usage --all (that one run only, with a risk notice each time): each profile's .credentials.json, or on macOS the Keychain item Claude Code created for that profile, under your login name ($USER, or the system's name for your user when USER is unset). The access token is held in memory for the request and then discarded.
  • Account status: mcc runs claude auth status to show which account each profile is signed in to.

What mcc stores #

mcc writes only to your home directory (or to MCC_HOME if you set it):

LocationContents
~/.mcc/config.tomlDetected environment (OS, shell, rc file, claude path), the list of profiles, the account each mcc profile signed in to as Claude Code reports it (email, account ID, and organization name, ID and type), each profile's label and color, project defaults, your settings, and when one-time notes (such as the live usage lookup disclosure) were shown
~/.mcc/.lockAn empty file that mcc commands lock while they change config.toml, so two runs don't lose each other's changes
~/.mcc/state/<profile>/After mcc statusline install or mcc usage --all: the 5-hour and weekly rate limits (percent used and reset time), cached by the status line or saved by the last mcc usage --all, and the statusLine setting the shim replaced (only after mcc statusline install). No login or token
~/.mcc/profiles/<alias>/Each profile's Claude Code configuration. Claude Code itself stores that profile's login and history here
<profile>/.mcc-sync.jsonThe paths and MCP server names mcc last copied into the profile, each with a hash of what it wrote, so mcc sync can tell your edits from the default's changes. No file contents
~/.mcc/shared/projects/, ~/.mcc/shared/groups/<name>/projects/Session transcripts of the profiles you opted in with mcc share, one store per group. They exist only once sharing is turned on
~/.mcc/logs/mcc.logA log of each command's steps and results, which can include file paths and a profile's account email. It never contains access tokens. At about 1 MB it is moved to mcc.log.1, replacing the previous one, so at most about 2 MB of log is kept
~/.mcc/backups/, <profile>/.mcc-backup/Copies of your rc file, of the settings.json files mcc statusline changes, and of the profile files a sync overwrites or removes, taken before mcc changes them; a profile's own copy of what mcc link replaces, its plugins included; and session files that mcc share could not merge
~/.local/bin/<alias> and your rc fileThe launcher for each profile and a marked alias block

Results of the live lookup turned on with live = true are shown and discarded; mcc does not save them. mcc usage --all saves only the percentages and reset times it finds, in ~/.mcc/state/<profile>/ as above, never the token.

Network requests #

Usage lookups (opt-in)

By default mcc list, mcc usage and mcc run make no network request for usage: they read the statusline cache. Only with live = true under [usage] in ~/.mcc/config.toml, or for one run of mcc usage --all, does mcc send one HTTPS request per signed-in profile, the default included, to Anthropic's undocumented usage endpoint, https://api.anthropic.com/api/oauth/usage. With live = true the first such command prints a one-time disclosure; mcc usage --all prints a risk notice every time it runs. Each request carries:

  • that profile's own access token, in the Authorization header
  • a User-Agent of mcc/<version>

Anthropic returns the percent of the 5-hour and weekly limits used and when they reset. A token is never sent to any other host, never sent for another profile, and never sent once it has expired. mcc never refreshes tokens.

The only exception is the MCC_USAGE_URL override, intended for testing. It accepts only https:// URLs or http:// on your own machine (loopback); any other value is refused and nothing is sent.

Claude Code sign-in and sign-out

mcc add runs claude auth login, and mcc delete runs claude auth logout. Those are Claude Code's own commands. They talk to Anthropic under Anthropic's terms, and mcc does not see your password or the sign-in exchange.

Installing mcc

The install script downloads a prebuilt mcc binary and its SHA-256 checksum from mcc's GitHub releases, over HTTPS only. It builds from source instead, as cargo install and brew install do, when a release has no binary for your platform, with MCC_FROM_SOURCE=1, or when run from a clone. Building downloads mcc's source from GitHub and its dependencies from crates.io, and Homebrew also downloads its own Rust to build mcc. Those services see the request like any other download.

mcc makes no other network requests.

Third parties #

mcc is an independent project and is not affiliated with Anthropic.

This website #

This site is a set of static pages served by GitHub Pages. It sets no cookies, runs no analytics or tracking, and loads no fonts, scripts or images from other hosts. The only script is a small local file that adds copy buttons, highlights the table of contents and plays the terminal demo on the home page.

GitHub, as the host, may log technical information about visits, such as IP addresses, for security and operation. That is covered by GitHub's privacy statement, linked above. The project has no access to those logs.

Your control #

  • Live usage lookups are off unless you set live = true under [usage], or run mcc usage --all for a single lookup; set live back to false (or remove it) to stop them. mcc list --no-usage or MCC_NO_USAGE=1 skip usage entirely, cache included.
  • Remove a profile with mcc delete <alias>. It signs the profile out and deletes its directory, launcher and alias block.
  • Remove everything by following Uninstall, which ends with rm -rf ~/.mcc.

Because the project never receives your data, there is nothing for it to export or delete on your behalf.

Changes #

If mcc's data handling changes, this page and the changelog will say so, and the effective date above will change. The full history of this page is in the repository.

Contact #

Questions about this policy: email [email protected] or open an issue. To report a security problem, use private vulnerability reporting as described in SECURITY.md.