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

# AI assistants (MCP)

> Connect Claude, ChatGPT, Cursor or Codex to your Streampixel account and ask it about your projects, sessions and builds in plain language.

Streampixel hosts a [Model Context Protocol](https://modelcontextprotocol.io) server. Connect an AI assistant to it and you can ask things like *"why did session X fail"*, *"how did the showroom do yesterday"* or *"is my build stuck"*, and get an answer built from the same data the REST API exposes: sessions, viewer telemetry, Unreal logs, build pipeline state, plan details.

```
https://mcp.streampixel.io/mcp
```

The assistant signs in with **your Streampixel login**, not an API key. It can only see and do what you can in the dashboard, and it never sees other accounts.

## Connect

<Tabs>
  <Tab title="Claude">
    **Web or desktop:** Settings → Connectors → Add custom connector → paste the URL above. Sign in when prompted.

    **Claude Code:**

    ```bash theme={"dark"}
    claude mcp add --transport http streampixel https://mcp.streampixel.io/mcp
    ```

    then run `/mcp` and sign in.
  </Tab>

  <Tab title="ChatGPT">
    Settings → Connectors (Developer mode) → Create → MCP server URL above, authentication **OAuth**. Sign in when prompted.
  </Tab>

  <Tab title="Cursor">
    Add to `~/.cursor/mcp.json`:

    ```json theme={"dark"}
    { "mcpServers": { "streampixel": { "url": "https://mcp.streampixel.io/mcp" } } }
    ```

    The sign-in prompt appears on first use.
  </Tab>

  <Tab title="Codex">
    ```bash theme={"dark"}
    codex mcp add streampixel --url https://mcp.streampixel.io/mcp
    ```
  </Tab>
</Tabs>

<Info>
  Sign in to the [dashboard](https://dashboard.streampixel.io) at least once before connecting, so your account exists.
</Info>

## What it can do

| Ask about             | Tools the assistant uses                                                                                    |
| --------------------- | ----------------------------------------------------------------------------------------------------------- |
| Your account and plan | `whoami`, `billing_summary`, `usage_report`, `account_overview`                                             |
| Projects and builds   | `list_projects`, `get_project`, `get_live_status`, `get_build_status`                                       |
| Sessions              | `list_sessions`, `find_problem_sessions`, `diagnose_session`, `get_session_timeline`, `get_session_metrics` |
| Unreal logs           | `list_session_logs`, `get_unreal_log_summary`, `search_unreal_log`, `get_unreal_log_excerpt`                |
| Reports               | `project_health_report`, `disconnect_code_breakdown`, `queue_report`, `audience_breakdown`                  |
| Reference             | `explain_disconnect_code`, `explain_platform_concepts`                                                      |
| Changes               | `set_project_enabled`, `end_sessions`, `set_active_build`, `update_project_settings`                        |

`diagnose_session` is the one to know: give it a session id and it reconstructs what happened from the platform's records, the viewer's telemetry, the disconnect code and the Unreal log, then says what went wrong, whose side it is on and what to do.

## Changes need your confirmation

The last row are the only tools that change anything, and they do exactly what the [project control endpoints](/resources/api-reference/enable-project) do. They are marked as writes, so assistants that ask before acting will ask, and the server itself instructs the assistant to confirm with you first. Turning a project off ends its live sessions immediately.

## Example questions

* "Give me yesterday's health report for Showroom and diagnose the worst three sessions."
* "Session session\_1790294409382\_3035 failed for a customer. What happened and what do I tell them?"
* "My build has been distributing for an hour. Is it stuck?"
* "How many viewers queued this week and how long did they wait?"
* "Which browsers do my viewers use?"
* "When is my next billing date?"

## Limits

* Windows are capped at 31 days per question.
* Each account has a budget of tool calls per minute and per day, and of log scans per hour, so a runaway conversation cannot overload the analytics store. The assistant is told when to wait.
* Invoices and payment history are not available through the assistant; they are in the dashboard's Billing page.
