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

# System abilities: site info, session, and licensing

> Bootstrap every session, check site info and license status, manage playbooks and ability rules, and access the file system with Maxi AI Core system abilities.

System abilities are the foundation of every Maxi AI session. They handle session bootstrapping, site information, licensing, playbook management, ability rules, and — on the Pro plan — direct file system access and email delivery. Most system abilities are available on the Lite plan; file access, email sending, and data masking require Pro.

## All system abilities

| Ability                     | Description                                                                                                                                                                               | Capability          | Plan |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ---- |
| `maxi/bootstrap-session`    | Session bootstrap — call this before any other ability. Returns the operational playbook, active operator-notes, knowledge-note headers, and available reference docs.                    | `is_user_logged_in` | Lite |
| `maxi/get-site-info`        | Site name, URL, language, timezone, WordPress version, Maxi AI version, and full license status including entitlements.                                                                   | `read`              | Lite |
| `maxi/activate-license`     | Activate a Maxi AI license key on this site (Lite or Pro).                                                                                                                                | `manage_options`    | Lite |
| `maxi/deactivate-license`   | Deactivate the current license. Only session bootstrap and licensing abilities remain callable until you activate again.                                                                  | `manage_options`    | Lite |
| `maxi/get-current-user`     | Current authenticated WordPress user details and roles.                                                                                                                                   | `read`              | Lite |
| `maxi/get-post-types`       | List all registered post types with their supported features and associated taxonomies.                                                                                                   | `read`              | Lite |
| `maxi/get-taxonomies`       | List all registered taxonomies with their associated post types.                                                                                                                          | `read`              | Lite |
| `maxi/get-ability-rule`     | Fetch the site rule for a Maxi AI ability and mark it acknowledged for the current MCP session.                                                                                           | `edit_posts`        | Lite |
| `maxi/rules-sync`           | Install or refresh baseline ability rules shipped with the plugin. Call when an ability returns `rules_not_installed`.                                                                    | `edit_posts`        | Lite |
| `maxi/get-playbook`         | Fetch an on-demand reference playbook by slug. Required playbooks must be fetched via `maxi/bootstrap-session`.                                                                           | `edit_posts`        | Lite |
| `maxi/manage-ability-rules` | Read-only inspector for site-level ability rules. Actions: `list` (filter by source) and `get` (by ability ID). Operator-only — not exposed in MCP.                                       | `manage_options`    | Lite |
| `maxi/manage-playbooks`     | Operator CRUD for site-level playbooks. Actions: `list`, `get`, `upsert`, `delete`. Required playbooks cannot be deleted. Operator-only — not exposed in MCP.                             | `manage_options`    | Lite |
| `maxi/list-files`           | **\[PRO]** List files and subdirectories inside `wp-content/`. Returns names, sizes, modification dates. Supports glob patterns and sorting by name or date.                              | `manage_options`    | Pro  |
| `maxi/read-file`            | **\[PRO]** Read any file inside `wp-content/`, including PHP source. Sensitive configuration files and executable/data-dump extensions are blocked. Max 500 KB.                           | `manage_options`    | Pro  |
| `maxi/send-email`           | **\[PRO]** Send an email via `wp_mail()`. Disabled by default — must be enabled via the `maxi_ai_email_security` option or `MAXI_AI_EMAIL_SECURITY` constant. Every send is audit-logged. | `is_user_logged_in` | Pro  |
| `maxi/manage-mask-fields`   | **\[PRO]** Add, remove, or list field names in the GDPR data masking list. Matching response keys are partially redacted before reaching the agent.                                       | `manage_options`    | Pro  |

## Key ability examples

### maxi/bootstrap-session

You must call `maxi/bootstrap-session` before any other ability in every session. This requirement is server-enforced — all other abilities are blocked until bootstrap completes successfully.

```json theme={null}
{
  "success": true,
  "data": {
    "agent_identity": "agent-1@example.com",
    "playbook": {
      "slug": "operational",
      "version": 1,
      "content": "..."
    },
    "operator_notes": [
      {
        "id": 1,
        "title": "Site priorities",
        "content": "...",
        "topic": "general",
        "priority": "normal",
        "created_at": "2025-05-01 10:00:00",
        "updated_at": "2025-05-01 10:00:00"
      }
    ],
    "operator_notes_revision": 3,
    "knowledge_notes": [
      {
        "id": 2,
        "title": "How to handle returns",
        "topic": "woocommerce",
        "priority": "normal"
      }
    ],
    "knowledge_notes_revision": 5,
    "available_docs": [
      { "slug": "architecture", "title": "Architecture Reference" }
    ],
    "bootstrap_ack": "a1b2c3d4..."
  }
}
```

Bootstrap returns four things your agent should read before starting any task:

