Thoth SDK
sdk v0.1.6 / proxy v0.2.7

Intune macOS Runbook

Step-by-step Intune deployment runbook for onboarding managed macOS endpoints to thoth governance.

Use this runbook to deploy governed Claude Desktop configuration to managed employee Macs through Intune.

1. Before you begin

Confirm:

  • thoth onboarding values are available (tenant_id, apex_domain)
  • Claude Desktop is already deployed on target Macs
  • baseline dependencies (thoth, node, npx) are available on targets

2. Deploy the thoth config file

Deploy this file before the setup script:

/Library/Application Support/Thoth/thoth-config.json

Recommended delivery methods:

  • Intune macOS shell script assignment
  • macOS profile delivering equivalent content

The setup script should treat this config file as source-of-truth, with optional environment fallback only for testing.

3. Upload macOS setup script

Upload your setup script (for example deploy/intune/macos/setup-claude-mcp.sh) in:

  • Intune Admin Center → Devices → macOS → Shell scripts

Recommended settings:

  • Run script as signed-in user: No
  • Hide script notifications: Yes
  • Number of times to retry if script fails: 3

4. Assignment order

Use this order for reliable onboarding:

  1. Baseline dependencies assignment
  2. thoth-config.json assignment
  3. Setup script assignment

Scope each stage to test, then pilot, then full production groups.

5. Validate on a test Mac

Run:

thoth health --json
thoth status

Then verify:

  • config exists at /Library/Application Support/Thoth/thoth-config.json
  • Claude config exists at ~/Library/Application Support/Claude/claude_desktop_config.json
  • setup log shows successful wrap and restart flow (/var/log/thoth-setup.log)

6. Ongoing operations

  • Keep setup script assignment recurring and idempotent.
  • Rotate onboarding values by updating the config assignment, then re-running setup assignment.
  • Use Incident Response and Rollback runbooks for production issues.

Troubleshooting

SymptomLikely causeWhat to check
thoth not foundBaseline dependency assignment missingConfirm dependency assignment completed before setup assignment
registration_ok=falseWrong tenant_id/apex_domain or network controlsValidate deployed config values and outbound connectivity
MCP servers not governedManaged Claude config was not writtenCheck setup log and resulting claude_desktop_config.json
Script exits non-zero repeatedlyConfig missing or script context mismatchConfirm config path and script runs as root/system context
Claude does not pick up new configApp restart not appliedCheck restart lines in setup log, then relaunch Claude manually on test endpoint

On this page