Phantom Recommender Skill: How to improve MCP performance
The PhantomBuster MCP server lets users run automations in plain English, but the quality of what it launches depends entirely on the quality of the recommendation that precedes it. When an assistant guesses which Phantom to use from memory, it hallucinates Phantom names, suggests deprecated automations, or picks a tool the user can't actually run with the inputs they have. The Phantom Recommender skill fixes this by grounding every recommendation in the Phantoms Database.
Why grounding matters for the MCP
An MCP call is only as good as its plan. The recommender skill turns a vague goal ("reach CTOs who commented on a competitor's post") into a concrete, runnable plan before any agent is launched. Because it reads the database instead of relying on model memory, it guarantees three things: every recommended Phantom actually exists, it is currently Released (never Deprecated, Abandoned, Unlisted, or Renamed), and the user has the required inputs on hand before the MCP tries to launch anything.
The data that powers it
Each row in the database carries the four fields the skill reasons over:
- Performed action: the Phantom's main objective, matched against the user's goal.
-
Goal Category:
Scrape(build a list),Enrich(complete the data),Engage(act on the list). This places each Phantom in the funnel and lets the skill chain them in the right order. - Input type / Input supported: what the user must already have: a search URL, profile URLs, a session cookie, a CRM connection. The skill checks feasibility here, so the MCP never launches an agent that's missing its input.
- Output: what a run produces (CSV fields, CRM records, outreach logs). This is what makes chaining reliable: the skill verifies that step 1's output actually feeds step 2's input.
Every row also carries the Phantom link, so recommendations always point to the real phantombuster.com, page.
How the skill works
The skill reads the public version of the database first (via the Notion site URL), filters to Released and Beta Phantoms, then identifies the platform, the input the user already has, and the desired outcome. It answers in one of two modes. In shortlist mode it returns 1 to 3 best-fit Phantoms with why they fit, what they need, what they output, and their links. In workflow mode it chains Phantoms in funnel order (Scrape → Enrich → Engage) and, before chaining three or more, checks whether an all-in-one workflow Phantom (LinkedIn Search to Lead Connection, Google Maps Search to Contact Data, LinkedIn Outreach…) already covers the chain in fewer slots.
It also applies core PhantomBuster strategy: prefer warm and lukewarm audiences (post engagers, event guests, group members, existing connections) over cold search exports, and relay rate limits and account-safety caps with every recommendation.
What this means in practice
- Fewer failed MCP runs: input requirements are validated against
Input typebefore launch. - No hallucinated or dead automations: only database-verified, Released Phantoms are suggested.
- Better chains: outputs are matched to inputs step by step, so multi-Phantom workflows hand off cleanly.
- Safer accounts: rate limits travel with every recommendation.
Keeping it sharp
The skill is only as good as the database. When a new Phantom ships or one is deprecated, update its row, especially Performed action, Goal Category, Input type, Output, and Phantom's Status. The public database URL is the live source; the skill's bundled catalog snapshot is only an offline fallback.
Source of truth: the Phantoms Database and the Phantombuster.com store.
Copy the skill
To use the Phantom Recommender in Claude (Cowork or Claude Code), save the block below as phantom-recommender/SKILL.md and install it as a skill.
---
name: phantom-recommender
description: Recommend the right PhantomBuster Phantom(s), or a full chained Phantom workflow, for any lead-gen, scraping, enrichment, or outreach goal, based on the public Phantom Database (Notion site). Use this skill whenever the user asks "which Phantom should I use", "is there a Phantom that...", "what Phantoms would you recommend for...", or describes a goal involving extracting/scraping leads, enriching contact data, finding emails, or automating outreach on LinkedIn, Sales Navigator, Instagram, X/Twitter, Facebook, Google Maps, the web, or syncing to a CRM (HubSpot, Salesforce, Pipedrive, lemlist). Trigger even when the word "Phantom" isn't used, e.g. "a customer wants to reach CTOs who commented on a competitor's post", "how can I build a list of local restaurants with emails", "what workflow should I suggest for influencer outreach". Also use when prepping Phantom recommendations for customer calls, recap emails, or playbooks.
---
# Phantom Recommender
Recommends specific Phantoms (PhantomBuster automations) based on what the user wants to achieve, using the team's curated Phantom Database, published publicly on Notion.
## Step 1: Read the Phantom Database first
The source of truth is the public Phantoms Database (Notion site):
`https://thephantomcompany.notion.site/d22ab00a50994f078509e07b416c356a?v=f1c1b6f00fe6430aa4204ffee45b8bdc&p=56e68191a1b34d7395d900865ec93b32&pm=s`
How to read it, in order of preference:
1. Notion MCP connected: pass the URL to the `notion-fetch` tool (it supports `*.notion.site` URLs), then query the data source it returns (`notion-query-data-sources`) selecting: `Phantom's Name`, `Performed action`, `Goal Category`, `Input type`, `Input supported`, `Output`, `Phantom link`, `Phantom's Type`, `Phantom's Status`. Filter to `Phantom's Status` in ('Released', 'Beta'). Never recommend Deprecated, Abandoned, Unlisted, or Renamed Phantoms.
2. No Notion access: fetch the public URL with a web tool (it requires no authentication).
3. Offline fallback: read `references/phantom-catalog.md`, a bundled snapshot (date noted at the top).
Never recommend a Phantom from memory alone. Only recommend Phantoms that exist in the database.
The key fields and how to use them:
- Performed action: the Phantom's main objective; match it to the user's goal.
- Goal Category: `Scrape` (build a list), `Enrich` (complete the data), `Engage` (act on the list); use it to place the Phantom in the funnel.
- Input type / Input supported: what the user must already have (search URL, profile URLs, session cookie, CRM connection...); use it to check the recommendation is actionable from what they have today.
- Output: what the run produces (fields, CSV, CRM records); use it to confirm it delivers the outcome they want and feeds the next step of a chain.
- Phantom link: the phantombuster.com URL to include with every recommendation.
## Step 2: Understand the goal
Identify from the request (ask one clarifying question only if genuinely ambiguous):
- Platform(s): LinkedIn, Sales Navigator, Instagram, X/Twitter, Facebook, Google Maps, generic web, CRM...
- Input the user already has: a search URL, a list of names/emails, a competitor account, a post URL, a CRM full of contacts, or nothing yet. Match against the database's `Input type`.
- Desired outcome: a lead list (Scrape), completed data like emails/firmographics (Enrich), or actual outreach/visibility (Engage). Match against `Goal Category` and `Output`.
- Audience temperature: prefer Warm/Lukewarm sources when available (post engagers, event guests, profile viewers, group members, existing connections) over cold search exports. Warmer lists convert better and this is core PhantomBuster strategy advice.
## Step 3: Pick the response mode
Shortlist mode, when the user asks "which Phantom does X" or the goal maps to a single capability:
- Recommend 1 to 3 best-fit Phantoms, each with one sentence on why it fits, what it needs as input, what it outputs, and its phantombuster.com link.
- If two Phantoms overlap, say which one to prefer and why.
Workflow mode, when the user describes an end-to-end goal (e.g. "reach marketing directors who engaged with a competitor's post"):
- Chain Phantoms in funnel order: Scrape -> Enrich -> Engage.
- For each step, state: the Phantom, what goes in (from `Input type`), what comes out (from `Output`), and how the output feeds the next step.
- Before chaining 3+ Phantoms, check the database for an all-in-one workflow Phantom that already covers the chain (e.g. LinkedIn Search to Lead Connection, Google Maps Search to Contact Data, LinkedIn Post Engagers to Lead Outreach, LinkedIn Search to lemlist Campaign, LinkedIn Outreach). If one exists, lead with it and offer the manual chain as the flexible alternative.
- End with one practical tip (rate limits, warm-up sequencing, or account-safety caps noted in the database).
## Output style
- Keep recommendations skimmable: short intro, then the Phantoms/steps, each with its link.
- Always include the phantombuster.com link (`Phantom link`) for every recommended Phantom.
- Relay rate limits and safety caps whenever the Phantom has them noted (e.g. Instagram Auto Liker max 1 post/hour, Facebook Profile Scraper max 5/hour, LinkedIn Auto Follow 80/week Basic).
- If nothing in the database fits the goal, say so honestly and suggest the closest alternative. Do not invent Phantoms.
## Refreshing the snapshot
`references/phantom-catalog.md` is only an offline fallback. When the user asks to refresh it, or mentions a Phantom missing from it, re-read the live public database (Step 1), then regenerate the snapshot file from the live data (copy the skill to a writable location first if it's installed read-only) and offer the user a re-packaged `.skill` file.
Comments
0 comments
Please sign in to leave a comment.