# Epic Games

Epic Games is a video game developer and publisher known for titles like Fortnite and the Unreal Engine, offering an online store and platform

- **Category:** gaming
- **Auth:** OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 28
- **Triggers:** 0
- **Slug:** `EPIC_GAMES`
- **Version:** 20260227_00

## Tools

### Delete Preset Metadata Key

**Slug:** `EPIC_GAMES_DELETE_PRESET_METADATA_KEY`

Tool to delete a metadata key-value pair associated with a Remote Control Preset. Use after confirming you have the correct preset name and metadata key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Base URL for Remote Control HTTP API (e.g., 'http://127.0.0.1:30010'). If not provided, uses metadata.base_url or defaults to http://127.0.0.1:30010. |
| `preset_name` | string | Yes | Name of the Remote Control Preset to target. |
| `metadata_key` | string | Yes | Metadata key to delete from the preset. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Metadata

**Slug:** `EPIC_GAMES_GET_ISLAND`

Tool to fetch metadata for a specific Fortnite island by its code. Use when you have an island code and need detailed island information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique code of the island |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Average Minutes per Player

**Slug:** `EPIC_GAMES_GET_ISLAND_AVG_MINUTES_PER_PLAYER`

Tool to retrieve average minutes per unique player for a given island code and interval. Use when you need daily or more granular (hour/minute) player engagement metrics. Hourly/minute intervals may not be available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique island code to query metrics for |
| `interval` | string ("day" | "hour" | "minute") | Yes | Time interval for the metrics. Day interval is supported; hour/minute may return not found |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Favorites Metrics

**Slug:** `EPIC_GAMES_GET_ISLAND_FAVORITES`

Tool to fetch how many times an island was added to favorites over a time interval. Use when analyzing island popularity trends.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique identifier code of the island to query |
| `interval` | string ("hour" | "day" | "minute") | Yes | Time interval for metrics aggregation (allowed: 'minute', 'hour', 'day') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Metrics by Interval

**Slug:** `EPIC_GAMES_GET_ISLAND_METRICS_BY_INTERVAL`

Tool to retrieve usage metrics for a Fortnite island aggregated by interval. Use when analyzing island usage over time buckets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique identifier code for the Fortnite island |
| `end_time` | string | Yes | End time for the metrics window (ISO8601 format, inclusive) |
| `interval` | string ("minute" | "hour" | "day") | Yes | Time bucket interval for aggregating metrics |
| `start_time` | string | Yes | Start time for the metrics window (ISO8601 format, inclusive) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Minutes Played

**Slug:** `EPIC_GAMES_GET_ISLAND_MINUTES_PLAYED`

