How to integrate Pipedrive MCP with Pydantic AI

This guide walks you through connecting Pipedrive to Pydantic AI using the Composio tool router. By the end, you'll have a working Pipedrive agent that can add a new deal for acme corp, log a sales call with follow-up, create a lead labeled 'high priority' through natural language commands. This guide will help you understand how to give your Pydantic AI agent real control over a Pipedrive account through Composio's Pipedrive MCP server. Before we dive in, let's take a quick look at the key ideas and tools involved.

Pipedrive logoPipedrive
Oauth2Api Key

Pipedrive is a sales management platform offering pipeline visualization, lead tracking, and workflow automation. It helps sales teams keep deals moving forward efficiently and never miss a follow-up.

398 Tools3 Triggers

Introduction

This guide walks you through connecting Pipedrive to Pydantic AI using the Composio tool router. By the end, you'll have a working Pipedrive agent that can add a new deal for acme corp, log a sales call with follow-up, create a lead labeled 'high priority' through natural language commands.

This guide will help you understand how to give your Pydantic AI agent real control over a Pipedrive account through Composio's Pipedrive MCP server.

Before we dive in, let's take a quick look at the key ideas and tools involved.

Also integrate Pipedrive with

TL;DR

Here's what you'll learn:
  • How to set up your Composio API key and User ID
  • How to create a Composio Tool Router session for Pipedrive
  • How to attach an MCP Server to a Pydantic AI agent
  • How to stream responses and maintain chat history
  • How to build a simple REPL-style chat interface to test your Pipedrive workflows

What is Pydantic AI?

Pydantic AI is a Python framework for building AI agents with strong typing and validation. It leverages Pydantic's data validation capabilities to create robust, type-safe AI applications.

Key features include:

  • Type Safety: Built on Pydantic for automatic data validation
  • MCP Support: Native support for Model Context Protocol servers
  • Streaming: Built-in support for streaming responses
  • Async First: Designed for async/await patterns

What is the Pipedrive MCP server, and what's possible with it?

The Pipedrive MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Pipedrive account. It provides structured and secure access to your sales pipelines, so your agent can add deals, log sales activities, manage leads, and automate pipeline updates on your behalf.

  • Automated deal creation and management: Let your agent add new deals, update existing ones, and include custom fields to keep your pipeline moving smoothly.
  • Lead tracking and labeling: Automatically add leads linked to people or organizations, and tag them with custom labels for better segmentation and follow-up.
  • Sales activity logging: Effortlessly log calls and add comments to notes so every sales interaction is recorded and actionable.
  • Deal and contact following: Have your agent add followers to deals, organizations, people, or products so your team never misses an important update.
  • Channel and messaging support: Enable your agent to add new messaging channels for integrated communication right within your Pipedrive environment.

What is the Composio tool router, and how does it fit here?

What is Composio SDK?

Composio's Composio SDK helps agents find the right tools for a task at runtime. You can plug in multiple toolkits (like Gmail, HubSpot, and GitHub), and the agent will identify the relevant app and action to complete multi-step workflows. This can reduce token usage and improve the reliability of tool calls. Read more here: Getting started with Composio SDK

The tool router generates a secure MCP URL that your agents can access to perform actions.

How the Composio SDK works

The Composio SDK follows a three-phase workflow:

  1. Discovery: Searches for tools matching your task and returns relevant toolkits with their details.
  2. Authentication: Checks for active connections. If missing, creates an auth config and returns a connection URL via Auth Link.
  3. Execution: Executes the action using the authenticated connection.

Step-by-step Guide

Step by step09 STEPS
1

Prerequisites

Before starting, make sure you have:
  • Python 3.9 or higher
  • A Composio account with an active API key
  • Basic familiarity with Python and async programming
2

Getting API Keys for OpenAI and Composio

OpenAI API Key
  • Go to the OpenAI dashboard and create an API key. You'll need credits to use the models, or you can connect to another model provider.
  • Keep the API key safe.
Composio API Key
  • Log in to the Composio dashboard.
  • Navigate to your API settings and generate a new API key.
  • Store this key securely as you'll need it for authentication.
3

Install dependencies

bash
pip install composio pydantic-ai python-dotenv

Install the required libraries.

What's happening:

  • composio connects your agent to external SaaS tools like Pipedrive
  • pydantic-ai lets you create structured AI agents with tool support
  • python-dotenv loads your environment variables securely from a .env file
4

Set up environment variables

bash
COMPOSIO_API_KEY=your_composio_api_key_here
USER_ID=your_user_id_here
OPENAI_API_KEY=your_openai_api_key

