---
name: "xpay-quakelive-merge-demos"
description: "Merge multiple single-POV .dm_91 demo files from the same match into one omniscient multi-POV demo where every player is always visible. All input demos must be from the same match (same map); the tool validates this and returns an error if they differ. Provide one file per player POV (at least 2). Returns the output path and any non-fatal warnings."
version: "1.0.0"
price: "$0.02/call"
provider: "Mcps"
---

# Merge Demos

Merge multiple single-POV .dm_91 demo files from the same match into one omniscient multi-POV demo where every player is always visible. All input demos must be from the same match (same map); the tool validates this and returns an error if they differ. Provide one file per player POV (at least 2). Returns the output path and any non-fatal warnings.

**Provider:** Mcps
**Price:** $0.02/call
**Pricing model:** Flat rate per call

## When to Use

Use this tool when you need to merge multiple single-pov .dm_91 demo files from the same match into one omniscient multi-pov demo where every player is always visible. all input demos must be from the same match (same map); the tool validates this and returns an error if they differ. provide one file per player pov (at least 2). returns the output path and any non-fatal warnings.. This is part of the Mcps provider on xpay✦.

## MCP Connection

Connect to xpay✦ to access this tool (and 87+ others):

```json
{
  "mcpServers": {
    "xpay": {
      "url": "https://mcp.xpay.sh/mcp?key=YOUR_API_KEY"
    }
  }
}
```

For Claude Code:
```bash
claude mcp add --transport http xpay "https://mcp.xpay.sh/mcp?key=YOUR_API_KEY"
```

## How to Execute

Use the xpay✦ meta-tools to run this tool:

1. **`xpay_details`** — Get full input schema: `xpay_details("quakelive/merge_demos")`
2. **`xpay_run`** — Execute: `xpay_run("quakelive/merge_demos", { ...inputs })`

## Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `output_filename` | string,null | No | Output filename written to DEMO_PATH (e.g. merged.dm_91). Auto-generated from the first input filename if omitted. |
| `pov_client_num` | integer,null | No | Client number to use as the primary POV (playerstate). Defaults to the first demo's client number. |
| `spec_pov` | boolean,null | No | Whether to inject a synthetic spectator slot as the demo-taker identity (default: true, recommended). When true, the merged demo's gamestate uses an unused player slot marked TEAM_SPECTATOR; wolfcamql then shows health, armour, and other stats for ALL players — which is almost always what you want for a merged multi-POV demo. Set to false only if you specifically need an active-player POV (e.g. for compatibility with tools that do not support spectator demos), at the cost of hiding enemy health/armour in wolfcamql. |
| `inputs` | array | Yes | Input .dm_91 file paths (relative to DEMO_PATH or absolute). All files must be from the same match (same map, same server session). Provide one file per player POV; at least 2 required. |

## Pricing

- **Cost:** $0.02/call
- **Balance check:** Use `xpay_balance` to check remaining credits
- Get your API key at [xpay.tools](https://xpay.tools/account/settings/api-keys/) — $5 free credits included

## Related Skills

- [Mcps (all tools)](https://xpay.tools/skills/quakelive/SKILL.md) — 88 tools
- [Add Player](https://xpay.tools/skills/quakelive/add-player/SKILL.md) — $0.00/call
- [Add Raw Snapshot](https://xpay.tools/skills/quakelive/add-raw-snapshot/SKILL.md) — $0.00/call
- [Add Server Command](https://xpay.tools/skills/quakelive/add-server-command/SKILL.md) — $0.00/call
- [Analyze Demo](https://xpay.tools/skills/quakelive/analyze-demo/SKILL.md) — $0.02/call
- [Award Medal](https://xpay.tools/skills/quakelive/award-medal/SKILL.md) — $0.02/call

## Links

- Tool page: https://xpay.tools/quakelive/merge-demos/
- Provider: https://xpay.tools/quakelive/
- All tools: https://xpay.tools/explore
