leadmarina
What this MCP does
Finds and enriches local-business sales leads, verifies contact details, queries a lead library, and exports or schedules recurring searches to CRM, spreadsheet, or file destinations.
Tools
Input schema
{'type': 'object', 'required': ['keyword', 'cities', 'cadence'], 'properties': {'cities': {'type': 'array', 'items': {'type': 'string'}, 'description': "Cities to search, e.g. ['Austin, TX'] (max 25)."}, 'cadence': {'enum': ['once', 'daily', 'weekly', 'monthly', 'yearly'], 'type': 'string', 'description': 'How often it repeats.'}, 'keyword': {'type': 'string', 'description': "The niche to search, e.g. 'roofing contractor'."}, 'start_at': {'type': 'string', 'description': 'ISO timestamp for the first run. Defaults to now (runs on the next tick, within 15 min).'}, 'destination': {'enum': ['none', 'close', 'ghl', 'google_sheets', 'csv', 'xlsx', 'json'], 'type': 'string', 'description': "Where each run's leads go. 'none' just saves them to the library."}, 'spreadsheet_id': {'type': 'string', 'description': 'google_sheets only: append to this existing LeadMarina-created sheet.'}}}
Output schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}, 'note': {'type': 'string'}, 'cities': {'type': 'array', 'items': {'type': 'string'}}, 'cadence': {'type': 'string'}, 'keyword': {'type': 'string'}, 'destination': {'type': 'string'}, 'next_run_at': {'type': ['string', 'null']}}}
Input schema
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'The automation id from list_automations.'}}}
Output schema
{'type': 'object', 'required': ['id', 'deleted'], 'properties': {'id': {'type': 'string'}, 'note': {'type': 'string'}, 'deleted': {'type': 'boolean'}}}
Input schema
{'type': 'object', 'required': ['domains'], 'properties': {'domains': {'type': 'array', 'items': {'type': 'string'}, 'description': "Business domains, e.g. ['acme.com'] (max 10)."}}}
Output schema
{'type': 'object', 'required': ['search_id', 'enriching', 'enrichment'], 'properties': {'enriching': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Domains accepted (balance-capped).'}, 'next_step': {'type': 'string'}, 'search_id': {'type': 'string'}, 'enrichment': {'type': 'string'}}}
Input schema
{'type': 'object', 'required': ['destination'], 'properties': {'all': {'type': 'boolean', 'description': 'Export the whole library instead of one search.'}, 'filters': {'type': 'array', 'items': {'type': 'object'}, 'description': 'With all=true: narrow the library using query_leads-style filter rows.'}, 'search_id': {'type': 'string', 'description': "Export this search's leads."}, 'destination': {'enum': ['close', 'ghl', 'google_sheets', 'csv', 'xlsx', 'json'], 'type': 'string', 'description': 'Where the leads go.'}, 'spreadsheet_id': {'type': 'string', 'description': 'google_sheets only: add to this existing LeadMarina-created sheet instead of a new one.'}}}
Output schema
{'type': 'object', 'required': ['exported', 'outcome'], 'properties': {'file': {'type': 'string', 'description': 'File exports only: the file name.'}, 'note': {'type': 'string'}, 'limit': {'type': 'number', 'description': 'The per-call limit that applied, when truncated.'}, 'outcome': {'type': 'string', 'description': 'Human-readable result, e.g. added/updated counts.'}, 'warning': {'type': 'string', 'description': 'Present when truncated: what happened and how to get the rest.'}, 'exported': {'type': 'number', 'description': 'Leads sent to the destination.'}, 'truncated': {'type': 'boolean', 'description': "True when more leads matched than this destination's limit — the export was PARTIAL."}, 'download_url': {'type': 'string', 'description': 'File exports only: 7-day download link.'}}}
Input schema
{'type': 'object', 'properties': {}}
Output schema
{'type': 'object', 'required': ['leads_remaining', 'plan'], 'properties': {'note': {'type': 'string'}, 'plan': {'type': 'string'}, 'period_used': {'type': 'number'}, 'period_limit': {'type': 'number'}, 'leads_remaining': {'type': 'number'}, 'period_resets_at': {'type': ['string', 'null']}}}
Input schema
{'type': 'object', 'required': ['search_id'], 'properties': {'limit': {'type': 'number', 'description': 'Max leads to return (default 25, max 1000).'}, 'offset': {'type': 'number', 'description': 'Pagination offset (default 0).'}, 'search_id': {'type': 'string', 'description': 'The search_id returned by search_leads or enrich_domains.'}}}
Output schema
{'type': 'object', 'required': ['search_id', 'enrichment', 'total_leads', 'results'], 'properties': {'query': {'type': ['string', 'null']}, 'stage': {'type': 'string', 'description': "queued | discovering | enriching | verifying | complete | failed | cancelled. 'verifying' means every row is delivered and contacts are being verified — often the longest phase, not a stall."}, 'period': {'type': ['object', 'null'], 'description': 'On a rate-limited plan: { limit, used, resets_at }. Null on a metered plan.'}, 'results': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': ['string', 'null']}, 'name': {'type': ['string', 'null']}, 'state': {'type': ['string', 'null']}, 'rating': {'type': ['number', 'null']}, 'reviews': {'type': ['number', 'null']}, 'socials': {'description': 'Social profile links keyed by platform.'}, 'website': {'type': ['string', 'null']}, 'category': {'type': ['string', 'null']}, 'owner_name': {'type': ['string', 'null']}, 'emails_data': {'description': 'Verified emails with SMTP status.'}, 'phones_data': {'description': 'Verified phones with line type + carrier.'}, 'enrichment_status': {'type': ['string', 'null']}}}}, 'showing': {'type': 'string', 'description': "Range shown, e.g. '1–25'."}, 'location': {'type': ['string', 'null']}, 'progress': {'type': ['object', 'null'], 'description': '{ done, total } rows enriched so far.'}, 'search_id': {'type': 'string'}, 'enrichment': {'type': 'string', 'description': "'pending' or 'complete'."}, 'next_offset': {'type': ['number', 'null'], 'description': 'Pass as offset to fetch the next page; null on the last page.'}, 'total_leads': {'type': 'number'}, 'queue_position': {'type': ['number', 'null'], 'description': "For queued searches, the place in this account's own queue (1 = next)."}, 'leads_remaining': {'type': ['number', 'null'], 'description': 'Leads spendable now. On a plan with no monthly quota this is what is left in the current 7-day period, not a monthly balance.'}}}
Input schema
{'type': 'object', 'properties': {}}
Output schema
{'type': 'object', 'required': ['count', 'automations'], 'properties': {'count': {'type': 'number'}, 'automations': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'active': {'type': 'boolean'}, 'cities': {'type': 'array', 'items': {'type': 'string'}}, 'cadence': {'type': 'string'}, 'keyword': {'type': 'string'}, 'destination': {'type': 'string'}, 'last_run_at': {'type': ['string', 'null']}, 'last_status': {'type': ['string', 'null']}, 'next_run_at': {'type': ['string', 'null']}}}}}}
Input schema
{'type': 'object', 'properties': {}}
Output schema
{'type': 'object', 'required': ['integrations'], 'properties': {'integrations': {'type': 'array', 'items': {'type': 'object', 'properties': {'note': {'type': 'string'}, 'ready': {'type': 'boolean', 'description': 'Connected AND usable as an export destination right now.'}, 'provider': {'type': 'string'}, 'connected': {'type': 'boolean'}}}}}}
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Max searches (default 10, max 25).'}}}
Output schema
{'type': 'object', 'required': ['searches'], 'properties': {'searches': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'keyword': {'type': ['string', 'null']}, 'created_at': {'type': ['string', 'null']}, 'result_count': {'type': ['number', 'null']}, 'location_name': {'type': ['string', 'null']}}}}}}
Input schema
{'type': 'object', 'properties': {}}
Output schema
{'type': 'object', 'required': ['count', 'views'], 'properties': {'count': {'type': 'number'}, 'views': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'filters': {'type': 'array', 'items': {'type': 'object'}, 'description': 'Pass straight to query_leads or export_leads.'}}}}}}
Input schema
{'type': 'object', 'properties': {'sort': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}, 'dir': {'enum': [1, -1], 'type': 'number'}}}, 'description': "Sort keys, e.g. [{id:'reviews',dir:-1}]. Optional."}, 'limit': {'type': 'number', 'description': 'Max leads to return (default 25, max 1000).'}, 'cursor': {'type': 'string', 'description': 'Opaque pagination cursor from a previous call.'}, 'filters': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'operator'], 'properties': {'conj': {'enum': ['and', 'or'], 'type': 'string'}, 'field': {'type': 'string'}, 'value': {'type': 'string'}, 'operator': {'type': 'string'}}}, 'description': 'Filter conditions (optional — omit for everything, newest data first).'}}}
Output schema
{'type': 'object', 'required': ['returned', 'results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'properties': {'city': {'type': ['string', 'null']}, 'name': {'type': ['string', 'null']}, 'state': {'type': ['string', 'null']}, 'rating': {'type': ['number', 'null']}, 'reviews': {'type': ['number', 'null']}, 'socials': {'description': 'Social profile links keyed by platform.'}, 'website': {'type': ['string', 'null']}, 'category': {'type': ['string', 'null']}, 'owner_name': {'type': ['string', 'null']}, 'emails_data': {'description': 'Verified emails with SMTP status.'}, 'phones_data': {'description': 'Verified phones with line type + carrier.'}, 'enrichment_status': {'type': ['string', 'null']}}}}, 'returned': {'type': 'number'}, 'next_cursor': {'type': ['string', 'null'], 'description': "Pass back as 'cursor' for the next page."}, 'total_matching': {'type': ['number', 'null'], 'description': 'Exact match count (first page only; absent on later pages).'}}}
Input schema
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': "Business niche/category keyword, e.g. 'electrician'."}, 'location': {'type': 'string', 'description': "City, e.g. 'Austin, TX'. Ignored if location_code is given."}, 'location_code': {'type': 'number', 'description': 'Optional exact location code (skips the city lookup).'}}}
Output schema
{'type': 'object', 'required': ['search_id', 'query', 'delivered_so_far', 'enrichment'], 'properties': {'query': {'type': 'string'}, 'location': {'type': ['string', 'null']}, 'next_step': {'type': 'string'}, 'search_id': {'type': 'string'}, 'enrichment': {'type': 'string', 'description': "'pending' until background verification finishes."}, 'leads_remaining': {'type': 'number', 'description': 'Leads spendable now. On a plan with no monthly quota this is what is left in the current 7-day period.'}, 'delivered_so_far': {'type': 'number'}}}
Input schema
{'type': 'object', 'required': ['id', 'active'], 'properties': {'id': {'type': 'string', 'description': 'The automation id from list_automations.'}, 'active': {'type': 'boolean', 'description': 'false to pause, true to resume.'}}}
Output schema
{'type': 'object', 'required': ['id', 'active'], 'properties': {'id': {'type': 'string'}, 'note': {'type': 'string'}, 'active': {'type': 'boolean'}}}
Recent tool changes
Similar MCP servers
neuron
Operates AI chatbots and messaging workflows across WhatsApp and social channels, including contacts, campaigns, conversations, p…
Meta Council
Provides governed workflows for consulting, outreach, sales deals, invoices, marketing campaigns, content approvals, accounting a…
Rahul D Sarker: Marketing & RevOps Tools
Provides marketing, revenue operations, sales, advertising, SaaS, and conversion calculators, along with article search and consu…
Emailchaser
Manages cold-email campaigns, leads, sender mailboxes, sequences, outreach automation, deliverability, prospect sourcing, webhook…
LinkedIn MCP Server (Salesbot)
Supports LinkedIn lead discovery, contact enrichment, CRM pipelines, campaign sequencing, message approval and human-reviewed out…
send16-mcp
Provides email marketing and transactional messaging tools for contacts, audiences, campaigns, templates, automations, analytics,…
GrowthKit Revenue Intelligence
Supports B2B revenue operations with lead campaigns, ICP and company enrichment, CRM records and activities, outreach drafting, t…
Nevent MCP
Enables management and analysis of live-event marketing campaigns, audiences, email and messaging templates, paid ads, tracking l…