---
title: "tool si.read.policy_replay"
description: "a policy row and its version, a strategy and a window (`PolicyReplayInput`): what the policy would have chosen at every logged decision against what was chosen, and the effects that followed (`PolicyReplay`)."
section: reference
address: /reference/tools/si-read-policy_replay
contract: 0476e35e6e275db5
---

# tool si.read.policy_replay

a policy row and its version, a strategy and a window (`PolicyReplayInput`): what the policy would have chosen at every logged decision against what was chosen, and the effects that followed (`PolicyReplay`).

[figure: Over MCP, si.read.policy_replay takes PolicyReplayInput and returns a card whose body is PolicyReplay.]

what the policy would have chosen at every logged decision against what was chosen, and the effects that followed (`PolicyReplay`). The call needs the read grant at the strategy rung.



| | |
|---|---|
| input | [PolicyReplayInput](/concepts/policyreplayinput) |
| result | a card whose body is [PolicyReplay](/concepts/policyreplay) |
| read-only | yes |
| destructive | no |
| card address | `ui://scale-intelligence/cards/PolicyReplay` |
| HTTP route | [`/v1/read/policy_replay`](/reference/read/policy_replay) |





| field | type | required | note |
|---|---|---|---|
| `policy` | [Policy](/concepts/policy) | yes |  |
| `strategy` | `id` | yes |  |
| `window` | [Window](/concepts/window) | no |  |
