# Twenty CRM MCP

> Twenty CRM MCP lets you manage your entire sales pipeline and contact database directly through conversation. List people, track companies, find opportunities, and perform full CRUD operations on all records without leaving your chat client.

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

## Description

You don't have to log into Twenty CRM and click through endless tabs just to update a single lead status or pull up company history. This MCP connects your favorite AI agent directly to your core sales data. You can ask it things like, 'Show me all contacts from the Northeast region who haven't had an opportunity in 90 days,' and it delivers a clean list of people and companies. Need to update something? It handles creating new records or modifying existing ones—whether you need to set up a whole new company or just add a quick note to an account. All your contact, deal, and pipeline management is handled through natural language prompts. This connection is hosted on Vinkius, giving any MCP-compatible client access to all these key sales records.

## Tools

### create_company
Creates a brand new company entry within Twenty CRM.

### create_note
Adds a fresh, documented note to an account or contact record.

### create_opportunity
Generates and saves a new potential sales deal in your pipeline.

### create_person
Adds a brand new individual contact to the CRM.

### create_task
Schedules and records an actionable task for yourself or a team member.

### delete_company
Removes an existing company record from the system.

### delete_note
Permanently deletes a specific note entry.

### delete_opportunity
Deletes a sales opportunity that is no longer relevant to the business.

### delete_person
Removes an individual person record from your contacts.

### delete_task
Clears out a specific task entry from the task list.

### get_company
Retrieves all details for a single company using its unique ID.

### get_note
Fetches the content of an existing note by providing its unique identifier.

### get_opportunity
Pulls up all current details and status for a specific sales opportunity.

### get_person
Retrieves the full profile, history, and contact information for any individual person.

### get_task
Shows all details about a specific task, including due dates and assignments.

### list_companies
Gets a comprehensive list of every company currently tracked in Twenty CRM.

### list_notes
Retrieves a paginated list of all saved notes across your accounts.

### list_opportunities
Generates a full list of all active and closed sales opportunities in the pipeline.

### list_people
Provides an exhaustive list of every contact person associated with your accounts.

### list_tasks
Lists all outstanding and completed tasks across the team.

### update_company
Modifies the details of an existing company, like changing its address or industry.

### update_note
Edits the content of a specific note without deleting it entirely.

### update_opportunity
Changes the status, value, or associated company of an existing deal.

### update_person
Corrects or adds new information to a person's profile, like changing their job title.

### update_task
Adjusts the status or due date of an existing task entry.

## Prompt Examples

**Prompt:** 
```
List all people in my Twenty CRM.
```

**Response:** 
```
I've retrieved the list of people. You have 15 contacts, including 'John Doe' (ID: 1) and 'Jane Smith' (ID: 2). Would you like to see details for a specific person?
```

**Prompt:** 
```
Create a new company named 'Global Tech Solutions'.
```

**Response:** 
```
Success! I've created 'Global Tech Solutions' in your CRM with ID 582. You can now associate people or opportunities with this company.
```

**Prompt:** 
```
Get the details for opportunity ID 101.
```

**Response:** 
```
I found opportunity 101: 'Enterprise License Expansion'. It is currently in the 'Negotiation' stage with an estimated value of $50,000.
```

## Capabilities

### List contacts and accounts
Retrieve comprehensive lists of people, companies, opportunities, notes, and tasks within your CRM.

### Create new records
Build out the sales cycle by generating entirely new entries for people, companies, deals, or actionable tasks.

### Update existing data
Modify any piece of saved information—like changing a deal's stage or updating contact details—with a simple command.

### Retrieve specific records
Instantly pull up the full profile, history, and metadata for any single person, company, opportunity, or note using its unique ID.

### Clean up old data
Remove outdated accounts or opportunities when they are no longer relevant to your business process.

## Use Cases

### The account manager needs immediate client context.
An Account Manager is on a call and the client mentions an old project. Instead of scrambling to find records, they ask their agent: 'Get the person details for John Doe at Acme Corp.' The agent uses `get_person` immediately, retrieving all relevant history and contact info in seconds.

### Closing a deal and updating the pipeline.
A Sales Executive just wrapped up negotiations. They tell their agent: 'Update the opportunity for Global Tech Solutions.' The agent uses `update_opportunity` to change the stage to 'Closed Won' and then automatically links it to the correct company record using `get_company`.

### Cleaning up outdated records.
The Sales Manager notices three accounts that haven't been touched in months. They tell their agent: 'List all companies that have no activity.' The manager reviews the list and uses `delete_company` to prune stale data, keeping the CRM clean.

### Drafting proposals and tracking next steps.
A user is drafting a proposal in their IDE. They prompt the agent: 'Create a task for Jane Smith to review this document.' The agent uses `create_task` immediately, ensuring the action item is logged directly against the correct person.

## Benefits

- Stop context switching. Instead of opening the Twenty CRM web app, you simply ask your agent to 'List all people' or 'Get a specific company by ID,' and the data appears instantly in our chat window.
- Maintain pristine data hygiene. You can perform full CRUD operations—creating new entries like `create_person` or deleting old records with `delete_company`—all through conversational commands, keeping your database clean.
- Track deals without effort. Need to know where the pipeline stands? Ask the agent to 'List opportunities,' and it gives you a comprehensive view of deal progress at a glance. You can even use `update_opportunity` if a deal stage changes.
- Deep client context during calls. During a sales call, you don't need to take notes; just ask your agent for a person's history or related company metadata using the specific ID.
- Full control over activities. You can manage the entire activity record—from creating tasks (`create_task`) to logging detailed notes (`create_note`)—without ever leaving your primary workflow.

## How It Works

The bottom line is that your AI client treats the Twenty CRM data like a built-in source of truth, letting you interact with it using only plain English conversation.

1. Subscribe to this MCP and enter your Twenty API Key and Base URL.
2. Connect your preferred AI client (Claude, Cursor, etc.) to the Vinkius catalog.
3. Start by asking your agent what you need—for example, 'List all people who work at Acme Corp.' — and it runs the necessary commands.

## Frequently Asked Questions

**How do I list all contacts using the Twenty CRM MCP?**
You use the `list_people` tool. This command retrieves an exhaustive list of every person associated with your accounts, letting you see who needs follow-up.

**Can I update a company's details using the Twenty CRM MCP?**
Yes, you use `update_company`. You just provide the ID and the new information (like a revised address), and the agent makes sure the change sticks.

**What if I want to delete an old opportunity?**
Use the `delete_opportunity` tool. The agent will remove the deal from your pipeline, keeping your records clean of irrelevant information.

**Does the Twenty CRM MCP support creating new notes?**
Yes, you use `create_note`. You simply tell it what the note is about and which contact or company it belongs to.

**Is listing opportunities difficult with this MCP?**
No. By asking the agent to list opportunities, it uses `list_opportunities` to show you an immediate overview of your entire sales pipeline status.