For AI agents — MCPBundles Directory API
For MCP client apps (human connect):
MCP connect URL: https://mcp.mcpbundles.com/bundle/freshsales
Skill page: https://www.mcpbundles.com/skills/freshsales
Tools: 45
Live probe refreshed Nov 6, 2026 · Endpoint host mcp.mcpbundles.com
AI Skill
SKILL.md
Domain knowledge for Freshsales — workflow patterns, data models, and gotchas for your AI agent.
Freshsales
Freshsales is a CRM by Freshworks. It manages contacts, accounts (companies), deals (opportunities), tasks, notes, appointments, and sales activities.
Data Model
Contacts — people you interact with. Have email, phone, lead_score, lifecycle_stage, and custom fields. Full CRUD + upsert.
Accounts (sales_accounts) — companies. Contacts are associated to accounts. Full CRUD + upsert.
Deals — sales opportunities in pipeline stages. Linked to accounts and contacts. Full CRUD + upsert.
Tasks — to-do items assigned to users, linked to contacts/accounts/deals. Full CRUD. Set status=1 to mark done.
Notes — free-text annotations on contacts, accounts, or deals. Create, update, delete.
Appointments — scheduled meetings with attendees and time zones. Full CRUD. Filters: upcoming, past, overdue.
Sales Activities — logged activities (calls, emails, custom types) on contacts/accounts/deals. Full CRUD.
Typical workflow
First steps (always do these first)
Resolve filters — obtain view IDs for contacts, deals, or accounts only. Required before listing those types. Tasks and appointments skip this step.
Resolve fields — field definitions and custom field names for any entity type.
Reading data
Every contact/deal/account listing needs a view_id from the filters step.
Use include to embed related data (owner, tasks, notes, deals, sales_account, etc.).
Search — fuzzy text across contacts, accounts, deals.
Lookup — exact-match on a field (e.g., contact by exact email).
Contact timeline — activity stream for one contact (calls, emails, notes, tasks).
Writing data
Create: send the full payload for the entity type; optional fields follow the schema defaults.
Update: send only fields you are changing.
Upsert: idempotent create-or-update — pass unique_identifier to match (e.g. {"emails": "jane@co.com"} for contacts, {"name": "Acme"} for accounts/deals).
Clone: duplicate a contact, deal, or account with all fields copied.
Delete: permanent — cannot be undone.
Key Patterns
Views (filters): Listing contacts, deals, or accounts requires a view_id from the filters tool (contacts/deals/accounts only). There is no /tasks/filters API — list tasks with filter=open|due_today|due_tomorrow|overdue|completed.
Embeds: Many reads accept include to pull related data (owner, tasks, notes, deals, sales_account, etc.) in one round trip.
Pagination: Collection responses are paginated (25 per page default). Use page=2 for subsequent pages.
Custom fields: Access via custom_field hash in request/response bodies. Internal names are prefixed with cf_.
Search vs Lookup: Search does fuzzy text matching. Lookup does exact field matching (e.g., exact email). Use lookup when you know the exact value.
Contact timeline: the activity feed returns all interactions (calls, emails, notes, tasks) for a contact in chronological order.
Gotchas
View ID required for lists: You cannot list all contacts/deals/accounts without a view_id. Resolve filters first to obtain view IDs. Do not pass tasks to the filters tool — it 404s upstream.
Account field naming: Accounts use sales_account (singular) and sales_accounts (plural) in responses and paths—not just account.
Upsert unique_identifier: Upsert flows need a unique_identifier object to match existing records. For contacts, use emails (plural), NOT email. For accounts/deals, use name or id.
Lookup requires exact match: Partial strings return no results. 'janesample' won't match 'janesampleton@gmail.com'.
Task status: 0 = open, 1 = completed. Update a task with status=1 to mark done.
Notes: Typically loaded together with a contact, account, or deal—not as a standalone global list.
Appointments attendees: Pass as array of {"email": "...", "name": "..."} objects in create/update.
Clone creates a new ID: Cloned records get new IDs. All fields are copied except unique identifiers.
MCPBundles publishes this directory for MCP discovery. Except where we host or operate an offering, third-party services run under their own terms. Product and company names on this page are used in a descriptive, identifying way (including under nominative fair use where applicable); they remain the property of their owners. Nothing here grants you rights in those marks, and nothing here is an offer to sell a third party's services. Terms
Freshsales
Add to your AI client, then sign in once when you connect.
Freshsales is a CRM by Freshworks for managing contacts, accounts, deals, tasks, appointments, and sales activities. Automate your sales pipeline with lead scoring, built-in phone/email, and visual deal pipelines.
This listing identifies a third-party integration. MCPBundles is not affiliated with, sponsored by, or endorsed by the service or its operator unless stated on this page.
Freshsales Clone Account — Clone an existing Freshsales account, creating a duplicate with all fields copied.
Freshsales Clone Contact — Clone an existing Freshsales contact, creating a duplicate with all fields copied.
Freshsales Clone Deal — Clone an existing Freshsales deal, creating a duplicate with all fields copied.
Freshsales Create Account — Create a new account (company) in Freshsales. Name is required. Returns the created account with its ID.
Freshsales Create Activity — Log a sales activity (call, email, meeting, custom) in Freshsales. Title, start_date, and end_date are required. Link to a contact, account, or deal.
Freshsales Create Appointment — Create an appointment/meeting in Freshsales. Title, from_date, and end_date are required. Optionally link to a contact, account, or deal and add attendees.
Freshsales Create Contact — Create a new contact in Freshsales. At minimum provide first_name or email. Returns the created contact with its ID. Supports custom fields via the custom_field parameter (keys prefixed with cf_).
Freshsales Create Deal — Create a new deal in Freshsales. Name is required. Returns the created deal. Associate with contacts and accounts, set pipeline stage and expected close date.
Freshsales Create Note — Create a note on a Freshsales contact, account, or deal. Notes support HTML content. Returns the created note with its ID.
Freshsales Create Task — Create a new task in Freshsales. Title and due_date are required. Optionally link to a contact, account, or deal. Returns the created task.
Frequently Asked Questions
What is the Freshsales MCP server?
Freshsales is a CRM by Freshworks for managing contacts, accounts, deals, tasks, appointments, and sales activities. Automate your sales pipeline with lead scoring, built-in phone/email, and visual deal pipelines. It provides 45 tools that AI agents can use through the Model Context Protocol (MCP).
How do I connect Freshsales to my AI agent?
Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/freshsales. Authentication is handled automatically.
Freshsales Delete Account — Permanently delete a Freshsales account (company). This cannot be undone.
Freshsales Delete Activity — Permanently delete a Freshsales sales activity.
Freshsales Delete Appointment — Permanently delete a Freshsales appointment.
Freshsales Delete Contact — Permanently delete a Freshsales contact. This cannot be undone.
Freshsales Delete Deal — Permanently delete a Freshsales deal. This cannot be undone.
Freshsales Delete Note — Permanently delete a Freshsales note.
Freshsales Delete Task — Permanently delete a Freshsales task.
Freshsales Get Account — Get a single Freshsales account (company) by ID with optional embedded related data. Returns full account details including contacts, deals, and custom fields.
Freshsales Get Activity — Get a single Freshsales sales activity by ID with optional embedded related data.
Freshsales Get Appointment — Get a single Freshsales appointment by ID with optional embedded related data.
Freshsales Get Contact — Get a single Freshsales contact by ID with optional embedded related data. Returns full contact details including custom fields. Use 'include' to embed owner, deals, notes, tasks, appointments, and sales accounts.
Freshsales Get Deal — Get a single Freshsales deal by ID with optional embedded related data. Returns full deal details including amount, stage, pipeline, and custom fields.
Freshsales Get Selectors — Get configuration picklist values from Freshsales. Returns available options for fields like owners (sales reps), deal stages, lead sources, territories, lifecycle stages, currencies, and more. Use these values when creating or updating records to set valid field values.
Freshsales Get Task — Get a single Freshsales task by ID with optional embedded related data.
Freshsales List Accounts — List accounts (companies) from a Freshsales view. Requires a view_id — resolve account views first. Paginated.
Showing the first 25 tools — full list and schemas: Directory API.
How many tools does Freshsales provide?
Freshsales provides 45 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.
What authentication does Freshsales require?
Freshsales uses API Key. Freshsales requires credentials. Connect via MCPBundles and authentication is handled automatically.
MCPBundles is an independent platform built on the open Model Context Protocol standard. MCPBundles is not affiliated with, sponsored by, or endorsed by Anthropic PBC.
More in customer relation
Other MCP servers in this category from the directory index