Create a .env file in your project root.

What's happening:

  • COMPOSIO_API_KEY authenticates your agent to Composio's API
  • USER_ID associates your session with your account for secure tool access
  • OPENAI_API_KEY to access OpenAI LLMs
5

Import dependencies

python
import asyncio
import os
from dotenv import load_dotenv
from composio import Composio
from pydantic_ai import Agent
from pydantic_ai.mcp import MCPServerStreamableHTTP

load_dotenv()
What's happening:
  • We load environment variables and import required modules
  • Composio manages connections to Pipedrive
  • MCPServerStreamableHTTP connects to the Pipedrive MCP server endpoint
  • Agent from Pydantic AI lets you define and run the AI assistant
6

Create a Tool Router Session

python
async def main():
    api_key = os.getenv("COMPOSIO_API_KEY")
    user_id = os.getenv("USER_ID")
    if not api_key or not user_id:
        raise RuntimeError("Set COMPOSIO_API_KEY and USER_ID in your environment")

    # Create a Composio Tool Router session for Pipedrive
    composio = Composio(api_key=api_key)
    session = composio.create(
        user_id=user_id,
        toolkits=["pipedrive"],
    )
    url = session.mcp.url
    if not url:
        raise ValueError("Composio session did not return an MCP URL")
What's happening:
  • We're creating a Tool Router session that gives your agent access to Pipedrive tools
  • The create method takes the user ID and specifies which toolkits should be available
  • The returned session.mcp.url is the MCP server URL that your agent will use
7

Initialize the Pydantic AI Agent

python
# Attach the MCP server to a Pydantic AI Agent
pipedrive_mcp = MCPServerStreamableHTTP(url, headers={"x-api-key": COMPOSIO_API_KEY})
agent = Agent(
    "openai:gpt-5",
    toolsets=[pipedrive_mcp],
    instructions=(
        "You are a Pipedrive assistant. Use Pipedrive tools to help users "
        "with their requests. Ask clarifying questions when needed."
    ),
)
What's happening:
  • The MCP client connects to the Pipedrive endpoint
  • The agent uses GPT-5 to interpret user commands and perform Pipedrive operations
  • The instructions field defines the agent's role and behavior
8

Build the chat interface

python
# Simple REPL with message history
history = []
print("Chat started! Type 'exit' or 'quit' to end.\n")
print("Try asking the agent to help you with Pipedrive.\n")

while True:
    user_input = input("You: ").strip()
    if user_input.lower() in {"exit", "quit", "bye"}:
        print("\nGoodbye!")
        break
    if not user_input:
        continue

    print("\nAgent is thinking...\n", flush=True)

    async with agent.run_stream(user_input, message_history=history) as stream_result:
        collected_text = ""
        async for chunk in stream_result.stream_output():
            text_piece = None
            if isinstance(chunk, str):
                text_piece = chunk
            elif hasattr(chunk, "delta") and isinstance(chunk.delta, str):
                text_piece = chunk.delta
            elif hasattr(chunk, "text"):
                text_piece = chunk.text
            if text_piece:
                collected_text += text_piece
        result = stream_result

    print(f"Agent: {collected_text}\n")
    history = result.all_messages()
What's happening:
  • The agent reads input from the terminal and streams its response
  • Pipedrive API calls happen automatically under the hood
  • The model keeps conversation history to maintain context across turns
9

Run the application

python
if __name__ == "__main__":
    asyncio.run(main())
What's happening:
  • The asyncio loop launches the agent and keeps it running until you exit

Complete Code

Here's the complete code to get you started with Pipedrive and Pydantic AI:

python
import asyncio
import os
from dotenv import load_dotenv
from composio import Composio
from pydantic_ai import Agent
from pydantic_ai.mcp import MCPServerStreamableHTTP

load_dotenv()

