# execute_playbook

Execute a playbook step by step, passing results forward through context (requires NOW_ASSIST_ENABLED). Supports dry_run.

Agent View of the PolicyLayer registry record for `execute_playbook`. HTML page: https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/execute-playbook

## Facts

- Tool: `execute_playbook`
- Server: NowAIKit — ServiceNow AI Toolkit (`nowaikit`) — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit.md
- Install: `npx -y nowaikit`
- Homepage: https://github.com/aartiq/nowaikit
- Risk category: Execute (High risk)
- Registry record: grade F, identity verified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "execute_playbook",
    "arguments": {}
  }
}
```

## Why execute_playbook is rated High

This tool runs automated playbooks with side effects that depend on playbook configuration and input arguments. While not inherently destructive, playbook execution can modify data, trigger integrations, or change system state. This is Execute rather than Write because playbooks typically orchestrate complex multi-step operations and external integrations whose blast radius extends beyond simple data creation.

From the tool's own definition: "Tool name 'execute_playbook' and description 'Execute a playbook step by step' indicate runtime execution. The ability to pass results forward through context and support dry_run shows this triggers external operations whose effects depend on arguments."

## Use case

AI agents invoke execute_playbook to trigger actions in NowAIKit — ServiceNow AI Toolkit. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches NowAIKit — ServiceNow AI Toolkit:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "execute_playbook": {
      "limits": [
        {
          "counter": "execute_playbook_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on NowAIKit — ServiceNow AI Toolkit (409)

- `cmdb_reconcile` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/cmdb-reconcile.md
- `delete_attachment` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/delete-attachment.md
- `delete_record` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/delete-record.md
- `delete_system_property` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/delete-system-property.md
- `delete_uib_page` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/delete-uib-page.md
- `remove_user_from_group` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/remove-user-from-group.md
- `rollback_changes` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/rollback-changes.md
- `rollback_deployment` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/rollback-deployment.md
- `visualize_aggregate` — Destructive — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/visualize-aggregate.md
- `batch_request` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/batch-request.md
- `categorize_incident` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/categorize-incident.md
- `commit_changeset` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/commit-changeset.md
- `create_business_rule` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/create-business-rule.md
- `create_flow_action` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/create-flow-action.md
- `create_scheduled_job` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/create-scheduled-job.md
- `execute_background_script` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/execute-background-script.md
- `execute_script` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/execute-script.md
- `fire_event` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/fire-event.md
- `fluent_build` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/fluent-build.md
- `fluent_explain` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/fluent-explain.md
- `fluent_init` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/fluent-init.md
- `fluent_validate` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/fluent-validate.md
- `ml_detect_anomalies` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/ml-detect-anomalies.md
- `ml_train_anomaly_detector` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/ml-train-anomaly-detector.md
- `ml_train_change_risk` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/ml-train-change-risk.md
- `ml_train_incident_classifier` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/ml-train-incident-classifier.md
- `publish_changeset` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/publish-changeset.md
- `run_aggregate_query` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/run-aggregate-query.md
- `run_atf_suite` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/run-atf-suite.md
- `run_atf_test` — Execute — https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit/run-atf-test.md
- …and 379 more: https://policylayer.com/tools/nowaikit-servicenow-ai-toolkit.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=nowaikit-servicenow-ai-toolkit · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/nowaikit-servicenow-ai-toolkit
