# ProspectX MCP

> ProspectX finds and verifies B2B prospect data for real estate investors. Connect your AI client to access property owner contact info, filter distressed properties, and run instant skip traces. Build targeted outreach lists without manually juggling multiple databases.

## Overview
- **Category:** real-estate
- **Price:** Free
- **Tags:** skip-tracing, property-data, direct-mail, b2b-prospecting, crm-enrichment, outreach-lists

## Description

Connect your AI client to ProspectX to instantly access property owner data, manage leads, and run advanced searches without jumping between databases. You’ll build targeted lists and get contact info on the fly.

### Property Search and Data Retrieval
Using `search_properties`, your agent scans the entire database, letting you find properties using multiple criteria like specific address ranges or zip codes. To narrow things down, you can call `list_properties_by_type` to filter results by physical structure—like single-family homes or multi-unit complexes. You'll get a raw rundown of everything available with `list_properties`, and if you need to manage groups, you can use `create_property_list` then pull the contents of that group with `get_property_list`. To check out all the property groupings you’ve saved, run `list_property_lists`. For any specific address or ID, `get_property` pulls every data point known about that single listing. You can also use `list_leads_by_status` to filter and show only leads marked 'hot,' 'cold,' or 'contacted'.

### Finding Owner Contact Info
When you run `skip_trace`, the tool hits a property record and discovers private owner contact info, providing phone numbers and email addresses. This function is key for direct outreach.

### Lead Management
To start tracking someone, use `create_lead` to build a new lead record where you can log initial contact information. You'll see all records using `list_leads`, or focus on specific groups with `list_leads_by_status`. If you need the full history and current status of one person, run `get_lead`. When you change a lead’s status or drop new notes into an existing record, you call `update_lead`. To get a complete overview of your account's performance metrics, pull a quick summary with `get_dashboard`; for a detailed list of all marketing campaigns, use `list_campaigns`, and drill down on one specific effort using `get_campaign`.

### Detailed Functionality Breakdown
Your agent can check the live connection health between your client and ProspectX by running `check_prospectx_status`. For property data, you can pull a list of all available types with `list_properties_by_type`, or get full details for any saved group using `get_property_list`. If you need to check the operational status of an old campaign, you'll use `get_campaign` again. You’ve got everything needed to build out a complete outreach cycle—from finding the address to getting the owner’s email and tracking their response.

## Tools

### check_prospectx_status
Verifies the live connection status between your AI client and ProspectX.

### create_lead
Creates a new lead record in the system, allowing you to log initial contact information.

### create_property_list
Generates a new, organized list specifically for grouping properties of interest.

### get_campaign
Retrieves the full details and performance metrics for an existing marketing campaign.

### get_dashboard
Pulls a summary view of your account's main metrics, providing a quick operational overview.

### get_lead
Fetches specific details for one lead, including their current status and history.

### get_property_list
Pulls the complete details and contents of a specific, saved property list.

### get_property
Retrieves all known data points for a single property address or ID.

### list_campaigns
Lists all active or past marketing campaigns associated with your account.

### list_leads_by_status
Filters and displays leads based on their current status (e.g., 'hot,' 'cold,' or 'contacted').

### list_leads
Shows a comprehensive listing of every lead record in the system.

### list_properties_by_type
Filters and lists properties based on their physical type (e.g., single-family home, multi-unit).

### list_properties
Retrieves a raw list of all properties in the database.

### list_property_lists
Retrieves a list of all property groups you've created.

### search_properties
Searches the entire database for properties using multiple criteria like address range or zip code.

### skip_trace
Runs a skip trace on a property to discover private owner contact information (phone, email).

### update_lead
Changes the status or adds new notes/data points to an existing lead record.

## Prompt Examples

**Prompt:** 
```
Run a skip trace on the property at 123 Main Street to find the owner's contact info
```

**Response:** 
```
Skip trace complete. The owner of 123 Main Street is John Doe. Primary phone: (555) 123-4567. Email: john@example.com.
```

**Prompt:** 
```
Find all vacant properties in the database for a targeted mailing campaign
```

**Response:** 
```
I found 42 vacant properties matching your criteria. Would you like me to add them to your 'Q3 Direct Mail' campaign?
```

**Prompt:** 
```
Show all hot leads that are ready for follow-up in ProspectX
```

**Response:** 
```
You have 5 hot leads ready for follow-up today. Sarah Connor requested a call back at 2 PM. Should I list the others?
```

## Capabilities

### Search and Filter Property Data
The agent finds properties by address, vacancy status, or specific property type using the `search_properties` tool.

### Verify Owner Contact Information
You run instant skip tracing on a property to retrieve owner phone numbers and email addresses via the `skip_trace` tool.

