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

# Recording Tools

> MCP tools for listing, inspecting, and analyzing screen recordings

Tools for listing recordings, retrieving session data, and accessing recording resources (video, console logs, network logs, user actions). All recording tools are read-only.

## Listing

### userplane\_list\_recordings

List screen recordings in a workspace. Recordings are screen captures from end users. Filter by project, link, or creator. Returns paginated results newest first.

| Parameter     | Type   | Required | Description                             |
| ------------- | ------ | -------- | --------------------------------------- |
| `workspaceId` | string | Yes      | Workspace ID                            |
| `page`        | number | No       | Page number (default: 1)                |
| `per_page`    | number | No       | Results per page (default: 10, max: 50) |
| `project_id`  | string | No       | Filter by project ID                    |
| `link_id`     | string | No       | Filter by link ID                       |
| `created_by`  | string | No       | Filter by creator workspace member ID   |

**Returns:** Paginated list of recordings. Each entry includes `recordingId`, `durationMs`, `createdAt`, `expiresAt`, `creatorName`, `linkTitle`, and a `playerUrl` that opens the recording in the dashboard player.

***

## Recording details

### userplane\_get\_rec\_info

Retrieve complete details for a screen recording including duration, metadata, and upload status. Use the recording resource tools to access video, thumbnail, and log files.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** A flat object with `recordingId`, `durationMs`, `startedAt`, `createdAt`, `expiresAt`, `status`, `linkId`, `linkTitle`, `projectId`, `projectTitle`, `domainUrl`, `creatorName`, and a `playerUrl` for the dashboard player.

***

### userplane\_get\_rec\_video

Retrieve a time-limited presigned URL to download or stream the screen recording video file.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** `recordingId`, a presigned `url` (expires after a short time window), and `durationMs`.

***

### userplane\_get\_rec\_thumb

Retrieve a presigned URL for the recording's thumbnail preview image.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** `recordingId` and a presigned `url` for the thumbnail image (expires after a short time window).

***

## Session data

### userplane\_get\_rec\_console

Retrieve browser console log entries captured during the recording. Returns an array of log entries with level, message, timestamp, and optional stack traces. Useful for debugging errors and warnings.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** `recordingId` and an `entries` array. Each entry includes:

* `log_type` — log level (error, warning, info, log, debug)
* `args` — log message content
* `timestamp` — time relative to recording start
* `trace` — stack trace (if available)
* `url` — page URL where the log was emitted

***

### userplane\_get\_rec\_network

Retrieve network request/response log entries captured during the recording. Returns an array of entries with URL, method, status, duration, headers, and bodies. Useful for diagnosing API issues.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** `recordingId` and an `entries` array. Each entry includes:

* `url` — request URL
* `method` — HTTP method
* `status` — response status code
* `duration` — request duration in milliseconds
* `headers` — request and response headers
* `body` — request and response bodies (when captured)
* `timestamp` — time relative to recording start

***

### userplane\_get\_rec\_actions

Retrieve user interaction events captured during the recording. Returns an array of actions including clicks, navigation, tab switches, and page lifecycle events.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

**Returns:** `recordingId` and an `entries` array. Each entry includes:

* `type` — action type (click, navigation, tab switch, page lifecycle)
* `timestamp` — time relative to recording start
* `data` — action-specific details (element selector, URL, event type)

***

## Interactive viewers

These tools render rich, interactive viewers in AI clients that support [MCP Apps](/integrations/mcp-apps). In other clients, they return the same data as structured text.

### userplane\_show\_recording

Display the full interactive recording viewer with video playback, session metadata, and tabbed access to console logs, network requests, and user actions.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

See [Recording Viewer](/integrations/mcp-apps-recording) for details.

***

### userplane\_show\_rec\_console

Display an interactive console log viewer with level filtering, full-text search, and expandable entries.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

See [Resource Viewers](/integrations/mcp-apps-resources) for details.

***

### userplane\_show\_rec\_network

Display an interactive network request viewer with type filtering, status codes, durations, and expandable headers and bodies.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

See [Resource Viewers](/integrations/mcp-apps-resources) for details.

***

### userplane\_show\_rec\_actions

Display an interactive user action viewer with type filtering, search, and expandable event details.

| Parameter     | Type   | Required | Description  |
| ------------- | ------ | -------- | ------------ |
| `workspaceId` | string | Yes      | Workspace ID |
| `recordingId` | string | Yes      | Recording ID |

See [Resource Viewers](/integrations/mcp-apps-resources) for details.

***

## Example prompts

<CodeGroup>
  ```text theme={null}
  List the 5 most recent recordings in workspace {workspaceId}. For each one, tell me who submitted it, which project it belongs to, and when it was created.
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  A customer just submitted a recording in the Billing project. Pull up the latest recording and tell me what went wrong.
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  Here's a recording from a customer who can't complete checkout: https://dash.userplane.io/{workspaceId}/recordings/{recordingId} — what's causing the issue?
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  Give me a full root cause analysis of this recording. Check the console for JavaScript errors, the network requests for failed API calls, and the user actions for anything unusual. Summarize what happened and what likely caused the issue. https://dash.userplane.io/{workspaceId}/recordings/{recordingId}
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  Show me the console logs for this recording. Are there any JavaScript errors or unhandled exceptions? https://dash.userplane.io/{workspaceId}/recordings/{recordingId}
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  Check the network requests in this recording. Are there any 500 errors, 404s, or requests that took longer than 3 seconds? https://dash.userplane.io/{workspaceId}/recordings/{recordingId}
  ```
</CodeGroup>

<CodeGroup>
  ```text theme={null}
  Walk me through what the user did in this recording. What pages did they visit, what did they click, and where did things break? https://dash.userplane.io/{workspaceId}/recordings/{recordingId}
  ```
</CodeGroup>

<Note>
  Replace `{workspaceId}` and `{recordingId}` with your actual values from the Userplane dashboard
  URL bar.
</Note>

## Related articles

* [Workspace Tools](/integrations/mcp-tools-workspace) — tools for profiles, workspaces, and projects.
* [Recording Link Tools](/integrations/mcp-tools-links) — tools for creating and managing recording links.
* [Recording Viewer](/integrations/mcp-apps-recording) — interactive viewer for full recording playback.
* [Resource Viewers](/integrations/mcp-apps-resources) — focused viewers for console, network, and action data.
