Pipedrive Integration
Manage Pipedrive deals, leads, people, organizations, activities, notes, pipelines, and products
The Pipedrive integration provides access to manage Pipedrive deals, leads, people, organizations, activities, notes, pipelines, and products through the Integrate MCP server.
Installation
The Pipedrive integration is included with the SDK:
import { pipedriveIntegration } from "integrate-sdk/server";Setup
1. Create a Pipedrive OAuth App
- Create an OAuth application for Pipedrive
- Configure your redirect URI
- Note your Client ID and Client Secret
2. Configure the Integration on Your Server
Add the Pipedrive integration to your server configuration. The integration automatically reads PIPEDRIVE_CLIENT_ID and PIPEDRIVE_CLIENT_SECRET from your environment variables:
import { createMCPServer, pipedriveIntegration } from "integrate-sdk/server";
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
pipedriveIntegration({
scopes: ["deals:read", "deals:full", "contacts:read", "contacts:full", "activities:read", "activities:full", "products:read", "products:full"], // Optional
}),
],
});You can override the environment variables by passing explicit values:
pipedriveIntegration({
clientId: process.env.CUSTOM_PIPEDRIVE_ID,
clientSecret: process.env.CUSTOM_PIPEDRIVE_SECRET,
scopes: ["deals:read", "deals:full", "contacts:read", "contacts:full", "activities:read", "activities:full", "products:read", "products:full"], // Optional
});3. Client-Side Usage
The default client automatically includes all integrations. You can use it directly:
import { client } from "integrate-sdk";
await client.authorize("pipedrive");
const result = await client.pipedrive.listDeals({
api_domain: "value",
});
console.log(result);If you're using a custom client, add the integration to the integrations array:
import { createMCPClient, pipedriveIntegration } from "integrate-sdk";
const customClient = createMCPClient({
integrations: [pipedriveIntegration()],
});Configuration Options
export interface PipedriveIntegrationConfig {
clientId?: string;
Default Scopes
These defaults are applied unless you override scopes in the integration config:
deals:readdeals:fullcontacts:readcontacts:fullactivities:readactivities:fullproducts:readproducts:full
Tools
pipedrive_list_deals
List deals
export interface PipedriveListDealsParams { start?: number;
pipedrive_list_leads
List leads
export interface PipedriveListLeadsParams { start?: number;
pipedrive_list_persons
List persons
export interface PipedriveListPersonsParams { start?: number;
pipedrive_list_organizations
List organizations
export interface PipedriveListOrganizationsParams { start?: number;
pipedrive_list_activities
List activities
export interface PipedriveListActivitiesParams { start?: number;
pipedrive_list_notes
List notes
export interface PipedriveListNotesParams { start?: number;
pipedrive_list_pipelines
List pipelines
export interface PipedriveListPipelinesParams { start?: number;
pipedrive_list_products
List products
export interface PipedriveListProductsParams { start?: number;
pipedrive_create_deal
Create deal
export interface PipedriveCreateDealParams { deal_json: string;
Notes
- Category: Business
- Authentication mode: OAuth