Skip to content

IT / Admin team playbook

You run the platform. This playbook covers the admin dashboard, provisioning access, wiring integrations, the gated flags that unlock writes, diagnostics, the REST API, and the security model everyone else depends on.

  • Manage sites, projects, tokens and users in the admin dashboard.
  • Connect OAuth integrations (Google, Meta, GitHub) per user.
  • Flip the per-site gated flags that unlock publishing and external writes.
  • Diagnose a site end-to-end.
  • Expose the same capabilities to custom apps over the REST API.
  • Understand and enforce the security guardrails.

Everything is at /admin (master-token login). Key screens:

ScreenWhat you do there
SitesCreate/edit sites: platform, base URL, credentials, integration IDs, and the gated flags (in the Danger zone).
ProjectsGroup sites under a client; grant users at the project level.
TokensMint /mcp tokens: scope to sites, set max_risk, skip_write_confirm, allowed tools. Plaintext shown once.
UsersCreate Worker users, force first-login password change, and connect Google / Meta / GitHub per user.
Audit logWho ran what, when, and the result (ok / denied / error) — including admin actions.
  1. Create the user (they set a password on first login).
  2. Grant them the project(s) or site(s) they work on.
  3. Mint a token scoped to those sites with an appropriate max_risk (0 = read-only, 1 = drafts, 2 = external writes, 3 = publish).
  4. For analytics/CRM: have the user connect the integration (Google / Meta / GitHub) and set the integration IDs on the site.

These live per-site and only a super-admin sets them. This is how you unlock the higher-risk actions after the safe default.

FlagUnlocks
allow_publishpublish_post / publish_page (T3)
allow_seo_on_publishedset_seo_meta / set_seo_schema on live posts
allow_main_branch_pushAstro writes to the primary branch (else preview branch)
allow_full_repo_writeAstro writes outside the whitelist + bulk_write_astro_files
allow_gohighlevel_writeGoHighLevel create/update/send (money-movement still blocked)
allow_drive_writedrive_save_audit
allow_querymind_writequerymind_create_content_job / querymind_rerun_job
FeatureTools
Diagnose a sitediagnose_site, ping_site
List / inspectlist_projects, list_sites, get_site
Astro scaffoldinginit_astro_project, bulk_write_astro_files, write_astro_file, check_astro_deploy, reset_astro_preview_branch

For custom apps that don’t speak MCP/JSON-RPC, /api/v1 wraps the same auth, scope, audit and dispatch path with a flatter shape:

Terminal window
curl -H "Authorization: Bearer $TOKEN" \
https://<worker>/api/v1/tools # list tools
curl -H "Authorization: Bearer $TOKEN" \
https://<worker>/api/v1/sites # list sites
curl -X POST -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"site_id":"acme-blog"}' \
https://<worker>/api/v1/tools/list_drafts

An OpenAPI 3.0 spec is at /api/v1/openapi.json. See REST API.

Run diagnose_site on "acme-site" and tell me what's broken — REST reachability,
Elementor, RankMath bridge, GitHub app, and (for GHL sites) Drive + Clarity.

diagnose_site branches by platform and reports every integration’s health plus the super-admin gate states.