> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zenrows.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Toolkit

> MCP, Skills, Templates, Workflows, Recipes, and Evals: the pieces that make Zenrows installable and usable by an AI agent, not just callable by one.

A tool being callable over an API isn't the same as a tool being usable by an agent. An agent that can call `fetch` still has to work out, on its own, whether `fetch` is even the right call for this page, how to start a real project instead of a one-off snippet, how to script something that runs the same way every time, and how to tell whether a change quietly broke something. The Agent Toolkit is the part of the Zenrows CLI that answers those questions directly, so an agent (or the developer directing one) doesn't have to reconstruct them from scratch on every project.

Each piece solves one specific part of that problem:

<CodeGroup>
  ```bash Connect and install everything theme={null}
  zenrows init --all
  ```

  ```bash Just wire up an agent client theme={null}
  zenrows plugin install claude-code
  ```
</CodeGroup>

`init --all` sets up a full workspace: every skill, template, workflow, recipe, and eval, plus MCP configured for your agent clients, in one command. `plugin install <client>` is the narrower path when you only need an agent client wired up: it configures MCP for that client and installs every skill, nothing else. Check what's already in place at any point with `zenrows status`.

## The Shape of the Problem

<img src="https://mintcdn.com/zenrows/iSpDUiIAwyhiBA2f/images/diagrams/agent-toolkit-flow.svg?fit=max&auto=format&n=iSpDUiIAwyhiBA2f&q=85&s=adc27fbef2c76393bfdac26f6a1ca079" alt="Six pieces, each independent: Connect, Decide, Start, Automate, Verify, Benchmark, mapping to MCP, Skills, Templates, Workflows, Recipes, and Evals." width="720" height="80" data-path="images/diagrams/agent-toolkit-flow.svg" />

Each piece answers a different question, and none of them require the others. The CLI authenticates and runs `fetch`, `extract`, `batch`, and `browser` entirely on its own, no agent client, no MCP:

* **Connect** an MCP-native agent client, Claude Desktop, Cursor, and similar, so the model can discover and call tools directly instead of a human typing CLI commands. [MCP](/cli/mcp) sets this up. Only relevant if you're wiring in that kind of client, an agent that already runs shell commands (like one driving the CLI directly) doesn't need it at all.
* **Decide** which primitive fits the task, without guessing. [Skills](/cli/skills) are short, agent-readable playbooks, a master decision tree plus one playbook per primitive, so an agent picks `fetch`, `extract`, `batch`, or a browser session correctly, without extra prompting from you.
* **Start** a real project instead of an empty file. [Templates](/cli/templates) scaffold a minimal, working project for a specific job, like calling Fetch from Node.js or building a Batch job spec.
* **Automate** something that has to run the same way every time. [Workflows](/cli/workflows) chain multiple Zenrows commands into one named, repeatable process, like keeping a competitor's pricing data fresh on a schedule.
* **Verify** that a single command actually works, right now, against a known-good target. [Recipes](/cli/recipes) are small, runnable examples that double as a smoke test before you build anything on top of them.
* **Benchmark** that it keeps working. [Evals](/cli/evals) run the same check reproducibly and write a scored report, so a regression shows up as a failed eval instead of a silent surprise in production.

## The Pieces

| Piece                       | Answers                                    | Catalog today       | Primary command                   |
| --------------------------- | ------------------------------------------ | ------------------- | --------------------------------- |
| [MCP](/cli/mcp)             | How does an agent client connect at all?   | 8 supported clients | `zenrows plugin install <client>` |
| [Skills](/cli/skills)       | Which primitive should I use, and why?     | 8 skills            | `zenrows skill install --all`     |
| [Templates](/cli/templates) | How do I start this kind of project?       | 3 templates         | `zenrows template create <name>`  |
| [Workflows](/cli/workflows) | How do I automate a multi-step process?    | 1 workflow          | `zenrows workflow run <name>`     |
| [Recipes](/cli/recipes)     | Does this one command actually work?       | 2 recipes           | `zenrows recipe run <name>`       |
| [Evals](/cli/evals)         | Does it still work, with a written report? | 3 evals             | `zenrows eval run <name>`         |

Every piece follows the same shape: `list` to see what's available, `install` (or `create`, for templates) to bring it into your project, `explain` to read its full docs, and `run` (for workflows, recipes, and evals) to actually execute it. Learn one, and you already know the other five.

## Next Steps

<CardGroup cols={3}>
  <Card title="MCP" icon="plug-connected" href="/cli/mcp">
    Connect Claude Code, Cursor, and other clients.
  </Card>

  <Card title="Skills" icon="message-chatbot" href="/cli/skills">
    See the full catalog of agent playbooks.
  </Card>

  <Card title="Templates" icon="code" href="/cli/templates">
    Scaffold a working project.
  </Card>

  <Card title="Workflows" icon="route" href="/cli/workflows">
    Automate a multi-step process.
  </Card>

  <Card title="Recipes" icon="flask" href="/cli/recipes">
    Run one example end to end.
  </Card>

  <Card title="Evals" icon="chart-bar" href="/cli/evals">
    Benchmark a command with a written report.
  </Card>
</CardGroup>