Tool to retrieve total minutes played on an island during a given interval. Use after obtaining the island code to analyze player engagement metrics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique island code identifier. |
| `interval` | string | Yes | Reporting interval for metrics (e.g., '1d', '7d', '30d'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Peak CCU

**Slug:** `EPIC_GAMES_GET_ISLAND_PEAK_CCU`

Tool to retrieve peak concurrent users for an island. Use when you need to monitor the highest concurrent users over a specific interval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique island code to retrieve metrics for |
| `interval` | string ("minute" | "hour" | "day") | Yes | Time interval for the metrics (allowed: 'minute', 'hour', 'day') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Plays

**Slug:** `EPIC_GAMES_GET_ISLAND_PLAYS`

Tool to retrieve the number of plays (session starts) for a Fortnite island. Use when you need play metrics for a specific island and time interval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Fortnite island code (e.g., 'ABC123XYZ'). |
| `interval` | string | Yes | Time interval for metrics (e.g., '1d', '7d', '30d'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Recommendations

**Slug:** `EPIC_GAMES_GET_ISLAND_RECOMMENDATIONS`

Tool to retrieve the count of player recommendations for an island. Use when you need recommendation metrics over a given interval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique identifier for the island. |
| `interval` | string ("minute" | "hour" | "day") | Yes | Time interval for metrics aggregation. Allowed values: 'minute', 'hour', 'day'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Retention

**Slug:** `EPIC_GAMES_GET_ISLAND_RETENTION`

Tool to retrieve day-over-day retention metrics for a Fortnite island. Use when analyzing retention performance by day (only supported for day interval).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Unique code of the Fortnite island |
| `interval` | string | Yes | Aggregation interval for retention metrics; only 'day' is supported |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Island Unique Players

**Slug:** `EPIC_GAMES_GET_ISLAND_UNIQUE_PLAYERS`

Tool to retrieve the number of unique players who played an island over a specific interval. Use after obtaining the island code and desired interval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | Island code identifier |
| `interval` | string | Yes | Metrics interval for aggregation (e.g., 'daily', 'weekly', 'monthly') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Remote Control Preset

**Slug:** `EPIC_GAMES_GET_PRESET`

Tool to get details for a specific Remote Control Preset by name. Use after listing or identifying available presets to fetch their configuration including groups, properties, and functions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Base URL for Remote Control HTTP API (e.g., 'http://127.0.0.1:30010') |
| `presetName` | string | Yes | Name of the Remote Control Preset to fetch |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Preset Metadata

**Slug:** `EPIC_GAMES_GET_PRESET_METADATA`

Tool to retrieve all metadata entries associated with a preset. Use when you need to inspect metadata of a Remote Control Preset after confirming it exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Base URL for Remote Control HTTP API (e.g., 'http://127.0.0.1:30010') |
| `preset_name` | string | Yes | Name of the Remote Control Preset whose metadata to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Preset Metadata Key

**Slug:** `EPIC_GAMES_GET_PRESET_METADATA_KEY`

Tool to read a single metadata key's value for a Remote Control Preset. Use when you need to fetch a specific metadata entry after listing presets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Base URL for Remote Control HTTP API (e.g., 'http://127.0.0.1:30010') |
| `preset_name` | string | Yes | Name of the Remote Control Preset |
| `metadata_key` | string | Yes | Metadata key whose value to fetch |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Preset Property

**Slug:** `EPIC_GAMES_GET_PRESET_PROPERTY`

Tool to read the value(s) of a property exposed through a Remote Control Preset. Use when you need to fetch the current state of a specific property from a preset.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Optional override for the Remote Control HTTP API base URL (e.g., 'http://127.0.0.1:30010') |
| `preset_name` | string | Yes | Name of a Remote Control Preset in your project |
| `property_name` | string | Yes | Name of the property exposed in the preset |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Blueprint-Callable Functions

**Slug:** `EPIC_GAMES_LIST_BLUEPRINT_CALLABLE_FUNCTIONS`

Tool to list blueprint-callable functions on a UObject. Use when you need to inspect available functions for automation or debugging.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Override the API endpoint path. Defaults to '/remote/object/functions' |
| `headers` | object | No | Override HTTP headers to include in the request |
| `base_url` | string | No | Override the base URL for the Epic Games Remote Control API |
| `extra_json` | object | No | Optional extra JSON fields to merge into the request payload. Useful for testing against echo services that return the posted JSON under a nested key. |
| `object_path` | string | Yes | Path of the UObject to list functions for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Fortnite Islands

**Slug:** `EPIC_GAMES_LIST_ISLANDS`

Tool to list public discoverable Fortnite islands sorted by newest releases first. Use when browsing community-created islands.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of items to return |
| `offset` | integer | No | Number of items to skip for pagination |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remote API CORS Preflight

**Slug:** `EPIC_GAMES_OPTIONS_REMOTE`

Tool to perform a CORS preflight OPTIONS request to the Remote Control API. Use when verifying cross-origin HTTP request permissions before making other calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Endpoint path to preflight (defaults to '/remote'). May be overridden for testing (e.g., '/anything'). |
| `headers` | object | No | Optional headers for the preflight request (e.g., {'Origin': 'https://example.com', 'Access-Control-Request-Method': 'GET'}). If not provided, will use metadata headers or reasonable defaults. |
| `base_url` | string | No | Base URL for the Epic Games Remote Control API (e.g., 'http://127.0.0.1:30010' or any reachable host for testing). If not provided, will use metadata base_url. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Call UObject Blueprint Function

**Slug:** `EPIC_GAMES_PUT_OBJECT_CALL`

Tool to invoke a Blueprint-callable function on an in-memory UObject. Use after confirming the target object path and function name (e.g., call SetActorLocation to move an actor).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/object/call'). This enables testing against generic endpoints (e.g., '/put'). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |
| `objectPath` | string | Yes | Full path that uniquely identifies the target UObject in memory |
| `parameters` | object | No | Key/value map of function parameters; keys match parameter names. Missing keys use default values. |
| `functionName` | string | Yes | Exact name of the Blueprint-callable function to invoke on the UObject |
| `generateTransaction` | boolean | No | If true, records the call in the Editor’s transaction (undo) history and replicates it in Multi-User sessions |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Describe a UObject

**Slug:** `EPIC_GAMES_PUT_OBJECT_DESCRIBE`

Tool to describe a UObject. Use when you need metadata of an object identified by its path. Example: Describe UObject with path '/Game/MyMap:PersistentLevel.MyActor'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/object/describe'). This enables testing against generic endpoints (e.g., '/put'). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |
| `object_path` | string | Yes | Path that uniquely identifies the UObject to describe. For example: '/Game/MyMap:PersistentLevel.MyActor' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Wait for UObject Event (Experimental)

**Slug:** `EPIC_GAMES_PUT_OBJECT_EVENT_EXPERIMENTAL`

Tool to block until the next specified UObject event occurs. Use when you need to wait for a specific property-change event on a UObject before proceeding. Experimental: this route only returns after the event fires (requires WebControl.EnableExperimentalRoutes=1).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/object/event'). This enables testing against generic endpoints (e.g., '/put'). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |
| `EventType` | string ("ObjectPropertyChanged" | "PreObjectPropertyChanged") | Yes | Type of event to wait for. Must be one of 'ObjectPropertyChanged' or 'PreObjectPropertyChanged'. |
| `ObjectPath` | string | Yes | Full path of the UObject to monitor, e.g., '/Game/Maps/ExampleMap.ExampleMap'. |
| `PropertyName` | string | Yes | Name of the property to watch for changes, e.g., 'StaticMesh'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Put UObject Property

**Slug:** `EPIC_GAMES_PUT_OBJECT_PROPERTY`

Tool to read or set a UObject's property values. Use when you need to inspect or modify one or more properties of a specified Unreal Engine UObject via Remote Control HTTP API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/object/property'). This enables testing against generic endpoints (e.g., '/put'). |
| `access` | string ("READ_ACCESS" | "WRITE_ACCESS" | "WRITE_TRANSACTION_ACCESS") | Yes | Access mode: READ_ACCESS to fetch property values; WRITE_ACCESS to set values; WRITE_TRANSACTION_ACCESS to set values with undo and replication. |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |
| `objectPath` | string | Yes | Path that uniquely identifies the UObject to access, e.g., '/Game/Maps/MainMap.MainMap:PersistentLevel.MyActor'. |
| `propertyName` | string | No | Name of the property to read or modify. If omitted when access is READ_ACCESS, all readable properties are returned. |
| `propertyValue` | object | No | Mapping of property names to new values. Required for WRITE_ACCESS and WRITE_TRANSACTION_ACCESS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Object Thumbnail

**Slug:** `EPIC_GAMES_PUT_OBJECT_THUMBNAIL`

Tool to fetch the Content Browser thumbnail image for a specified asset. Use when you need a preview of the asset's thumbnail.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/object/thumbnail'). This enables testing against generic endpoints (e.g., '/anything' on httpbin). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url. |
| `objectPath` | string | Yes | UObject path of the asset to fetch the thumbnail for. Example: '/Game/Mannequin/Animations/ThirdPersonJump_Start.ThirdPersonJump_Start' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Invoke Preset Function

