# start_campaign

Start a multi-target campaign. Creates one engagement per target. Accepts a list of IPs, hostnames, or URLs.

Agent View of the PolicyLayer registry record for `start_campaign`. HTML page: https://policylayer.com/tools/0xsteph-pentest-ai/start-campaign

## Facts

- Tool: `start_campaign`
- Server: Pentest Ai (`0xsteph/pentest-ai`) — https://policylayer.com/tools/0xsteph-pentest-ai.md
- Homepage: https://github.com/0xSteph/pentest-ai
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- 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": "start_campaign",
    "arguments": {}
  }
}
```

## Why start_campaign is rated High

This tool triggers external operations (penetration testing) whose effects depend on the provided target arguments. While the intent is authorized security testing, this is fundamentally an Execute category tool because it runs complex security testing operations, frameworks, and exploits against specified targets.

From the tool's own definition: "Tool starts automated pentesting campaigns that deploy 'real security tools, working PoCs' against multiple targets, creating engagements per target."

## Use case

AI agents invoke start_campaign to trigger actions in Pentest Ai. 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 Pentest Ai:

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

## Other tools on Pentest Ai (50)

- `kill_process` — Destructive — https://policylayer.com/tools/0xsteph-pentest-ai/kill-process.md
- `authenticated_scan` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/authenticated-scan.md
- `builtin_scan` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/builtin-scan.md
- `ensure_tools_installed` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/ensure-tools-installed.md
- `http_request` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/http-request.md
- `plan_tools` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/plan-tools.md
- `resume_engagement` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/resume-engagement.md
- `run_probe` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/run-probe.md
- `run_recon` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/run-recon.md
- `run_tool` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/run-tool.md
- `scan_dns_builtin` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/scan-dns-builtin.md
- `scan_ports_builtin` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/scan-ports-builtin.md
- `select_agent` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/select-agent.md
- `start_engagement` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/start-engagement.md
- `test_active_directory` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-active-directory.md
- `test_api_security` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-api-security.md
- `test_cloud` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-cloud.md
- `test_credentials` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-credentials.md
- `test_mobile` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-mobile.md
- `test_privesc` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-privesc.md
- `test_social_engineering` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-social-engineering.md
- `test_vulnerabilities` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-vulnerabilities.md
- `test_web_app` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-web-app.md
- `test_wireless` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/test-wireless.md
- `validate_finding` — Execute — https://policylayer.com/tools/0xsteph-pentest-ai/validate-finding.md
- `browser_inspect` — Read — https://policylayer.com/tools/0xsteph-pentest-ai/browser-inspect.md
- `discover_attack_chains` — Read — https://policylayer.com/tools/0xsteph-pentest-ai/discover-attack-chains.md
- `get_attack_chains` — Read — https://policylayer.com/tools/0xsteph-pentest-ai/get-attack-chains.md
- `get_campaign_summary` — Read — https://policylayer.com/tools/0xsteph-pentest-ai/get-campaign-summary.md
- `get_config` — Read — https://policylayer.com/tools/0xsteph-pentest-ai/get-config.md
- …and 20 more: https://policylayer.com/tools/0xsteph-pentest-ai.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=0xsteph-pentest-ai · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/0xsteph-pentest-ai
