# Approvals and evaluations

Read execution approval and result review separately; only an authorized human can decide either gate. An evaluation is a distinct saved judgment and may trigger configured follow-up work, so submit one only when requested.

> [API guide](https://swarm.services/guide/api.md) · [Documentation index](https://swarm.services/guide/llms.txt) · [Web reference](https://swarm.services/guide/api/reference/mcp-approvals-and-evaluations)

[Read the Runs guide](https://swarm.services/guide/runs.md) for the workflow.

## List approval requests

`swarm_list_approval_requests`

Read one bounded page of authorized approval requests.

Required: none. Optional: space_id, resource_type, resource_id, status, limit, cursor, order.
Effect: read. Capability: `space.read`.

## Get approval request

`swarm_get_approval_request`

Read one authorized approval request.

Required: request_id. Optional: none.
Effect: read. Capability: `space.read`.

## List Evaluations

`swarm_list_evaluations`

Read one bounded page of authorized Evaluations.

Required: none. Optional: space_id, run_id, artifact_id, evaluator_agent_id, outcome, limit, cursor, order.
Effect: read. Capability: `space.read`.

## Get Evaluation

`swarm_get_evaluation`

Read one authorized Evaluation.

Required: evaluation_id. Optional: none.
Effect: read. Capability: `space.read`.

## Submit evaluation

`swarm_submit_evaluation`

Record one bounded evaluation for a visible Run or Artifact. An active evaluation can trigger configured follow-up work; this does not resolve a human approval.

Required: summary, idempotency_key. Optional: space_id, run_id, artifact_id, outcome, score, rubric_key, dimensions, confidence, signals, contract_hash.
Effect: additive. Capability: `evaluation.create`.