async def main():
    api_key = os.getenv("COMPOSIO_API_KEY")
    user_id = os.getenv("USER_ID")
    if not api_key or not user_id:
        raise RuntimeError("Set COMPOSIO_API_KEY and USER_ID in your environment")

    # Create a Composio Tool Router session for Pipedrive
    composio = Composio(api_key=api_key)
    session = composio.create(
        user_id=user_id,
        toolkits=["pipedrive"],
    )
    url = session.mcp.url
    if not url:
        raise ValueError("Composio session did not return an MCP URL")

    # Attach the MCP server to a Pydantic AI Agent
    pipedrive_mcp = MCPServerStreamableHTTP(url, headers={"x-api-key": COMPOSIO_API_KEY})
    agent = Agent(
        "openai:gpt-5",
        toolsets=[pipedrive_mcp],
        instructions=(
            "You are a Pipedrive assistant. Use Pipedrive tools to help users "
            "with their requests. Ask clarifying questions when needed."
        ),
    )

    # Simple REPL with message history
    history = []
    print("Chat started! Type 'exit' or 'quit' to end.\n")
    print("Try asking the agent to help you with Pipedrive.\n")

    while True:
        user_input = input("You: ").strip()
        if user_input.lower() in {"exit", "quit", "bye"}:
            print("\nGoodbye!")
            break
        if not user_input:
            continue

        print("\nAgent is thinking...\n", flush=True)

        async with agent.run_stream(user_input, message_history=history) as stream_result:
            collected_text = ""
            async for chunk in stream_result.stream_output():
                text_piece = None
                if isinstance(chunk, str):
                    text_piece = chunk
                elif hasattr(chunk, "delta") and isinstance(chunk.delta, str):
                    text_piece = chunk.delta
                elif hasattr(chunk, "text"):
                    text_piece = chunk.text
                if text_piece:
                    collected_text += text_piece
            result = stream_result

        print(f"Agent: {collected_text}\n")
        history = result.all_messages()

if __name__ == "__main__":
    asyncio.run(main())

Conclusion

You've built a Pydantic AI agent that can interact with Pipedrive through Composio's Tool Router. With this setup, your agent can perform real Pipedrive actions through natural language. You can extend this further by:
  • Adding other toolkits like Gmail, HubSpot, or Salesforce
  • Building a web-based chat interface around this agent
  • Using multiple MCP endpoints to enable cross-app workflows (for example, Gmail + Pipedrive for workflow automation)
This architecture makes your AI agent "agent-native", able to securely use APIs in a unified, composable way without custom integrations.
TOOLS & TRIGGERS

Supported Tools and Triggers

Every Pipedrive action and event your agent gets out of the box.

Add new activity type

Adds a new activity type.

Add a deal

Add a new deal to Pipedrive with any custom fields, which vary by account and are identified by long hash keys.

Add an activity

New activity added.

Add an organization

Creates a new organization in Pipedrive.

Add a person

Add a new contact in Pipedrive with optional custom fields unique to each account found using the `personFields` endpoint.

Add a call log

Adds a new call log.

Add Call Log Audio File

Tool to attach an audio recording to an existing call log in Pipedrive.

Add a channel

New messaging channel added; registration limited to admins.

Add discount to deal

Tool to add a discount to a deal in Pipedrive.

Add a new deal field

Adds a new deal field.

Add deal field options

Tool to add new options to a deal custom field atomically.

Add a follower to a deal

Adds a follower to a deal.

Add a participant to a deal

Adds a participant to a deal.

Add product to deal

Tool to add a product to a deal in Pipedrive.

Bulk add products to deal

Tool to bulk add products to a Pipedrive deal.

Add file

Upload and link files to deals, people, organizations, activities, products, or leads in Pipedrive.

Add a new filter

New filter creation returns an ID.

Add a new goal

Adds a new goal.

Receives an incoming message

Adds a message to a conversation.

Add an installment subscription

Adds a new installment subscription.

Add a lead

Pipedrive API lets you add leads linked to people or organizations and tags them with 'API' source.

Add a lead label

Creates a lead label.

Add Note

Tool to add a note to a deal, person, organization, lead, or project in Pipedrive.

Add comment to note

Tool to add a comment to an existing note in Pipedrive.

Add a new organization field

Adds a new organization field.

Add Organization Field Options

Tool to add new options to an organization field in Pipedrive.

Add organization follower

Tool to add a follower to an organization in Pipedrive.

Add or update role setting

Adds or updates the visibility setting for a role.

Add a new person field

Adds a new person field.

Add person field options

Tool to bulk add options to enum/set person fields atomically.

Add a follower to a person

Tool to add a follower to a person in Pipedrive.

Add person picture

This service allows adding a photo to a person's profile, replacing any existing one.

Add a new pipeline

Adds a new pipeline (v2).

Add a product

Adds a new product to the Products inventory.

Add a new product field

Adds a new product field.

Add product field options

Tool to add new options to a product custom field that supports options (enum or set field types).

Add follower to product

Tool to add a follower to a product in Pipedrive.

Add Product Image

Tool to upload an image for a product in Pipedrive.

Create product variation

Tool to create a new product variation for an existing product.

Add a project

Adds a new project.

Add a recurring subscription

Adds a new recurring subscription.

Add a role

Adds a new role.

Add role assignment

Assigns a user to a role.

