Users & Groups¶
MCC stores users in Elasticsearch. These operations are available via the mcc user CLI or from an LLM by calling execute with the tool key shown below.
User model¶
Each user has:
| Field | Description |
|---|---|
username |
Unique identifier |
email |
Used for identity resolution from tokens |
groups |
List of group memberships |
tools |
List of explicit tool key grants |
Managing users¶
Add a user¶
tool key: admin.auth.users.create_user
List users¶
tool key: admin.auth.users.list_users
Remove a user¶
tool key: admin.auth.users.delete_user
Managing groups¶
Grant group membership¶
tool key: admin.auth.groups.add_group
Revoke group membership¶
tool key: admin.auth.groups.remove_group
Explicit tool grants¶
Grant a user access to a specific tool without adding them to its group:
tool key: admin.auth.tools.add_tool / admin.auth.tools.remove_tool
Reserved groups¶
| Group | Behavior |
|---|---|
public |
Any user (including unauthenticated) can access tools in this group |
admin |
Full access to all tools regardless of their declared groups |
Users in admin bypass all group checks — they can execute any tool in the catalog.
Groups in YAML¶
Tools declare their required groups in YAML. A user needs membership in at least one of the tool's groups (or an explicit grant) to execute it: