# Freshsales MCP

> Freshsales gives your AI agent full access to your sales pipeline. Manage leads, track contacts, update accounts, and close deals—all from natural conversation. It lets you create new records, log tasks, schedule appointments, and perform global searches across your entire CRM without ever leaving your chat client.

## Overview
- **Category:** sales-automation
- **Price:** Free
- **Tags:** crm, sales-pipeline, lead-scoring, contact-management, deal-tracking

## Description

Managing a sales funnel usually means jumping between tabs: the lead view, the contact profile, the deal tracker, and the task list. This MCP puts all of that data into one place for your agent to work with. You can tell it what you need—like 'Find me everything on Acme Corp' or 'Log notes about last week’s call.' Your agent will then pull up whatever record you're talking about. If a prospect is ready, you can convert them from an initial lead into a full contact profile and even create the first deal record. It handles setting appointments and logging tasks automatically so nothing falls through the cracks. Vinkius hosts this MCP, giving your agent access to hundreds of other tools when it needs them.

## Tools

### convert_lead
Turns an initial lead into a proper contact record, requiring the last name and company name.

### create_account
Builds a brand new sales account within your CRM system.

### create_appointment
Schedules and logs an appointment against a specific record.

### create_contact
Creates a new individual contact profile in the system.

### create_deal
Registers a brand new sales opportunity or deal for tracking revenue.

### create_lead
Creates a new prospect record, requiring at least a first name or email address.

### create_note
Adds a permanent note to any existing contact, account, or deal record.

### create_task
Sets up a follow-up action item for yourself or a teammate.

### get_account
Retrieves all details for a specific sales account ID.

### get_contact
Pulls up the complete profile of an individual contact by their unique ID.

### get_deal
Fetches all information related to a specific sales deal.

### get_lead
Retrieves the details of an initial lead record by its unique ID.

### list_deal_stages
Fetches a list of all current sales deal stages available in your account.

### list_industry_types
Retrieves the standard list of industries used for classifying accounts.

### list_lead_sources
Lists all sources (e.g., website, trade show) from which leads originated.

### list_leads
Uses filters to list multiple lead records within a defined view or segment.

### list_owners
Pulls a comprehensive list of all users who own accounts or leads in the CRM.

### search_global
Performs a search across multiple record types (accounts, contacts, etc.) using keywords.

### search_lookup
Executes a targeted lookup search for specific fields like emails or phone numbers.

### update_contact
Changes existing details for an individual contact profile.

### update_lead
Modifies the status or details of a lead record that was created earlier.

## Prompt Examples

**Prompt:** 
```
Create a new lead for Sarah Jenkins (sarah.j@example.com) from 'Global Tech'.
```

**Response:** 
```
I've created the lead for Sarah Jenkins at Global Tech. The record has been successfully added to your Freshsales CRM.
```

**Prompt:** 
```
Search for any contact or lead associated with the email 'mike@startup.io'.
```

**Response:** 
```
I found one lead matching that email: Mike Ross (ID: 88293). Would you like to see his full details or log a new task for him?
```

**Prompt:** 
```
List all the leads in my 'New Leads' view (ID: 400123).
```

**Response:** 
```
Fetching leads from view 400123... I've found 12 leads. The most recent ones are 'Alice Cooper' and 'Bob Smith'.
```

## Capabilities

### Find any record in your CRM
Use global search or specific lookups to pull up a lead, contact, account, or deal by name, email, or ID.

### Build out new prospects and accounts
Create brand-new leads from scratch or build out full organization profiles for both contacts and entire companies.

### Track deal progress
Create sales deals, monitor which stage they are in, and list all possible stages to keep your revenue targets on track.

### Keep the follow-up organized
Log specific notes from meetings, set up future tasks, or schedule appointments so you never miss a touchpoint.

### Update and refine data
Change existing contact information or update lead statuses on the fly without needing to open the record manually.

## Use Cases