Add a new stage

Adds a new stage, returns the ID upon success.

Add a task

Adds a new task.

Add a new team

Adds a new team to the company and returns the created object.

Add users to a team

Adds users to an existing team.

Add a new user

Adds a new user to the company, returns the ID upon success.

Archive a project

Archives a project.

Cancel a recurring subscription

Cancels a recurring subscription.

Convert deal to lead

Tool to convert a Pipedrive deal to a lead asynchronously.

Convert Lead to Deal

Tool to convert a Pipedrive lead to a deal asynchronously.

Create an organization relationship

Creates and returns an organization relationship.

Create a remote file and link it to an item

Creates an empty file on Google Drive linked to an item.

Create a new webhook

Creates and returns details of a new Webhook.

Get all ActivityFields

Tool to retrieve metadata about all activity fields in the company.

Update deal product

Tool to update product details attached to a deal in Pipedrive using the v2 API.

Delete multiple activities in bulk

Marks multiple activities as deleted.

Delete Activity

Tool to delete an activity in Pipedrive.

Delete Activity Type

Tool to delete an activity type in Pipedrive.

Delete multiple activity types in bulk

Marks multiple activity types as deleted.

Delete an activity

Marks an activity as deleted.

Delete a person

Marks a person as deleted.

Delete a person field

Marks a field as deleted.

Delete a stage

Marks a stage as deleted.

Delete a call log

Deletes a call log.

Delete a channel

The endpoint removes a messenger channel along with conversations and messages.

Delete comment from note

Tool to delete a comment from a note in Pipedrive.

Delete a conversation

Deletes an existing conversation.

Delete Deal

Tool to delete a deal in Pipedrive.

Delete Deal Discount

Tool to delete a discount from a deal in Pipedrive.

Delete a deal field

Tool to delete a deal field in Pipedrive by marking it as deleted.

Delete deal field options

Tool to remove existing options from a deal custom field atomically.

Delete multiple deal fields in bulk

Marks multiple deal fields as deleted.

Delete deal follower

Tool to delete a follower from a deal in Pipedrive.

Delete a participant from a deal

Deletes a participant from a deal.

Delete Deal Product

Tool to delete an attached product from a deal in Pipedrive.

Delete Deals Products

Tool to delete multiple products from a deal in Pipedrive.

Delete multiple deals in bulk

Marks multiple deals as deleted.

Delete a file

Tool to delete a file in Pipedrive.

Delete Pipedrive Filter

Tool to delete a filter in Pipedrive.

Delete multiple filters in bulk

Marks multiple filters as deleted.

Delete existing goal

Marks a goal as deleted.

Delete a lead

Deletes a specific lead.

Delete lead label

Tool to delete a specific lead label from Pipedrive.

Delete mail thread

Marks a mail thread as deleted.

Delete multiple product fields in bulk

Marks multiple fields as deleted.

Delete multiple stages in bulk

Marks multiple stages as deleted (v1).

Delete a note

Deletes a specific note.

Delete an organization

Tool to delete an organization in Pipedrive.

Delete an organization field

Marks a field as deleted.

Delete organization field options

Tool to delete specified options from an organization field in Pipedrive.

Delete multiple organization fields in bulk

Marks multiple fields as deleted.

Delete organization follower

Tool to delete a follower from an organization in Pipedrive.

Delete an organization relationship

Deletes an organization relationship and returns the deleted ID.

Delete multiple organizations in bulk

Marks multiple organizations as deleted.

Delete a person

Tool to delete a person in Pipedrive.

Delete a person field

Tool to delete a person field from Pipedrive.

Delete person field options

Tool to remove existing options from a person custom field atomically.

Delete multiple person fields in bulk

Marks multiple fields as deleted.

Delete a follower from a person

Deletes a follower from a person.

Delete person picture

Deletes a person’s picture.

Delete multiple persons in bulk

Marks multiple persons as deleted.

Delete a pipeline

Marks a pipeline as deleted.

Delete a product

Marks a product as deleted.

Delete a product field

Marks a product field as deleted.

Delete product field options

Tool to remove existing options from a product custom field atomically.

Delete a follower from a product

Deletes a follower from a product.

Delete Product Image

Tool to delete an image from a product in Pipedrive.

Delete Product Variation

Tool to delete a product variation from a product in Pipedrive.

Delete a project

Marks a project as deleted.

Delete a role

Marks a role as deleted.

Delete a role assignment

Removes the assigned user from a role and adds to the default role.

Delete a stage

Tool to delete a stage in Pipedrive.

Delete a subscription

