> ## Documentation Index
> Fetch the complete documentation index at: https://docs.waniwani.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Service accounts

> Issue a workspace-wide service-account key, choose the scopes it can hold, and control destructive operations.

When you connect WaniWani to a workspace-wide tool — for example the [Claude-in-Slack connector](/mcp-server/connect) — an organization admin issues a **service-account key** (`wws_…`) from **Settings → Service accounts**. The key acts on its own labelled identity, and the admin chooses up front exactly how much of the organization it may touch:

* a set of **scopes** — the resources the key can read and write, and
* a **destructive-operations** toggle — whether it may deploy, connect a repo, or delete whole resources.

The key is shown once, at creation. You can revoke it at any time, which takes effect immediately.

## Permissions & scopes

A key carries a fixed set of scopes, chosen when you issue it. Each area has a `read` and a `write` scope, and the key holds exactly the ones you select.

<Note>
  A new key is **read-only** — `mcp:read` and `kb:read` — until you add more scopes.
</Note>

| Scope                 | Description                                                                                |
| --------------------- | ------------------------------------------------------------------------------------------ |
| `mcp:read`            | View agents and their environments, channels, and deployments                              |
| `mcp:write`           | Create and edit agents, environments, and channels                                         |
| `kb:read`             | View knowledge base sources and their content                                              |
| `kb:write`            | Add, edit, and remove knowledge base content                                               |
| `analytics:read`      | View traffic, sessions, funnels, and insights                                              |
| `analytics:write`     | Create and edit funnels and analytics views                                                |
| `evals:read`          | View evaluations, evaluators, and their results                                            |
| `evals:write`         | Create, edit, and run evaluations                                                          |
| `conversations:read`  | View personas, their conversations, and shared submissions                                 |
| `conversations:write` | Manage personas and conversation submissions                                               |
| `competition:read`    | View tracked competitor companies                                                          |
| `competition:write`   | Add and edit tracked competitor companies                                                  |
| `geo:read`            | View GEO visibility: brand presence in AI answers, monitored prompts, and competitor stats |
| `geo:write`           | Manage GEO tracking: monitored prompts, sources, and tags                                  |

## Destructive operations

Some actions can't be undone or take a running agent offline. A service-account key may perform them **only when the “Allow destructive operations” toggle is enabled** for that key. The toggle is **off by default** and is independent of the scopes above: a key with `mcp:write` can edit content, but it still cannot run a destructive action unless the toggle is on.

<Warning>
  The toggle only affects service-account keys. It does not change what a signed-in teammate can do, and it does not widen the key's scopes — it only unlocks the operations below for scopes the key already holds.
</Warning>

With the toggle enabled, the key may:

**Deploy & connect**

* Clone managed project repo to GitHub
* Connect project to a user-owned GitHub repo
* Deploy the latest commit on an environment's branch
* Migrate a managed project to a user-owned repo
* Promote a channel
* Redeploy a past deployment's commit
* Roll back production to a past deployment

**Delete a whole resource**

* Delete a project
* Delete environment
* Delete environment channel

Everyday content changes — including deleting individual items such as a knowledge-base source, an evaluator, or an email template — need only the matching `write` scope and are **not** gated by this toggle.
