B2B Prospect Engine
Recebe um domínio de empresa e retorna um registro enriquecido da empresa com contatos correspondentes, e-mails de trabalho verificados e classificação de função para cada um.
Documentação
Servidor MCP Prospect Engine
Servidor MCP para o ator Prospect Engine da Mamba Labs no Apify.
Quatro modos em um único ator: enriqueça empresas que você já possui, descubra quem está contratando para suas palavras-chave, encontre contatos em uma empresa ou execute toda a cadeia de ponta a ponta com um filtro de ICP no meio.
Instalação
npx -y @mambalabsdev/mcp-b2b-prospect-engine
Claude Desktop
{
"mcpServers": {
"mamba-b2b-prospect-engine": {
"command": "npx",
"args": ["-y", "@mambalabsdev/mcp-b2b-prospect-engine"],
"env": { "APIFY_TOKEN": "your-apify-token" }
}
}
}
Obtenha um token do Apify em console.apify.com/account/integrations.
Ferramenta
run_prospect_engine
Quatro modos em um único ator: enriqueça empresas que você já possui, descubra quem está contratando para suas palavras-chave, encontre contatos em uma empresa ou execute toda a cadeia de ponta a ponta com um filtro de ICP no meio.
| Entrada | Tipo | Obrigatório | Observações |
|---|---|---|---|
mode | enum | não | O que executar. enrich_companies resolve identidade, firmografia, LinkedIn e redes sociais de cada empresa. discover_jobs encontra quem está contratando para suas palavras-chave e resolve o empregador real a partir da descrição da vaga. find_contacts encontra pessoas em cada empresa. full encadeia todos os três. Padrão: "enrich_companies". Um de: enrich_companies, discover_jobs, find_contacts, full. |
domains | array | não | Um domínio por linha. Usado por enrich_companies e find_contacts. |
company_names | array | não | Um nome por linha. Usado quando você tem um nome, mas não um domínio. |
keywords | array | não | Cargos a pesquisar. Usado por discover_jobs e full. Exemplo: revisor de textos, revisor de provas, editor de conteúdo. Padrão: ["revisor de textos", "revisor de provas", "editor de conteúdo"]. |
country | string | não | Código de país com duas letras para a busca de vagas, por exemplo us ou gb. Padrão: "us". |
location | string | não | Filtro opcional de localização para a busca de vagas, por exemplo Nova York. |
lookback_days | string | não | Descarta anúncios mais antigos que este número de dias. Enviado como string porque o Clay envia todo campo como string. Padrão: "30". |
max_results | string | não | Limite de anúncios retornados por execução. Evita que um conjunto amplo de palavras-chave saia do controle. Padrão: "25". |
max_pages | string | não | 1 a 5. Cada página é uma chamada SerpAPI, então este é o principal controle de custo na descoberta. Padrão: "1". |
new_postings_only | string | não | true para retornar apenas anúncios não vistos em uma execução anterior. Padrão: "false". |
previous_run_date | string | não | AAAA-MM-DD como marca d'água para detecção de delta quando o cache entre execuções não está disponível. |
remote_only | string | não | true para manter apenas anúncios sinalizados como remotos pela plataforma. Padrão: "false". |
company_size_min | string | não | Descarta empresas abaixo deste número de funcionários. Só tem efeito quando o número de funcionários é conhecido, então se aplica no modo full e em qualquer linha de descoberta que tenha trazido contagem de funcionários. A descoberta sozinha não enriquece. |
company_size_max | string | não | Descarta empresas acima deste número de funcionários. Mesma condição do mínimo. |
exclude_staffing | string | não | true para descartar anúncios de agências de staffing e recrutamento. Padrão: "true". |
exclude_marketplaces | string | não | true para descartar listagens de Upwork, Fiverr, Freelancer e similares. Padrão: "true". |
extra_marketplaces | array | não | Nomes adicionais de marketplaces para filtrar. |
fetch_posting_page | string | não | true para abrir o anúncio da vaga quando a descrição sozinha não identifica o empregador. Mais lento, e é o que captura um anúncio de quadro de vagas em nome do empregador. Padrão: "true". |
target_contacts | string | não | 1 a 25. Padrão: "3". |
target_roles | array | não | Enriquece apenas contatos cujo cargo corresponda de forma plausível a um destes papéis. Filtra após a descoberta e antes de qualquer consulta paga de e-mail, então um contato que não corresponde não custa nada. Deixe vazio para manter todos os contatos que os filtros de senioridade e departamento permitirem. |
deny_tokens | array | não | Palavras inteiras que desqualificam um contato mesmo quando o cargo correspondeu a um papel alvo, por exemplo product recusa Product Owner e mantém Production Editor. Aplica-se mesmo quando nenhum papel alvo está definido. |
company_concurrency | string | não | Quantas empresas trabalhar ao mesmo tempo. Chamadas simultâneas ao provedor são este valor vezes contact_concurrency; 6 x 3 = 18 fica abaixo do teto documentado mais restrito do provedor. Padrão: "6". |
contact_concurrency | string | não | Quantos contatos enriquecer ao mesmo tempo dentro de uma empresa. O fluxo de e-mails em si sempre roda em ordem. Padrão: "3". |
max_spend_usd | string | não | Para de fazer chamadas pagas a fornecedores quando este valor do seu próprio gasto com fornecedores (Findymail, Icypeas, Prospeo, BounceBan) for comprometido, e retorna tudo o que foi concluído até então. Limita suas faturas de fornecedores, não a cobrança do Apify por este ator. Deixe vazio para sem limite. |
job_titles | array | não | Cargos a pesquisar ao encontrar contatos. |
seniority | array | não | c_level, vp, director, manager, senior. |
departments | array | não | marketing, sales, engineering, product, finance, hr, operations, legal. |
include_email | string | não | true para executar o fluxo de e-mails. Precisa de uma chave Icypeas ou Prospeo, que você fornece e pelas quais é cobrado diretamente. Padrão: "false". |
verify_email | string | não | true para verificar cada endereço. Precisa de uma chave BounceBan. Padrão: "true". |
verify_position | string | não | true para perguntar a um modelo se o cargo registrado de cada contato é consistente e plausivelmente atual, com base apenas nas evidências fornecidas. Precisa de claude_api_key; ignorado sem ela. Contatos encontrados no próprio site da empresa são ignorados. Padrão: "true". |
personalize | string | não | true para escrever uma abertura de uma ou duas frases por contato que tenha endereço, referenciando algo específico sobre a empresa. Precisa de claude_api_key; ignorado sem ela. Padrão: "true". |
brand_voice | string | não | Como a abertura deve soar. Deixe vazio e ela escreve de forma simples e direta. |
score_icp | string | não | true para pontuar cada linha contra as regras de ICP e classificá-la de A a D. Padrão: "true". |
icp_preset | enum | não | Qual modelo de pontuação aplicar. "editorial_services" pontua para um vendedor de revisão e edição de textos gerenciadas. "generic_b2b" pontua com base em intenção de contratação, resolubilidade do empregador e número de funcionários, sem vocabulário específico de serviço. Padrão: "editorial_services". Um de: editorial_services, generic_b2b. |
min_icp_score | string | não | No modo full, apenas empresas com pontuação igual ou superior a este valor seguem para a descoberta de contatos. Padrão 45: em 25 o filtro deixou passar todos os anúncios editoriais descobertos por palavra-chave, porque 25 é o piso que tal anúncio pode pontuar. Padrão: "45". |
extra_exclude_names | array | não | Qualquer empresa cujo nome contenha um destes é excluída. |
signal_taxonomy | array | não | Substitui os tipos de sinal padrão. Cada entrada é um objeto com type, strength, title_keywords e opcionais also_keywords e description_keywords. |
include_social | string | não | true para resolver Facebook, Instagram, X e YouTube junto com LinkedIn. Padrão: "true". |
source_timeout_secs | string | não | 5 a 120. Uma fonte que exceda este valor é marcada como degradada e a execução continua. Padrão: "30". |
skip_cache | string | não | true para ignorar o cache de 7 dias entre execuções e recalcular tudo. Padrão: "false". |
serper_api_key | string | não | Sua chave Serper.dev. Alimenta a busca de pessoas em find_contacts, que é a camada de maior cobertura. Sem ela, o fallback gratuito é visivelmente ruim. |
findymail_api_key | string | não | Sua chave Findymail. Primeiro provedor no fluxo de e-mails. |
icypeas_api_key | string | não | Sua chave Icypeas. Roda em falhas do Findymail. |
prospeo_api_key | string | não | Sua chave Prospeo. Roda no residual após Findymail e Icypeas. |
bounceban_api_key | string | não | Sua chave BounceBan. Segundo verificador, usado para o caso catch-all. |
serpapi_key | string | não | Sua chave SerpApi. Necessária para discover_jobs e full. Distinta de uma chave Serper: fornecedor diferente. |
claude_api_key | string | não | Sua própria chave Anthropic, usada para verificação de cargo e abertura personalizada. Ambas as etapas são ignoradas quando ela está ausente. Nunca armazenada. |
Cobrança
Você é cobrado por empresa enriquecida, por contato verificado e por anúncio de vaga descoberto, com taxas diferentes para enriquecimento básico e completo. Chamadas de API de fornecedores são cobradas de você diretamente por esses fornecedores. Defina max_spend_usd para limitar esse gasto com fornecedores por execução, e target_roles para pular consultas pagas para contatos fora dos cargos que você deseja. verify_position e personalize rodam na sua própria chave Anthropic (claude_api_key) e são ignorados sem ela.
Os preços estão na página do ator no Apify. Executar este servidor consome créditos do Apify.
O que este servidor faz e não faz
É um cliente leve para o ator do Apify. Ele repassa sua entrada e retorna a saída do ator sem alterações. Todo comportamento descrito acima vive no ator, não aqui.
Erros são expostos, nunca engolidos. Uma entrada inválida, um token inválido, um saldo esgotado, um timeout ou uma execução que retorne qualquer coisa que não seja um dataset voltam como um erro explícito da ferramenta, em vez de um resultado vazio.
A ferramenta inicia a execução do ator e a monitora até um status concluído, então uma execução longa não é cortada em 300 segundos. A execução tem 1.800 segundos permitidos. Se ainda estiver em andamento dois minutos depois disso, a chamada para de esperar e retorna o ID da execução com um link para ela no Apify Console, onde os resultados chegam quando ela termina. Uma execução que não tenha sucesso volta como um erro com seu ID e status. Uma execução full ou find_contacts sobre muitas empresas pode levar vários minutos, e é por isso que isso importa aqui.
Fonte
O ator está na Apify Store. Este wrapper é licenciado sob MIT.
Construído por Mamba Labs