Systems Lab

Agent skill

phone-finder

Find phone numbers for decision makers via Lemlist using Chrome DevTools MCP.

dormantNeeds a keyInstructions only439 words

Filed under Outbound email.

From ekatasingh1107/b2b-gtm-skills · 99 skills · 2 · pushed 2026-04-11

What it does when it runs

Find phone numbers for decision makers via Lemlist using Chrome DevTools MCP. Takes LinkedIn profile URLs and returns phone numbers where available.

Read from the skill and the 0 files 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
  • linkedin.com
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about phone-finder

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
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/phone-finder"
mkdir -p ~/.claude/skills/phone-finder
cp -R "/tmp/b2b-gtm-skills/skills/capabilities/phone-finder/." ~/.claude/skills/phone-finder/

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.

Reproduced in full from ekatasingh1107/b2b-gtm-skills/blob/eae8dd0bb98da1c8e84abd297066a87015dd860f/skills/capabilities/phone-finder/SKILL.md, which is licensed MIT (repository). 439 words, 10 headings.

Phone Finder

Finds phone numbers for decision maker contacts using Lemlist via Chrome DevTools MCP. Takes LinkedIn profile URLs (from decision-maker-finder output) and returns phone numbers where available.

Prerequisites

  • agency.config.json at repo root with tools.phone_lookup configured
  • Lemlist logged in on Chrome Beta
  • Chrome DevTools MCP available (mcp__chrome-devtools__*)
  • LinkedIn profile URLs for contacts (from decision-maker-finder)

Phase 0: Intake

  1. Read agency.config.json from the project root.
  2. Extract:
    • tools.phone_lookup.tool -- must be "lemlist"
    • tools.phone_lookup.access -- must be "chrome_devtools"
    • tools.browser_automation -- Chrome DevTools MCP config
  3. Accept parameters:
    • contacts -- (required) array of contact objects, each with: name, company, linkedin_url, email (if available)
    • batch_size -- (optional) how many to process at once (default: 25)

Phase 1: Navigate to Lemlist

Using Chrome DevTools MCP:

  1. mcp__chrome-devtools__navigate_page to Lemlist dashboard
  2. Verify logged-in state (check for user avatar or dashboard elements)
  3. If not logged in: STOP and report "Lemlist login required in Chrome Beta"
  4. Navigate to the contact enrichment / people search section

Phase 2: Upload Contacts

For each contact (or batch):

  1. Use the Lemlist people finder / enrichment feature
  2. Input the LinkedIn profile URL
  3. If LinkedIn URL is not available, input name + company as search terms
  4. Wait for Lemlist to process and return results

Chrome DevTools MCP workflow:

1. mcp__chrome-devtools__navigate_page → Lemlist enrichment page
2. mcp__chrome-devtools__fill → paste LinkedIn URL or name+company
3. mcp__chrome-devtools__click → search/enrich button
4. mcp__chrome-devtools__wait_for → results to load
5. mcp__chrome-devtools__take_snapshot → read results from page

Phase 3: Extract Phone Numbers

For each processed contact, extract:

{
  "name": "Jane Doe",
  "company": "BrandX",
  "linkedin_url": "https://linkedin.com/in/janedoe",
  "phone": "+1-555-123-4567",
  "phone_type": "mobile",
  "phone_source": "lemlist",
  "found": true
}

If no phone number found:

{
  "name": "Jane Doe",
  "company": "BrandX",
  "linkedin_url": "https://linkedin.com/in/janedoe",
  "phone": null,
  "phone_type": null,
  "phone_source": "lemlist",
  "found": false
}

Phase 4: Update CRM

Use crm-writer to update the Pipeline tab:

  • Add phone numbers to the corresponding contact rows
  • For contacts without phone numbers, leave the phone field empty (do not overwrite existing data)

Phase 5: Output

Return structured JSON:

{
  "total_contacts": 25,
  "phones_found": 18,
  "phones_not_found": 7,
  "success_rate": "72%",
  "contacts": [
    {
      "name": "Jane Doe",
      "company": "BrandX",
      "phone": "+1-555-123-4567",
      "found": true
    }
  ],
  "processed_at": "2026-03-16T09:30:00Z"
}

Summary:

Phone Finder Complete:
- Contacts processed: 25
- Phone numbers found: 18 (72%)
- CRM updated: 18 contacts

Example Usage

Trigger phrases:

  • "Find phone numbers for today's leads"
  • "Get phone numbers via Lemlist"
  • "Enrich contacts with phone numbers"
  • "Look up phones for these decision makers"

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.

Need help setting it up?

This page tells you what phone-finder 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.