# Outreach Agent

> Draft personalized cold-outreach emails to recruiters and employees at the user's target companies. Uses the Apollo MCP to find and enrich contacts and the Gmail MCP to save drafts. Never sends — drafts only.

- **Type:** Skill
- **Install:** `agentstack add skill-kushal238-outreach-agent-skill-outreach-agent-skill`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [kushal238](https://agentstack.voostack.com/s/kushal238)
- **Installs:** 0
- **Category:** [Communication](https://agentstack.voostack.com/c/communication)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [kushal238](https://github.com/kushal238)
- **Source:** https://github.com/kushal238/outreach-agent-skill

## Install

```sh
agentstack add skill-kushal238-outreach-agent-skill-outreach-agent-skill
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Outreach Agent

Create reviewed Gmail **drafts** (never send) of personalized outreach to people at the
user's target companies, so the user can review and send them by hand.

## Prerequisites — verify before doing anything
- **Apollo MCP** connected (people-search + people-enrichment tools available).
- **Gmail MCP** connected (`create_draft`, `list_drafts` available).

If either is missing, STOP and point the user to `SETUP.md`. Do not try to substitute
another data source or guess email addresses.

## Contact source — pick ONE
- **CSV (preferred):** read the CSV named in `contacts_csv` in `targets.yaml` (default
  `contacts.csv`). Use it and skip steps 1-2 below. Map columns: `First Name`, `Last Name`,
  `Title`, `Company`, `Email`, `Email Status`. **Use only rows where `Email` is non-empty.**
  All email statuses are fair game — do not filter by status.
- **Apollo MCP (needs a paid plan):** if no CSV, run steps 1-2 (search + enrich). On a free
  plan these return `API_INACCESSIBLE` — fall back to asking the user for a CSV.

## Inputs — read these two files from this skill's folder
- `targets.yaml` — who the user is (name, background) + `daily_cap`. With a CSV, the
  titles/companies fields are ignored (the CSV is the target list).
- `template.md` — the email template. The actual template is the content under the
  `## Template` heading; the first line of it is the `Subject:` line.

If `your_name` or `your_background` in `targets.yaml` is blank, STOP and ask the user to
fill them in — personalization and the signature depend on them.

## Procedure
1. **Find people.** For each target company × title, use Apollo people-search to find
   matching people for the user's `field`. Pull at most `ceil(daily_cap / number_of_companies)`
   per company so the run stays under the cap. Prefer recruiters and hiring managers.
2. **Enrich.** Use Apollo enrichment to reveal each person's verified email.
   **Drop anyone without a verified email. Never guess or construct an address.**
3. **Dedupe.** For each remaining candidate:
   - Check `completed.csv` in this skill's folder. **Skip anyone whose email appears there** — they've already been contacted.
   - Check Gmail with `list_drafts` and `search_threads` (query their email). **Skip anyone already drafted or previously emailed.**
   - Track who was skipped and why.
4. **Respect the cap.** Never create more than `daily_cap` drafts in one run. If more
   qualified candidates remain, list the overflow and stop at the cap.
5. **Personalize (tiny adjustment).** Render the template for each contact:
   - Fill `{{first_name}}`, `{{company}}`, `{{title}}`, `{{your_name}}`, `{{your_background}}`
     from the data.
   - For `{{custom_line}}`, write **one** sentence grounded **only** in real, known facts
     (their title, team, company). **Never fabricate** anything about the person.
   - Keep all other wording exactly as written — the template is the user's voice.
6. **Confirm if large.** If more than 5 drafts will be created, show the user the candidate
   list (name, company, title, email) and get an explicit confirm before creating any drafts.
7. **Create drafts.** Use Gmail `create_draft` with the contact's email as `to`, the rendered
   subject, and the rendered body. **Never call any send tool.**
8. **Report.** Output a table: `Name | Company | Title | Email | Draft created? | Skipped (reason)`.
   Remind the user to review every draft in Gmail before sending.

## After sending
When the user confirms they've sent emails from the drafts:
- Remove those contacts from `contacts.csv`.
- Append them to `completed.csv` (same folder), adding today's date in the `Date Sent` column.
- `completed.csv` columns: `First Name, Last Name, Title, Company, Email, Email Status, List, Date Sent`.
- Never delete contacts — only move them. This prevents re-drafting to already-contacted people.

## Hard rules
- Drafts only. Never send.
- Never invent, guess, or pattern-match an email address — only use Apollo-verified emails.
- Never fabricate facts about a person in `{{custom_line}}`.
- Stay at or under `daily_cap`.
- Confirm with the user before creating more than 5 drafts in a run.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [kushal238](https://github.com/kushal238)
- **Source:** [kushal238/outreach-agent-skill](https://github.com/kushal238/outreach-agent-skill)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-kushal238-outreach-agent-skill-outreach-agent-skill
- Seller: https://agentstack.voostack.com/s/kushal238
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