Marks an installment or a recurring subscription as deleted.

Delete a task

Marks a task as deleted.

Delete users from a team

Deletes users from an existing team.

Delete existing webhook

Deletes the specified Webhook.

Download one file

Initializes a file download.

Duplicate deal

Duplicates a deal.

Duplicate Product

Tool to duplicate a specific product in Pipedrive.

Enumerate accessible users for lead

Lists the users permitted to access a lead.

Find goals

Query goal data by appending `{searchField}={searchValue}` to the URL with dot-notation fields and values.

Find users by name

Finds users by their name.

Get details of an activity

Returns the details of a specific activity.

Get one activity field

Tool to retrieve detailed metadata for a specific activity field by its field code.

Get all activities assigned to a particular user

Returns all activities assigned to a particular user.

Get all activities beta

This BETA cursor-paginated endpoint returns all activities, accessible only to global admins, not regular users who get a 403 error.

Get all activity fields

Returns all activity fields.

Get all activity types

Returns all activity types.

Get all deal fields

Returns data about all deal fields.

Get all deals

Returns all deals.

Get all deals beta

This endpoint returns all deals with cursor pagination (in BETA).

Get all files

Returns data about all files.

Get all filter helpers

The text provides links to documentation for adding or updating filters, and information on all supported filter helpers in an API.

Get all filters

Returns data about all filters.

Get all lead labels

Returns details of all lead labels.

Get all leads

The API returns sorted leads by creation time, supporting pagination via `limit` and `start`.

Get all lead sources

Returns all lead sources.

Get all note fields

Returns data about all note fields.

Get all notes

Returns all notes.

Get all organization fields

Returns data about all organization fields.

Get all organizations

Returns all organizations.

Get all organizations beta

This BETA API endpoint lists all organizations with cursor pagination.

Get all permission sets

Returns data about all permission sets.

Get all person fields

Returns data about all person fields.

Get all persons

Returns all persons.

Get all persons beta

This BETA endpoint returns all persons, using cursor pagination.

Get all pipelines

Returns data about all pipelines.

Get all product fields

Returns data about all product fields.

Get all products

Returns data about all products.

Get all project boards

Returns all projects boards that are not deleted.

Get all projects

Returns all projects.

Get all project templates

The endpoint retrieves all non-deleted project templates with cursor-based pagination.

Get all relationships for organization

Gets all of the relationships for a supplied organization ID.

Get all roles

Returns all the roles within the company.

Get all stages

Returns data about all stages.

Get all supported currencies

Returns all supported currencies in given account which should be used when saving monetary values with other objects.

Get all tasks

Returns all tasks.

Get all teams

Returns data about teams within the company.

Get all teams of a user

Returns data about all teams which have the specified user as a member.

Get all user connections

Returns data about all connections for the authorized user.

Get all users

Returns data about all users within the company.

Get all users in a team

Returns a list of all user IDs within a team.

Get all webhooks

Returns data about all the Webhooks of a company.

Get archived deals

Tool to get all archived deals from Pipedrive.

Get archived leads

Tool to get all archived leads from Pipedrive.

Get call log details

Tool to retrieve details of a specific call log by ID.

Get one comment

Returns the details of a comment.

Get all add ons for a single company

Returns the add-ons for a single company.

Get conversations for a channel

Tool to retrieve messaging conversations.

Get current user data

Returns data about an authorized user within the company with bound company data: company ID, company name, and domain.

Get Deal Details

Tool to get details of a specific deal in Pipedrive.

Get Deal Changelog

Tool to list updates about deal field values.

Get one deal field

Tool to retrieve a specific deal field by ID.

Get Deal Files

Tool to list files attached to a deal.

Get deal followers

Lists users who are following the deal.

Get deal followers changelog

Tool to retrieve changelogs about users who have followed a deal.

Get Deal Mail Messages

Tool to list mail messages associated with a deal in Pipedrive.

Get Deal Participants

Tool to list participants of a deal.

Get Deal Participants Changelog

Tool to list updates about participants of a deal.

Get Deal Products

Tool to list products attached to a deal.

Get deals conversion rates in pipeline

Returns all stage-to-stage conversion and pipeline-to-close rates for the given time period.

Get deal conversion status

Tool to retrieve the conversion status for a deal-to-lead conversion operation.

Get deals discounts

Tool to retrieve discounts for a specific deal.

Get deals in a pipeline

Lists deals in a specific pipeline across all its stages.

Get deals in a stage

Lists deals in a specific stage.

Get Deals Products

Tool to retrieve products attached to specified deals (max 100 deals per request).

Get deals summary