### I just finished a big meeting and need to update everything.
Instead of opening the client's account, clicking 'Notes,' then typing up the summary, you just tell your agent: 'Log notes about today’s call with Acme Corp.' The agent uses `create_note` and logs it immediately.

### I need to follow up on a prospect I found last week.
You ask the agent, 'What's the status of Sarah Jenkins?' Your agent runs a lookup using `get_lead`, checks the deal progress with `list_deal_stages`, and tells you exactly what the next step should be.

### We just signed a contract; I need to start tracking it.
You tell your agent, 'Create a new $50k deal for Acme Corp.' The agent uses `create_deal`, setting up the record and ensuring it's ready to track toward revenue targets.

### I need contact info for someone who worked at a company I already know.
You ask your agent, 'Find me the phone number for John Smith.' The agent runs a targeted lookup using `search_lookup` and provides the specific data point you needed.

## Benefits

- You track progress instantly. Instead of manually checking deal stages, you can ask the agent to list them or view a specific deal using `get_deal` and get immediate status reports.
- Data entry becomes conversation. When you talk about updating someone's details, your agent handles the API call for you using tools like `update_contact` or `update_lead`, saving clicks and time.
- Never miss a follow-up again. You can have your agent automatically create tasks (`create_task`) or book appointments (`create_appointment`), logging everything against the right record.
- The whole picture is visible. Need to find a client? Instead of opening five different tabs, you use `search_global` and get results for leads, contacts, and accounts all at once.
- Client conversion happens fast. When a lead qualifies, your agent handles the transition using `convert_lead`, moving them into a full contact profile in one step.

## How It Works

The bottom line is, you talk to your AI client like talking to a teammate who already has full access to your sales software.

1. Subscribe to this MCP, then enter your Freshsales Domain and API Key.
2. Connect your preferred AI client (like Cursor or Claude) to Vinkius via the MCP connection settings.
3. Ask your agent a question—like 'Show me all leads for TechCorp'—and it performs the actions in your CRM.

## Frequently Asked Questions

**How do I find all deals associated with one contact using get_deal?**
You don't need to manually search for the deal; just tell your agent, 'Show me all active deals for this contact.' The tool uses `get_deal` to pull up every related opportunity tied to that specific individual.

**Can I update an existing lead record using update_lead?**
Yes. If a lead changes status or you find new information, your agent can use `update_lead`. You just tell it what needs changing—like updating the company name—and it handles the modification.

**What is the difference between create_contact and convert_lead?**
Using `create_contact` builds a brand new person record from scratch. However, if you already have an initial lead, you use `convert_lead` to transition that existing prospect into a full contact profile.

**Do I need get_account to know about the company?**
No. While `get_account` lets you view a specific account's details, if you just need a quick overview of all potential clients, use the `search_global` tool instead.

**When using `create_lead`, what credentials do I need to authenticate?**
You must provide a valid Freshsales API Key and Domain Name. These are required for your AI client to successfully authorize the connection and submit new lead data.

**How can I filter results when calling `list_leads`?**
You use specific query parameters, such as view IDs or status fields, within the call. This lets your agent pull only the records that match precise criteria rather than retrieving the entire dataset.

**What is the operational difference between `create_task` and `create_appointment`?**
A task represents a general to-do item with a deadline, while an appointment requires specific calendar details like start time, end time, and attendees. Use them for different types of follow-up actions.

**What do I use `list_deal_stages` for before creating a deal?**
This tool fetches all the defined stages in your pipeline. You must run this first to get the exact stage names and IDs needed when you call `create_deal`.

**How can I find a lead if I only have their email address?**
You can use the `search_lookup` tool. It allows you to search for records like leads or contacts specifically by fields such as email, ensuring you find the exact record you need.

**Can I convert a lead to a contact directly through the AI?**
Yes! Use the `convert_lead` tool. You will need to provide the Lead ID, and ensure you have the mandatory last name and company name to complete the conversion.

**How do I see what stages are available for my sales deals?**
Simply use the `list_deal_stages` tool. It will retrieve all the configured pipeline stages from your Freshsales account so you can categorize your deals correctly.