microsoft
entra.
READ the organization's Microsoft 365 directory — for its administrators. Nothing
setup & usage
the directory is read and changed with the rights of the person connected, and its permissions (read the whole directory and the sign-in logs, assign licences, enable accounts, manage group members) always need a Microsoft 365 administrator.
microsoft_admin_consent(services=["entra"])): this approval is never part of the approval of the other Microsoft servicesentra reads, under the account the call names (_account=), otherwise the default one.
entra(op="licenses")entra(op="users", licensed=true, sign_in=true), then compare with the HR list of current staff; without P1, drop sign_inentra(op="users", enabled=false, licensed=true)entra(op="users", license="Business Standard")entra(op="groups", kind="distribution"), then entra(op="group", group_id=…)entra(op="user", user="jane@…"): licences, manager, groupsentra_act acts at once, for the person concerned: confirm with the user before each change.
entra_act(op="add_license", user="jane@…", license="Business Standard")entra_act(op="disable_account", user="paul@…"), then entra_act(op="remove_license", …) for each of his licencesentra(op="groups", query="quality") for its id, then entra_act(op="add_member", user="jane@…", group_id=…): she gets the team and its SharePoint siteusageLocation in op="user"), set in the admin centre; without it Microsoft refuses the licenceadd_member refuses themop="group"); access granted inside SharePoint itself (SharePoint groups, sharing links) is not listedop="sites" lists the sites the connected person can see, not necessarily all of themop="user" lists the groups an account is a direct member ofskuPartNumber) not known to oto is shown as that codeaccounts, licences and subscriptions, last sign-in, groups (Microsoft 365, security, mailing lists) and their members and owners, team sites, visible SharePoint sites; written: licences, enabled accounts, members of security and Microsoft 365 groups. A person's mail, files or calendar are the other Microsoft cards.
this connector accepts multiple comptes: connecting with another compte adds it alongside the others, named by its address; reconnecting with the same one replaces its own.
_account="<name>" on the tool; list them: oto_identity(op='list', connector='entra')oto_identity(op='set', connector='entra', identity_id='<name>')_account) and adding upoutils
utilisation
claude plugin marketplace add otomata-tech/oto-plugin — mcp + skill configurés.pipx install oto-cli puis oto entra …