Crawl a company website and get back every published phone number: switchboard, sales and office lines, at 0.5 credits per site.
scrape-phones-from-website crawls a company website and returns every phone number published on it — the homepage plus the contact, about, team, support and location pages. It calls the SyncGTM MCP tool `scrape_phones_from_website` at 0.5 credits per site, and what comes back are company lines: switchboard, sales and office numbers, not a named person's mobile. The skill wraps it for batch runs, so it dedupes your domain list, prices the job before it spends, and labels each number by format rather than dropping raw digits into your CRM.
Takes one input: a website URL or a bare domain. `url` is the only parameter the tool has, so there is nothing to tune and nothing to get wrong.
Crawls the homepage plus contact, about, team, support and location pages, pulling numbers from page text, `tel:` links and embedded markup.
Returns the site `url` and a flat `phones` array of every number found — one site is one call, however many numbers come back. There is no per-number label in the response.
Returns switchboard, sales and office lines. It does NOT return a decision-maker's direct dial or personal mobile: for that you need `find_work_phone` or `find_mobile_number` at 12 credits each, from a `linkedin_url`.
Costs 0.5 credits per call, charged whether the site publishes a number or not. An empty result is normal, not an error.
The skill strips `www.` and paths so one company is billed once, prices the batch before it runs, labels each number from its format as switchboard, mobile format or unknown, and keeps zero-result domains in the table as blanks.
Download the skill file — it saves as scrape-phones-from-website.zip.
In Claude, open Settings → Capabilities → Skills and upload the .zip (or unzip the scrape-phones-from-website/ folder into .claude/skills/ for Claude Code).
Connect the SyncGTM MCP server using the setup guide for your client at docs.syncgtm.com/mcp_server/setup. It is browser sign-in, no API key.
Paste your domains as bare domains — acme.com, not www.acme.com/contact — and run /scrape-phones-from-website. The skill prices the batch at 0.5 credits per domain and asks before spending.
The one setting worth tuning is the escalation budget: how many accounts may go to `find_work_phone` at 12 credits each. It defaults to zero, so without it the run stops at the published switchboard on every row.
Turn a list of local business websites into a dial list carrying whatever office line each site publishes. When you only need to reach the front desk, this is 24x cheaper than a per-person phone lookup.
Fill the empty phone field on every account your CRM already has a domain for. 0.5 credits per account instead of 12, run across the whole segment in one pass.
When a sequence dies on undeliverable addresses, pull the company switchboard so the account stays reachable by phone instead of going to the suppression list.
Compare the number on a Google Maps listing with the numbers the business publishes on its own site. Catches stale listings and call-tracking numbers before a rep dials one.
Outcome: A 45-row call sheet carrying whatever office number and contact inbox each site publishes, plus a WhatsApp flag on the mobile-format numbers, built in one sitting for 47 credits plus 1 per WhatsApp check.
Outcome: 60 of the 80 accounts carry a published company number, 12 tier-1 rows also carry a direct dial, and the 20 blanks fall back to whatever inbox the site publishes — 194 credits, against the 960 that sending all 80 to `find_work_phone` would have cost.
Outcome: 18 accounts pulled back out of a dead email list, each with a number to call and a person to ask for, for exactly 78 credits.
Paste any of these into Claude once the skill is installed and the SyncGTM MCP is connected.
Scrape phone numbers from acme.com and label each number as switchboard, sales or unknown.Scrape phone numbers from these 40 domains, one call per domain. Tell me the credit total before you start, then return one row per domain with every number found.Find med spas in Phoenix with google_maps_listings, cap it at 50 listings, then scrape phone numbers from every listing that has a website. Price the scrape at 0.5 credits per site before you run it, and return business, website, Maps phone and scraped phones side by side.Here are 25 CRM accounts with a domain and no phone. Scrape phone numbers from each domain, and for any domain that returns nothing, scrape emails from the same site instead. Flag which channel each account ended up with.Scrape phone numbers from stripe.com. If nothing comes back, do not guess a number — say so and tell me which tool to use next.Pass the bare domain. The crawl already covers contact, about, team, support and location pages, so a deep link buys you nothing — and a list mixing acme.com, www.acme.com and acme.com/contact bills three calls for one company.
Set the expectation before the run: these are company lines. Tell your client to label them switchboard so nothing lands in a mobile column and reps stop expecting a decision-maker to pick up.
Budget for the whole list, not the hits. 0.5 credits is charged per call, and plenty of sites publish no number at all — an empty result is normal and still costs.
Forbid guessing, of numbers and of labels. The response is `url` plus a `phones` array with no per-number context, so a line whose purpose is unclear stays `unknown` and a site with no number stays blank — a plausible fabricated number wastes a dial and burns the account.
Never re-run a domain that came back empty. The second crawl costs another 0.5 credits and returns the same nothing — send it to `scrape_emails_from_website` (0.5) for a contact inbox instead.
Escalate deliberately. `find_work_phone` and `find_mobile_number` are 12 credits each, 24 site scrapes apiece, so reserve them for named contacts at accounts you have already qualified.