**Slug:** `EPIC_GAMES_PUT_PRESET_FUNCTION`

Tool to invoke a function in a Remote Control Preset. Use after locating the preset and function name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override. Defaults to the Remote Control path '/remote/preset/{presetName}/function/{functionName}'. Can be set to '/put' to test against generic endpoints like httpbin. |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or default to https://httpbin.org for testing. |
| `Parameters` | object | No | Key-value map of input parameters for the function call; keys are exact parameter names. Values may be primitive types or nested objects for struct parameters. |
| `presetName` | string | Yes | Name of the Remote Control Preset to invoke the function on |
| `functionName` | string | Yes | Name of the function exposed by the preset to invoke |
| `GenerateTransaction` | boolean | No | Whether to record the call as an editor transaction (undoable; replicated in Multi-User). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Put Preset Metadata Key

**Slug:** `EPIC_GAMES_PUT_PRESET_METADATA_KEY`

Tool to create or update a metadata key on a Remote Control Preset. Use when you need to set or modify metadata value for a preset.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `Value` | string | Yes | The value to assign to the metadata key. |
| `headers` | object | No | Optional headers for the request (e.g., Authorization). If not provided, uses connection metadata headers or empty dict. |
| `base_url` | string | No | Optional override for the Remote Control API base URL. If not provided, will use connection metadata base_url, or fall back to https://httpbin.org/anything for testing. |
| `preset_name` | string | Yes | Name of the Remote Control Preset to target. |
| `metadata_key` | string | Yes | Metadata key to create or update on the preset. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Preset Property

**Slug:** `EPIC_GAMES_PUT_PRESET_PROPERTY`

Tool to update a property exposed through a Remote Control Preset. Use when you need to change the value of a preset’s property after inspecting its metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `headers` | object | No | Optional HTTP headers to include in the request |
| `base_url` | string | No | Optional override for Remote Control HTTP API base URL (e.g., 'http://127.0.0.1:30010') |
| `preset_name` | string | Yes | Name of a Remote Control Preset in your project |
| `property_name` | string | Yes | Name of the property exposed in the preset |
| `property_value` | string | Yes | New value payload matching the property's type; shape varies by property |
| `generate_transaction` | boolean | No | Optional flag to record this change as a transaction (undo history) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Batch Remote Control Requests

**Slug:** `EPIC_GAMES_PUT_REMOTE_BATCH`

Tool to batch multiple Remote Control API calls into a single request. Use when needing to reduce round-trip latency by grouping several API calls into one batch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/batch'). This enables testing against generic endpoints (e.g., '/put' or '/anything'). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `Requests` | array | Yes | List of requests to execute in order |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Initiate Remote Control Session

**Slug:** `EPIC_GAMES_PUT_REMOTE_CONTROL_SESSION`

Tool to initiate a Remote Control session. Use when asset operations require an active session before other /remote calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `path` | string | No | Optional endpoint path override (defaults to '/remote/session'). This enables testing against generic endpoints (e.g., '/put'). |
| `headers` | object | No | Optional HTTP headers for the request. If not provided, will use metadata headers or empty headers. |
| `base_url` | string | No | Optional base URL override for the Remote Control API (e.g., 'http://127.0.0.1:30010' or 'https://httpbin.org'). If not provided, will use metadata base_url or sensible defaults. |
| `session_name` | string | No | Optional name for the session. If omitted, the server assigns a default name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