### Manage Lead Records
The agent creates new leads using `create_lead`, retrieves existing details with `get_lead`, or updates status records with `update_lead`.

### Build and Track Campaigns
You list campaigns to see what's running (`list_campaigns`) or get detailed information about a specific campaign using `get_campaign`.

## Use Cases

### The Cold Lead Follow-Up
A wholesaler finds an old property address. Instead of manually calling 10 different services, they ask their agent to run `skip_trace` on the address. The server returns the owner's name and direct mobile number instantly. They then use `create_lead` to log it for follow-up.

### Building a Vacancy Mailing List
An acquisitions team needs 50 vacant units in one zip code. They run `search_properties` and filter by 'Vacancy Status.' The agent then uses `create_property_list` to capture the results, which are ready for direct mailing campaign setup.

### Monitoring Campaign Performance
A marketing specialist runs a quarterly mailer. They use `get_campaign` to pull the full report showing delivery rates and responses. If they see low engagement in one area, they use `list_leads_by_status` to target only the 'cold' leads for a different campaign.

### Quick Property Validation
A user finds a property via an external source. They need to verify if it was already logged or if any owner data exists. They simply ask the agent to run `get_property` on the address, getting all known details immediately.

## Benefits

- **Targeted Outreach:** Instead of guessing who owns a property, use `skip_trace` to pull verifiable phone numbers and emails directly for immediate list building. 

**Data Organization:** Never lose track of potential deals again. Use `create_property_list` to group properties by criteria (like 'distressed' or 'vacant') so your agent can keep them separate from general searches.
- **Workflow Efficiency:** Skip the manual data entry loop. The agent handles everything: it runs `search_properties`, pulls results, and then calls `skip_trace` on each one, updating a new list—all in one go.
- **Lead Nurturing:** When a property is found, you don't just stop there. Use `create_lead` to log the contact info, and later use `list_leads_by_status` to track which ones are ready for follow-up calls.
- **Campaign Tracking:** You can manage your marketing efforts entirely within the server. Run a campaign (`get_campaign`), check its performance metrics, and then refine your list using `update_lead` based on response rates.
- **Comprehensive Search:** Don't just search by address. Use `list_properties_by_type` to filter for specific assets (e.g., multi-unit buildings) before you even start building a campaign list.

## How It Works

The bottom line is that you talk to your AI client like talking to an expert assistant; it does the API calls for lead enrichment, property searching, and campaign tracking.

1. Sign in to your ProspectX account and generate the developer API key.
2. Connect Vinkius to your AI client, granting it access via the MCP Server.
3. Instruct your agent: 'Find all vacant properties near zip code 90210 and run a skip trace on the top three.' The server executes these calls automatically.

## Frequently Asked Questions

**How do I find owners' contact info using skip_trace?**
You run `skip_trace` on a specific property address. The server returns the owner’s name, primary phone number, and email if available.

**Can I filter leads by status using list_leads_by_status?**
Yes. You use `list_leads_by_status` to pull a filtered list of contacts, making it easy to see only the 'hot' or 'cold' leads for follow-up.

**What is the difference between search_properties and get_property?**
`search_properties` looks across many criteria (zip code, type, vacancy) to find a set of results. `get_property` pulls all known data points for one specific property ID or address.

**How do I update an old lead record? Do I use update_lead?**
Yes, you call the `update_lead` tool and provide the existing lead's identifier. You can then overwrite notes or change their status to 'contacted.'

**Do I need create_property_list before running a campaign?**
It’s best practice. Use `create_property_list` first to group the target properties, and then use that list in your campaign workflow for better tracking.

**When I use create_property_list, what data schema does the resulting list have?**
The system generates a unique property list ID and returns a structured JSON payload defining all included fields. Use get_property_list to pull records that confirm which specific attributes were captured for each entry.

**If I run check_prospectx_status and receive an error, what does that mean?**
An error means the agent cannot connect or authenticate with ProspectX. First, double-check your API key credentials in Vinkius settings. If they're correct, try verifying your network path or checking for corporate firewall blocks.

**How do I get a comprehensive view of all available properties using list_properties?**
list_properties retrieves the master index of records. Be aware this function often uses pagination; you might need to make multiple calls or refine your search using list_properties_by_type for better control.

**What is skip tracing?**
Skip tracing finds the current phone number, email, and mailing address for property owners, enabling direct outreach to motivated sellers.

**Can I search by property type?**
Yes, filter properties by type (residential, commercial, vacant, multi-family) to build targeted mailing lists for specific investment strategies.

**How are campaigns tracked?**
View campaign status, delivery metrics, and response rates for all direct mail campaigns, with a centralized dashboard showing overall lead generation performance.