Returns a summary of all the deals.

Get archived deals summary

Tool to retrieve summary statistics for archived deals.

Get deals timeline

Returns opened and won deals in time-based groups according to a specified dealField, with examples of deals grouped by month over a 3-month period starting January 2012.

Find subscription by deal

Returns details of an installment or a recurring subscription by the deal ID.

Get deals where a product is attached to

Returns data about deals that have a product attached to it.

Get deal updates

Lists updates about a deal in chronological order.

Get Deal Permitted Users

Tool to list users permitted to access a deal.

Get details of an organization

Provides detailed information about an organization, including additional fields not shown when listing all organizations, and maps custom fields as long hashes to the 'key' value in organizationFields.

Get one file

Returns data about a specific file.

Get one filter

Returns data about a specific filter.

Get result of a goal

Gets the progress of a goal for the specified period.

Get lead conversion status by ID

Tool to retrieve the conversion status for a specific lead conversion job.

Get all lead fields

Tool to retrieve all lead fields.

Get Lead Permitted Users

Tool to list users permitted to access a lead.

Get one mail message

Returns data about a specific mail message.

Get one mail thread

Returns a specific mail thread.

Get all mail messages of mail thread

Returns all the mail messages inside a specified mail thread.

Get mail threads

Returns mail threads in a specified folder ordered by the most recent message within.

Get Marketplace Client ID

Tool to retrieve marketplace_client_id of an installed video integration.

Get one note

Returns details about a specific note.

Get all comments for a note

Returns all comments associated with a note.

Get one lead

API returns specific lead details with custom field values in the Deals format.

Get Organization Details

Tool to get details of a specific organization in Pipedrive.

Get Organization Changelog

Tool to list updates about organization field values.

Get organization deals

Lists deals associated with an organization.

Get one organization field

Tool to retrieve a specific organization field by ID.

Get Organization Files

Tool to list files attached to an organization.

Get Organization Followers

Tool to list followers of an organization.

Get Organization Followers Changelog

Tool to list changelog about organization followers.

Get Organization Mail Messages

Tool to list mail messages associated with an organization.

Get Organization Persons

Tool to list persons associated with an organization.

Get one organization relationship

Finds and returns an organization relationship from its ID.

Get Organization Updates

Tool to list updates about an organization including field value changes, activities, notes, files, and other related items.

Get organization permitted users

List users permitted to access an organization.

Get one permission set

Returns data about a specific permission set.

Get Permission Set Assignments

Tool to list permission set assignments for a given permission set.

Get Person Details

Tool to get details of a specific person in Pipedrive.

Get Person Changelog

Tool to list updates about person field values.

Get person deals

Lists deals associated with a person.

Get one person field

Tool to retrieve metadata for a specific person field by its ID.

Get Person Files

Tool to list files attached to a person.

Get Person Followers

Tool to list followers of a person in Pipedrive.

Get person followers changelog

Tool to retrieve changelogs about users who have followed a person.

Get Person Mail Messages

Tool to list mail messages associated with a person in Pipedrive.

Get Person Picture

Tool to get picture details of a specific person in Pipedrive.

Get Person Products

Tool to list products associated with a person.

Get person updates

Lists updates and activity history for a specific person in chronological order.

Get Person Permitted Users

Tool to list users permitted to access a person.

Get one pipeline

Returns data about a specific pipeline.

Get Pipeline Conversion Statistics

Tool to get deals conversion rates in a pipeline for a given time period.

Get Pipeline Movement Statistics

Tool to retrieve deal movement statistics within a pipeline for a specified time period.

Get one product

Returns data about a specific product.

Get Product Deals

Tool to list deals associated with a product.

Get one product field

Returns data about a specific product field.

Get Product Files

Tool to list files attached to a product.

Get product followers

Tool to list all followers of a product in Pipedrive.

Get Product Followers Changelog

Tool to list changelog of followers for a product.

Get product images

Tool to retrieve image data for a specific product.

List permitted users for product

Tool to list users permitted to access a product in Pipedrive.

Get product variations

Tool to retrieve all product variations for a specific product with pagination support.

Get details of a project

Returns the details of a specific project.

Returns project activities

Returns activities linked to a specific project.

Get details of a board

Returns the details of a specific project board.

Returns project groups

Returns all active groups under a specific project.

Get details of a phase

Returns the details of a specific project phase.

Get project phases

Returns all active project phases under a specific board.

Returns project plan

Returns information about items in a project plan.

Returns project tasks

Returns tasks linked to a specific project.

Get recents

Returns data about all recent changes occurred after the given timestamp.

