The Vibe Prospecting MCP connector routes your AI agent's tool calls to Vibe Prospecting's own MCP server through Scalekit. Each user signs in to Vibe Prospecting once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 14 tools.
- Tools
- 14
- What they doRead · write · destructive
- 9 · 5 · 09 read5 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Vibe Prospecting MCP connection
In AgentKit > Connections, create a Vibe Prospecting MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Vibe Prospecting MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'vibeprospectingmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Vibe Prospecting MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'vibeprospectingmcp_get_dataset',toolInput: { tool_reasoning: 'YOUR_TOOL_REASONING' },})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "vibeprospectingmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Vibe Prospecting MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={"tool_reasoning":"YOUR_TOOL_REASONING"},tool_name="vibeprospectingmcp_get_dataset",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolvibeprospectingmcp_autocompleteAutocomplete values for business filters based on a query.Read-onlyAutocomplete
Autocomplete values for business filters based on a query. Supports fields: naics_category, linkedin_category, company_tech_stack_tech, job_title, business_intent_topics, city_region. Never use for fields not in this list. Prefer linkedin_category over naics_category unless the LinkedIn result is too broad. Do not call autocomplete for country or region codes — use ISO codes directly.
Inputs
fieldstringrequired- The field to autocomplete. Only use fields listed here. Never use autocomplete for a field not in this list.one of
naics_categorylinkedin_categorycompany_tech_stack_techjob_titlebusiness_intent_topicscity_region querystringrequired- The query to autocomplete
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Maximum 2000 characters.
session_idstring- Session ID for tracking tool calls within the same user request context. Reuse when continuing the same request; omit to create a new session.
vibeprospectingmcp_estimate_costEstimate the export cost in Explorium credits for a given table before exporting.Read-onlyEstimate Cost
Estimate the export cost in Explorium credits for a given table before exporting. Returns estimated cost, currency, a human-readable description, the table name, and a breakdown by row count and enrichment operations. Always show the cost estimate to the user and wait for explicit confirmation before calling export-to-csv. Note: show-sample already returns cost estimation fields, so this tool is only needed when a separate cost check is required.
Inputs
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Name of the table to estimate cost for
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Do not replace it with a per-step rationale or unrelated PII. Maximum 2000 characters.
vibeprospectingmcp_fetch_entitiesFind companies and/or prospects using any combination of filters (returns ~10 sample rows for exploration, no charge).Read-onlyFetch Entities
Find companies and/or prospects using any combination of filters (returns ~10 sample rows for exploration, no charge). Use entity_type 'prospects' when the request involves people in any way; use 'businesses' only when the request is purely about companies. Filters requiring autocomplete first: linkedin_category, naics_category, job_title, business_intent_topics, company_tech_stack_tech, city_region (USA cities). Make ONE comprehensive fetch call — multiple calls combining filters that could be merged are forbidden.
Inputs
entity_typestringrequired- REQUIRED: The type of entity you want as final output. Use "businesses" for company data, "prospects" for people/contact data. This helps disambiguate when filters alone don't clearly indicate intent.one of
businessesprospects filtersobjectrequired- Combination of filters to narrow down results. All filter fields are optional. Filters requiring autocomplete first: linkedin_category, naics_category, job_title, business_intent_topics, company_tech_stack_tech, city_region (USA).
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Do not replace it with a per-step rationale or unrelated PII. Maximum 2000 characters.
businesses_reference_tablestring- OPTIONAL: Only use to REFINE prospects from a previous fetch-businesses result. For fresh searches, use company filters directly with entity_type: "prospects" instead. MUST be provided with a session_id.
estimate_costboolean- No description.default
true exclude_keystring- Exclude key to avoid returning previously seen entities. Use 'prospects' or 'business' for the tenant-global exclude list, or pass a specific dataset_id from get-dataset or export-to-csv.
max_per_companynumber- Maximum number of prospects to return per company. Only applicable for prospect queries. CRITICAL: DO NOT use unless explicitly requested by the user.
number_of_resultsnumber- Number of results to return. Defaults to 50 if not specified. Use the exact number requested by the user.default
50 session_idstring- Session ID for tracking tool calls within the same user request context. Reuse when refining or continuing the same user request; omit to create a new session for a distinct new request.
vibeprospectingmcp_fetch_entities_statisticsFetch aggregated insights into businesses or prospects by industry, revenue, employee count, job department, and geographic distribution.Read-onlyFetch Entities Statistics
Fetch aggregated insights into businesses or prospects by industry, revenue, employee count, job department, and geographic distribution. Use entity_type 'prospects' when the request involves prospects; use 'businesses' only for company-only stats. Filters requiring autocomplete first: linkedin_category, naics_category, job_title, business_intent_topics, company_tech_stack_tech. Country and region codes can be used directly without autocomplete.
Inputs
entity_typestringrequired- REQUIRED: The type of entity you want statistics for. Use "businesses" for company stats, "prospects" for people/contact stats.one of
businessesprospects filtersobjectrequired- Combination of filters to scope the statistics query. All filter fields are optional.
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Maximum 2000 characters.
session_idstring- Session ID for tracking tool calls within the same user request context. Reuse when refining or continuing the same request; omit to create a new session.
vibeprospectingmcp_get_datasetLoad a previously exported dataset or list into a session for further analysis, prospecting, or exclusion — or list the user's most recent datasets.Read-onlyGet Dataset
Load a previously exported dataset or list into a session for further analysis, prospecting, or exclusion — or list the user's most recent datasets. Call with no dataset_id and no dataset_name to list up to 20 recent datasets. Provide at least one of dataset_id or dataset_name to load a specific dataset. If session_id is omitted, a new session is automatically created.
Inputs
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Do not replace it with a per-step rationale or unrelated PII. Maximum 2000 characters.
dataset_idstring- Optional. Dataset or list ID (starts with "ds-") to load directly. Takes priority over dataset_name. If neither dataset_name nor dataset_id is provided, returns a list of the user's most recent datasets.
dataset_namestring- Optional. Dataset or list name to load by name search. If the value starts with "ds-", use dataset_id instead. If neither dataset_name nor dataset_id is provided, returns a list of the user's most recent datasets.
session_idstring- Session ID for tracking tool calls within the same user request context. If not provided, a new session is automatically created for the dataset.
vibeprospectingmcp_match_businessGet the Explorium business IDs from business name and/or domain in bulk.Read-onlyMatch Business
Get the Explorium business IDs from business name and/or domain in bulk. You can provide either name OR domain for each business, or both (recommended for better accuracy). If session_id is provided, results are stored for future reference; otherwise a new session_id is created and returned. Do NOT use when you already called fetch-entities for businesses (response contains business IDs) or when looking for general industry trends without specific companies.
Inputs
businesses_to_matcharrayrequired- List of businesses to match. Each entry requires name and/or domain. Up to 50 businesses per call.
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Maximum 2000 characters.
session_idstring- Session ID for tracking tool calls within the same user request context. Reuse when refining or continuing the same request; omit to create a new session.
vibeprospectingmcp_match_prospectsMatch specific individuals to get their Explorium prospect IDs.Read-onlyMatch Prospects
Match specific individuals to get their Explorium prospect IDs. Requires email OR (full name + company name) for each prospect. Always prefer this over web search for questions about specific people. Results are stored in the session for future enrichment or export. Returns session_id in the response for future data retrieval.
Inputs
prospects_to_matcharrayrequired- List of prospects to match. Each entry requires email OR (full_name + company_name). Up to 40 prospects per call.
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Maximum 2000 characters.
session_idstring- Session ID for tracking tool calls within the same user request context. Reuse when continuing the same request; omit to create a new session.
vibeprospectingmcp_show_pricing_plansShow Vibe Prospecting credit package pricing in an interactive widget.Read-onlyShow Pricing Plans
Show Vibe Prospecting credit package pricing in an interactive widget. Use when the user asks about pricing, cost, buying credits, packages, upgrading, or plans — or when a prior tool execution failed due to insufficient credits. All plans are one-time purchases (not subscriptions), and credits are valid for 365 days. If a prior export-to-csv response included a promotion, pass its promo_code_id and promotion_type.
Inputs
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Do not replace it with a per-step rationale or unrelated PII. Maximum 2000 characters.
promotion_code_idstring- Optional Stripe promotion code id (e.g. promo_code_id from export-to-csv tool execution).
promotion_typestring- Optional promotion type. Currently can only be 'first_export'. Use it only when given a specific promotion code id from a previous export-to-csv tool execution with that type in the response.
vibeprospectingmcp_show_samplePresent the final sample rows to the user from a fetch, enrich, or events exploration table.Read-onlyShow Sample
Present the final sample rows to the user from a fetch, enrich, or events exploration table. Call this after each user turn's fetch/enrich/events work is finished. Charges 5 credits per exploration table (idempotent per table — duplicate calls for the same table_name do not charge again). Always call show-sample before presenting results to the user; do not ask for confirmation before calling it. This tool also returns export cost fields, so estimate-cost is not needed after show-sample for the same table.
Inputs
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- table_name from a prior fetch/enrich/events exploration response. Do not invent this value.
tool_reasoningstringrequired- The original user query that prompted this workflow, in EXACT WORDS. Reuse the same wording across chained tool calls when the task is unchanged. Do not replace it with a per-step rationale or unrelated PII. Maximum 2000 characters.
vibeprospectingmcp_enrich_businessAdd detailed information to companies from previous fetch-entities results.WriteEnrich Business
Add detailed information to companies from previous fetch-entities results. Supports enrichments including firmographics, technographics, funding, workforce trends, financial metrics, LinkedIn posts, website changes, and more. Returns a masked preview and a new table_name (no charge); use export-to-csv to retrieve all enriched rows. Use the new table_name for all downstream steps — the original fetch-entities table does not receive the enrichment columns.
- Idempotent
Inputs
enrichmentsarrayrequired- List of enrichment types to run in parallel
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Table name containing business data to enrich
estimate_costboolean- No description.default
true parametersobject- No description.
sample_sizenumber- Number of sample results to return in contextdefault
5
vibeprospectingmcp_enrich_prospectsAdd contact details and profiles to people from previous fetch-entities results.WriteEnrich Prospects
Add contact details and profiles to people from previous fetch-entities results. Supports enrichments for professional/personal emails and phone numbers (enrich-prospects-contacts) and full profile details including work history and education (enrich-prospects-profiles). Returns a masked preview and a new table_name (no charge). Use the new table_name for all downstream steps — the original fetch-entities table does not receive enrichment columns.
- Idempotent
Inputs
enrichmentsarrayrequired- List of enrichment types to run in parallel
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Table name containing prospect data to enrich
estimate_costboolean- No description.default
true parametersobject- No description.
sample_sizenumber- Number of sample results to return in contextdefault
5
vibeprospectingmcp_export_to_csvExport your data to CSV and get a download link.WriteExport to CSV
Export your data to CSV and get a download link. Consumes credits. Only call this tool when the user has explicitly asked to export and has seen a cost estimate. Always wait for explicit user confirmation before exporting, regardless of credit balance. Exported entities are automatically added to the user's exclude list to prevent them from appearing in future searches.
Inputs
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Name of the specific table to export
dataset_namestring- Descriptive name for the dataset (10-80 chars, lowercase alphanumeric with underscores). If not provided, a random name will be generated. The final dataset name will be: {dataset_name}_{unique_id}.
exclude_keystring- Optional. Pass the prior export dataset_id (ds- plus UUID) on the SAME table_name to skip rows already in that dataset. Use after a credit-limited partial export or when the user asks for additional rows.
limitinteger- Maximum rows to materialize for this export (overrides workflow number_of_results). Without exclude_key: cap at limit rows from the original query. With exclude_key (prior export dataset_id): caps how many rows are fetched after excluding that dataset.
tool_reasoningstring- The ORIGINAL user query that started this workflow, in EXACT WORDS. Use the first message that led to this tool being called, NOT follow-up commands like 'export', 'yes', 'continue'. Maximum 2000 characters.
vibeprospectingmcp_fetch_businesses_eventsRetrieves business-related events (funding rounds, new offices, partnerships, hiring signals, etc.) from the Explorium API in bulk.WriteFetch Businesses Events
Retrieves business-related events (funding rounds, new offices, partnerships, hiring signals, etc.) from the Explorium API in bulk. Requires a table_name and session_id from a prior fetch-entities call. Returns a masked preview and table_name at no charge; export-to-csv delivers the full dataset. Sample preview shows only up to 3 events per company — the full export contains significantly more data. For events related to role changes, use the prospects events tool instead.
- Idempotent
Inputs
event_typesarrayrequired- List of event types to fetch, max 10
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Table name containing business data to get events for
estimate_costboolean- No description.default
true sample_sizenumber- Number of sample results to return in contextdefault
5 timestamp_fromstring- ISO format datetime string or date in format YYYY-MM-DD (defaults to 3 months ago)default
1969-10-01
vibeprospectingmcp_fetch_prospects_eventsRetrieves prospect-related events (role changes, company changes, job anniversaries) from the Explorium API in bulk.WriteFetch Prospects Events
Retrieves prospect-related events (role changes, company changes, job anniversaries) from the Explorium API in bulk. Requires a table_name and session_id from a prior fetch-entities call. Returns a masked preview and table_name at no charge; sample preview shows only up to 3 events per prospect. Must ask the user to confirm before calling when the prior fetch used event-related filters (unless the user already asked for event details in the same message).
- Idempotent
Inputs
event_typesarrayrequired- List of event types to fetch, max 10
session_idstringrequired- Session ID containing the data to process
table_namestringrequired- Table name containing prospect data to get events for
estimate_costboolean- No description.default
true sample_sizenumber- Number of sample results to return in contextdefault
5 timestamp_fromstring- ISO format datetime string or date in format YYYY-MM-DD (defaults to 3 months ago)default
1969-10-01
No tools match.