* **Operational playbook** — behavioral rules and workflows for this site.
* **Active operator-notes** — live operator instructions. Read and follow them.
* **Knowledge-note headers** — titles and topics of approved agent knowledge. Scan these against your current task and fetch any that match with `maxi/get-note`.
* **Available reference docs** — on-demand playbooks you can fetch with `maxi/get-playbook`.

<Note>
  Bootstrap also returns `data.operator_notes_revision` and `data.knowledge_notes_revision`. Record these values. If a later ability response returns a higher revision number in its `_meta` envelope, refresh those note lists before your next tool call.
</Note>

### maxi/get-site-info

Check your site's name, URL, WordPress version, Maxi AI version, and full license status in a single call.

Example response:

```json theme={null}
{
  "success": true,
  "data": {
    "name": "My WordPress Site",
    "description": "Just another WordPress site",
    "url": "https://example.com",
    "admin_url": "https://example.com/wp-admin/",
    "language": "en_US",
    "timezone": "Europe/Zagreb",
    "wp_version": "6.8",
    "multisite": false,
    "maxi_ai_version": "3.6.0",
    "maxi_ai_license": {
      "tier": "pro",
      "status": "active",
      "entitlements": ["ai_generation", "woocommerce_orders", "analytics"]
    }
  }
}
```

Use `maxi_ai_license.entitlements` to check which feature groups are available before calling a gated ability.

### maxi/activate-license

Activate a Maxi AI license key on this site. Pass the key exactly as provided when you purchased.

```json theme={null}
{ "license_key": "YOUR-LICENSE-KEY" }
```

After activation, abilities for your plan's feature groups become available immediately. You can also activate through **Settings → Maxi AI → License** in the WordPress admin.

### maxi/deactivate-license

Deactivate the current license. After deactivating, only `maxi/bootstrap-session` and `maxi/activate-license` remain callable — all other abilities are gated until you activate a key again.

```json theme={null}
{
  "success": true,
  "data": {
    "status": "deactivated",
    "message": "License deactivated. Site is now on the free tier."
  }
}
```

<Warning>
  Deactivating your license gates all non-bootstrap abilities on this site immediately. Make sure you have your license key available before deactivating so you can re-activate when needed.
</Warning>

### maxi/list-files

**Pro plan required.** List files and subdirectories inside your site's `wp-content/` directory. Supports glob patterns to filter by file name.

```json theme={null}
{
  "path": "uploads/2025",
  "pattern": "*.jpg"
}
```

`path` is relative to `wp-content/`. Omit it to list the root of `wp-content/`. Use `pattern` to filter by name or extension.

### maxi/read-file

**Pro plan required.** Read the contents of any file inside `wp-content/`. Useful for debugging plugin output, reading log files, or inspecting configuration files.

```json theme={null}
{
  "path": "uploads/2025/report.csv",
  "tail_lines": 100
}
```

Use `tail_lines` to read only the last N lines of large log files rather than fetching the whole file.

<Warning>
  Sensitive configuration files and executable/data-dump extensions are blocked. These blocks are enforced in PHP and cannot be bypassed.
</Warning>

### maxi/send-email

**Pro plan required.** Send an email through your site's `wp_mail()` function. This ability is disabled by default and must be explicitly enabled before use.

```json theme={null}
{
  "to": "customer@example.com",
  "subject": "Order Confirmed",
  "body": "Your order has been processed.",
  "format": "html"
}
```

<Info>
  To enable this ability, set the `maxi_ai_email_security` WordPress option to `admin` (agents with administrator capability only) or `open` (any authenticated agent). You can also define the `MAXI_AI_EMAIL_SECURITY` constant in `wp-config.php`. Every send is recorded in the audit log.
</Info>

## Licensing

Maxi AI Core requires an active Lite or Pro license. There is no free tier. Only `maxi/bootstrap-session` and `maxi/activate-license` work without a license — enough to authenticate and activate a key.

<AccordionGroup>
  <Accordion title="Grace period">
    When a license expires, all previously available abilities continue to work for 7 days with a warning appended to each successful response. Renew before the grace window closes to avoid interruption.
  </Accordion>

  <Accordion title="Gated ability errors">
    When you call an ability your plan doesn't include, the response contains a `reason` field:

    * **`plan_insufficient`** — your license is valid but your plan doesn't include the required feature group. Upgrade at [maxicore.ai](https://maxicore.ai). The new plan takes effect within 12 hours, or immediately via **Settings → Maxi AI → License**.
    * **`license_required`** — no active license found. Purchase at [maxicore.ai](https://maxicore.ai), then activate with `maxi/activate-license` or through the WordPress admin.
  </Accordion>

  <Accordion title="Offline resilience">
    If the Maxi AI license server is unreachable, your cached license status is extended by 24 hours. You won't be locked out due to a transient network issue.
  </Accordion>
</AccordionGroup>