Get one role

Tool to retrieve details for a specific role by its ID.

Get role assignments

Tool to retrieve all users assigned to a specific role in Pipedrive.

Get role pipelines

Returns the visibility settings for pipelines associated with a specific role.

Get role settings

Tool to retrieve visibility settings of a specific role.

Get one stage

Returns data about a specific stage.

Get details of a subscription

Returns details of an installment or a recurring subscription.

Get all payments of a subscription

Returns all payments of an installment or recurring subscription.

Get details of a task

Returns the details of a specific task.

Get a single team

Returns data about a specific team.

Get details of a template

Returns the details of a specific project template.

Get templates for a channel

Tool to retrieve message templates for a channel.

Get one user

Returns data about a specific user within the company.

Get all call logs assigned to a particular user

Returns all call logs assigned to a particular user.

Get User Followers

Tool to list users who are following a specific user.

List user permissions

Tool to list aggregated permissions over all assigned permission sets for a user.

Get User Role Assignments

Tool to list role assignments for a user.

Get user role settings

Tool to list user role settings.

Link a remote file to an item

Links an existing remote file (`googledrive`) to the item you supply.

Link User Video Integration

A video calling provider must call this endpoint after a user has installed the video calling app so that the new user's information is sent.

List activities associated with a deal

Lists activities associated with a deal.

List files attached to a deal

Lists files associated with a deal.

List followers of a deal

Lists the followers of a deal.

List mail messages associated with a deal

Lists mail messages associated with a deal.

List all persons associated with a deal

