---
name: profiler-get-memory-stats
description: Return memory statistics snapshot from UnityEngine.Profiling.Profiler — reserved, allocated, mono heap, graphics, etc. (in MB).
---

# Profiler / Get Memory Stats

Reads UnityEngine.Profiling.Profiler scalar memory counters and converts each from bytes to megabytes (`/1048576f`).

## Fields

- `TotalReservedMemoryMB` — `GetTotalReservedMemoryLong()`.
- `TotalAllocatedMemoryMB` — `GetTotalAllocatedMemoryLong()`.
- `TotalUnusedReservedMemoryMB` — `GetTotalUnusedReservedMemoryLong()`.
- `MonoHeapSizeMB` — `GetMonoHeapSizeLong()`.
- `MonoUsedSizeMB` — `GetMonoUsedSizeLong()`.
- `TempAllocatorSizeMB` — `GetTempAllocatorSize()`.
- `GraphicsMemoryMB` — `GetAllocatedMemoryForGraphicsDriver()`.
- `MaxUsedMemoryMB` — `maxUsedMemory`.
- `UsedHeapSizeMB` — `usedHeapSizeLong`.

## Behavior

Uses only built-in Unity APIs (`UnityEngine.Profiling.Profiler`). No external Unity package is required.

## How to Call

```bash
unity-mcp-cli run-tool profiler-get-memory-stats --input '{
  "nothing": "string_value"
}'
```

> For complex input (multi-line strings, code), save the JSON to a file and use:
> ```bash
> unity-mcp-cli run-tool profiler-get-memory-stats --input-file args.json
> ```
>
> Or pipe via stdin (recommended):
> ```bash
> unity-mcp-cli run-tool profiler-get-memory-stats --input-file - <<'EOF'
> {"param": "value"}
> EOF
> ```


### Troubleshooting

If `unity-mcp-cli` is not found, either install it globally (`npm install -g unity-mcp-cli`) or use `npx unity-mcp-cli` instead.
Read the /unity-initial-setup skill for detailed installation instructions.

## Input

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `nothing` | `string` | No |  |

### Input JSON Schema

```json
{
  "type": "object",
  "properties": {
    "nothing": {
      "type": "string"
    }
  }
}
```

## Output

### Output JSON Schema

```json
{
  "type": "object",
  "properties": {
    "result": {
      "$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler%2BMemoryStatsData",
      "description": "Memory statistics from the Unity Profiler. All values in megabytes unless otherwise noted."
    }
  },
  "$defs": {
    "com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler+MemoryStatsData": {
      "type": "object",
      "properties": {
        "TotalReservedMemoryMB": {
          "type": "number",
          "description": "Total reserved memory (UnityEngine.Profiling.Profiler.GetTotalReservedMemoryLong / 1048576)."
        },
        "TotalAllocatedMemoryMB": {
          "type": "number",
          "description": "Total allocated memory (UnityEngine.Profiling.Profiler.GetTotalAllocatedMemoryLong / 1048576)."
        },
        "TotalUnusedReservedMemoryMB": {
          "type": "number",
          "description": "Total unused reserved memory (UnityEngine.Profiling.Profiler.GetTotalUnusedReservedMemoryLong / 1048576)."
        },
        "MonoHeapSizeMB": {
          "type": "number",
          "description": "Mono heap size (UnityEngine.Profiling.Profiler.GetMonoHeapSizeLong / 1048576)."
        },
        "MonoUsedSizeMB": {
          "type": "number",
          "description": "Mono used size (UnityEngine.Profiling.Profiler.GetMonoUsedSizeLong / 1048576)."
        },
        "TempAllocatorSizeMB": {
          "type": "number",
          "description": "Temp allocator size (UnityEngine.Profiling.Profiler.GetTempAllocatorSize / 1048576)."
        },
        "GraphicsMemoryMB": {
          "type": "number",
          "description": "Graphics memory reserved by the driver (UnityEngine.Profiling.Profiler.GetAllocatedMemoryForGraphicsDriver / 1048576)."
        },
        "MaxUsedMemoryMB": {
          "type": "number",
          "description": "Maximum used memory observed (UnityEngine.Profiling.Profiler.maxUsedMemory / 1048576)."
        },
        "UsedHeapSizeMB": {
          "type": "number",
          "description": "Used heap size (UnityEngine.Profiling.Profiler.usedHeapSizeLong / 1048576)."
        }
      },
      "required": [
        "TotalReservedMemoryMB",
        "TotalAllocatedMemoryMB",
        "TotalUnusedReservedMemoryMB",
        "MonoHeapSizeMB",
        "MonoUsedSizeMB",
        "TempAllocatorSizeMB",
        "GraphicsMemoryMB",
        "MaxUsedMemoryMB",
        "UsedHeapSizeMB"
      ],
      "description": "Memory statistics from the Unity Profiler. All values in megabytes unless otherwise noted."
    }
  },
  "required": [
    "result"
  ]
}
```

