Agent skill
email-validator
Find and validate email addresses using Snov.io via Chrome DevTools MCP.
Filed under LinkedIn and social.
From ekatasingh1107/b2b-gtm-skills · 99 skills · 2 · pushed 2026-04-11
What it does when it runs
Find and validate email addresses using Snov.io via Chrome DevTools MCP. Takes LinkedIn profile URLs and returns verified emails. Replaces ZeroBounce.
Read from the skill and the 1 file bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- chrome-devtools
- Hosts it reaches
- app.snov.io
- linkedin.com
- www.linkedin.com
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/ekatasingh1107/b2b-gtm-skills.git /tmp/b2b-gtm-skills git -C /tmp/b2b-gtm-skills sparse-checkout set "skills/capabilities/email-validator" mkdir -p ~/.claude/skills/email-validator cp -R "/tmp/b2b-gtm-skills/skills/capabilities/email-validator/." ~/.claude/skills/email-validator/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
Before you install: this skill will not complete its job on a bare agent. It needs chrome-devtools, which you have to obtain separately.
The skill
Source on GitHub ↗Reproduced in full from ekatasingh1107/b2b-gtm-skills/blob/eae8dd0bb98da1c8e84abd297066a87015dd860f/skills/capabilities/email-validator/SKILL.md, which is licensed MIT (repository). 680 words, 13 headings.
Email Validator
Finds and validates email addresses using Snov.io via Chrome DevTools MCP. Takes LinkedIn profile URLs from decision-maker-finder and returns verified emails. Minimum 3 verified emails per company required; flags RED if fewer.
Prerequisites
agency.config.jsonpopulated withtools.email_validation- Snov.io logged in on Chrome Beta
- Chrome DevTools MCP available (
mcp__chrome-devtools__*) - LinkedIn profile URLs for contacts (from decision-maker-finder)
Phase 0: Intake
Read agency.config.json:
tools.email_validation.tool-- must be "snovio"tools.email_validation.access-- must be "chrome_devtools"tools.browser_automation-- Chrome DevTools MCP config
Accept parameters:
- List of contacts with LinkedIn profile URLs (from decision-maker-finder output)
- Company name for each contact (for grouping and threshold checking)
Phase 1: Navigate to Snov.io
Using Chrome DevTools MCP:
mcp__chrome-devtools__navigate_pageto Snov.io dashboard- Verify logged-in state (check for user avatar or dashboard elements)
- If not logged in: STOP and report "Snov.io login required in Chrome Beta"
- Navigate to the email finder / LinkedIn lookup section
Phase 2: Find and Validate Emails via LinkedIn Profile URLs
CRITICAL: ALWAYS use Snov.io LinkedIn Search (app.snov.io/linkedin/search) with the person's LinkedIn profile URL. NEVER guess email patterns from domain names. Snov.io returns the actual verified email tied to the LinkedIn profile.
For each contact:
Chrome DevTools MCP Workflow (Single Lookup):
1. mcp__chrome-devtools__navigate_page → https://app.snov.io/linkedin/search
2. mcp__chrome-devtools__fill → paste full LinkedIn profile URL (e.g. https://www.linkedin.com/in/chris-ferguson-80b98b79)
3. mcp__chrome-devtools__click → "Find email" / search button
4. mcp__chrome-devtools__wait_for → results to load (email found or not found)
5. mcp__chrome-devtools__take_snapshot → read verified email from results
Snov.io finds the real email from the LinkedIn profile and returns:
- Email address (the actual email, not a guess)
- Verification status (valid, invalid, catch-all, unknown)
- Green dot = verified, Gray dot = not found
For Multiple Contacts (Bulk):
Use Snov.io Bulk LinkedIn Search:
- Navigate to bulk search or use the LinkedIn Search page repeatedly
- Paste each LinkedIn URL one by one
- Collect all verified emails before sending any outreach
NEVER DO THIS:
- Do NOT guess emails from domain patterns (e.g. [email protected])
- Do NOT use Email Search with name + domain as primary method
- Do NOT send emails without Snov.io verification first
- Do NOT use Domain Search to infer email patterns and construct addresses
Phase 3: Process Results
For each contact, record:
{
"name": "Jane Doe",
"company": "BrandX",
"linkedin_url": "https://linkedin.com/in/janedoe",
"email": "[email protected]",
"email_status": "valid",
"email_type": "professional",
"source": "snovio"
}
Classification handling:
| Status | Action | Include in Outreach? |
|---|---|---|
| Valid | Use as-is | Yes |
| Catch-All | Flag but use | Yes (with caution) |
| Invalid | Do not email | No |
| Unknown | Flag for review | Maybe |
| Not Found | LinkedIn-only outreach | No email outreach |
Phase 4: Company Threshold Check
For each company, verify minimum email coverage:
- Count verified (valid + catch-all) emails per company
- Minimum threshold: 3 verified emails per company
- If >= 3 verified: company is GREEN
- If < 3 verified: company is RED
For RED companies:
- FLAG as RED on CRM sheet (visual indicator)
- Note in CRM: "Low email coverage - [N] verified emails. Prioritize LinkedIn outreach."
- Still proceed with available emails, but prioritize LinkedIn/Instagram channels
Phase 5: Update CRM
Write validation results back to CRM via crm-writer:
- Update email and email_status columns for each contact
- Flag RED companies with a visual indicator
- Update lead stage from RESEARCHED to email-validated
No approval gate. Results are written directly.
Phase 6: Summary
Email Validation Complete (Snov.io):
- Contacts processed: N
- Emails found: N
- Valid: N (X%)
- Catch-All: N (X%)
- Invalid: N (X%)
- Not Found: N (X%)
Company Coverage:
- GREEN (3+ verified emails): N companies
- RED (< 3 verified emails): N companies [LIST]
Example Usage
Trigger phrases:
- "Validate emails for today's leads"
- "Find emails via Snov.io"
- "Run email validation on the pipeline"
- "Check email coverage for these companies"
Files bundled with it
These load only when the skill asks for them, so they cost nothing until it runs.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- cold-email by coreyhaines31 · 46,928
- email-sequence by OpenClaudia · 677
- email-subject-lines by OpenClaudia · 677
- cold-email-kickoff by growthenginenowoslawski · 668
- cold-email-starter-kit by growthenginenowoslawski · 668
- cold-email-weekly-rhythm by growthenginenowoslawski · 668
- email-deliverability-audit by growthenginenowoslawski · 668
- cold-email-verifier by Varnan-Tech · 626
Need help setting it up?
This page tells you what email-validator does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.