The endpoint lists every person linked to a deal, including primary contacts and participants, and provides a `data.

List products attached to a deal

Lists products attached to a deal.

List updates about a deal

Lists updates about a deal.

List permitted users

Lists the users permitted to access a deal.

List activities associated with an organization

Lists activities associated with an organization.

List deals associated with an organization

Lists deals associated with an organization.

List files attached to an organization

Lists files associated with an organization.

List followers of an organization

Lists the followers of an organization.

List mail messages associated with an organization

Lists mail messages associated with an organization.

List persons of an organization

Lists persons associated with an organization.

List participants of a deal

Lists the participants associated with a deal.

List permission set assignments

Returns the list of assignments for a permission set.

List activities associated with a person

Lists activities associated with a person.

List deals associated with a person

Lists deals associated with a person.

List files attached to a person

Lists files associated with a person.

List followers of a person

Lists the followers of a person.

List mail messages associated with a person

Lists mail messages associated with a person.

List products associated with a person

Lists products associated with a person.

List Person Access Users

List users permitted to access a person.

List files attached to a product

Lists files associated with a product.

List followers of a product

Lists the followers of a product.

List Product Permitted Users

Lists users permitted to access a product.

List role assignments

Returns all users assigned to a role.

List pipeline visibility for a role

Returns a list of visible or hidden pipeline IDs by role.

List role settings

Returns the visibility settings of a specific role.

List updates about an organization

Lists updates about an organization.

List updates about a person

Lists updates about a person.

List updates about participants of a deal

This endpoint provides cursor-paginated updates on deal participants.

List followers of a user

Lists the followers of a specific user.

List user permissions

Lists aggregated permissions over all assigned permission sets for a user.

List User Role Assignments

Lists role assignments for a user.

List user role settings

Lists the settings of user's assigned role.

List settings of an authorized user

Lists the settings of an authorized user.

Merge Deals

Tool to merge two deals in Pipedrive.

Merge Organizations

Tool to merge two organizations in Pipedrive.

Merge two persons

Tool to merge two persons in Pipedrive.

Merge two deals

Merges a deal with another deal.

Merge two organizations

Merges an organization with another organization.

Merge two persons

Merges a person with another person.

Organization accessible user list

List users permitted to access an organization.

Patch deal fields

Updates an existing deal custom field using PATCH method.

Update organization field (v2)

Tool to update an existing organization field in Pipedrive using the v2 API.

Update Person Field Configuration

Tool to update person field configuration in Pipedrive.

Update product field

Tool to update a product custom field.

Refreshing the tokens

Access tokens expire after the time specified in `expires_in`.

Requesting authorization

Authorize a user by redirecting them to the Pipedrive OAuth authorization page and request their permissions to act on their behalf.

Search deals

This API endpoint searches deals by title, notes, and custom fields, filters results by person or organization ID, and is a specific use case of /v1/itemSearch with limited OAuth scope.

Search Item By Field

Performs a search from the values of a specific field.

Search leads

Endpoint searches leads by title, notes, custom fields, with options to filter by person and organization IDs, and is a more specific use of the /v1/itemSearch with limited OAuth scope.

Perform a search from multiple item types

Performs a search from your choice of item types and fields.

Search organizations

Searches all organizations by name, address, notes and/or custom fields.

Search persons

This endpoint searches for individuals by various identifiers and is a specific use case of /v1/itemSearch with limited OAuth scope, allowing results filtering by organization ID.

Search products

Searches all products by name, code and/or custom fields.

Update stage

Tool to update an existing stage in Pipedrive.

Unlinkuserfromvideocallintegration

A video calling provider must call this endpoint to remove the link between a user and the installed video calling app.

Update a comment related to a note

Updates a comment related to a note.

Update an activity

Tool to update an existing activity in Pipedrive including scheduling, assignments, descriptions, and participants.

Update activity in project plan

Updates an activity phase or group in a project.

Update activity type

Tool to update an activity type in Pipedrive.

Update a deal

Updates the properties of a deal.

Update a deal field

Updates a deal field.

Update a filter

Updates an existing filter in Pipedrive.

Update a lead

Updating lead properties modifies only specified fields; use `null` to unset.

Update a lead label

Updates one or more properties of a lead label.

Update an activity

Updates an activity.

Update an activity type

Updates an activity type.

Update an organization

Updates the properties of an organization.

Update an organization field

Updates an organization field.

Update an organization relationship

Updates and returns an organization relationship.

Update a note

Updates a note.

Update a person

Modifies a person’s details in Pipedrive.

Update a person field

Updates a person field.

Update a pipeline

Updates the properties of a pipeline (v2).

Update a product

Updates product data.

Update a product field

Updates a product field.

Update comment for note

Tool to update a comment on a note in Pipedrive.

Update a deal

Tool to update an existing deal in Pipedrive.

Update deal discount

Tool to update a discount for a specific deal.

Update a deal field

Tool to update a deal field in Pipedrive.

Update deal field options

Tool to update existing options for a deal custom field atomically.

Update Deal Product

Updates a product attached to a deal with new values.

Update the product attached to a deal

Updates the details of the product that has been attached to a deal.

Update deal (v2 API)

Tool to update an existing deal using Pipedrive v2 API.

Update file details

Updates the properties of a file including its visible name and description.

Update file details

Updates the properties of a file.

Update filter

Updates an existing filter.

Update existing goal

Updates an existing goal.

Update an installment subscription

Updates an installment subscription.

Update a lead

Tool to update a lead in Pipedrive.

Update Lead Label

Tool to update a lead label in Pipedrive.

Update mail thread details

Updates the properties of a mail thread.

Update Note

Tool to update an existing note in Pipedrive.

Update Organization

Tool to update an existing organization in Pipedrive.

Update organization field

Tool to update an organization field in Pipedrive.

Update organization field options

Tool to update existing options for an organization custom field atomically.

Update organization relationship

Tool to update an organization relationship in Pipedrive.

Update a person

Tool to update a person's properties in Pipedrive.

Update person field

Tool to update a person field in Pipedrive.

Update person field options

Tool to update existing options for a person custom field atomically.

Update person (v2)

Tool to update a person's properties in Pipedrive using the v2 API.

Update a pipeline

Tool to update a pipeline in Pipedrive.

Update pipeline visibility for a role

Updates pipeline visibility settings for different roles.

Update a product

Tool to update a product in Pipedrive.

Update product field

Tool to update a product field definition in Pipedrive.

Update product field options

Tool to update existing options for a product custom field atomically.

Update product image

Tool to update an image for a product in Pipedrive.

Update product variation

Tool to update a product variation in Pipedrive.

Update a project

Updates a project.

Update a recurring subscription

Updates a recurring subscription.

Update role details

Updates the parent role and/or the name of a specific role.

Update role pipelines

Updates pipeline visibility for a role.

Update stage details

Tool to update stage details in Pipedrive.

Update stage details

Updates the properties of a stage.

Update a task

Updates a task.

Update task in project plan

Updates a task phase or group in a project.

Update a team

Updates an existing team and returns the updated object.

Update user details

Tool to update user details in Pipedrive.

Update user details

Updates the properties of a user.

FAQ

Frequently asked questions

With a standalone Pipedrive MCP server, the agents and LLMs can only access a fixed set of Pipedrive tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Pipedrive and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. Pydantic AI fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Pipedrive tools.

Yes, absolutely. You can configure which Pipedrive scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Pipedrive data and credentials are handled as safely as possible.

Start with Pipedrive.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Pipedrive tool your agent needs.Free to start.

Start building