HubSpot Integration
Manage HubSpot contacts, deals, and tickets
The HubSpot integration provides access to manage HubSpot contacts, deals, and tickets through the Integrate MCP server.
Installation
The HubSpot integration is included with the SDK:
import { hubspotIntegration } from "integrate-sdk/server";Setup
1. Create a HubSpot OAuth App
- Go to HubSpot Developer Apps
- Create a new OAuth application
- Configure your redirect URI
- Note your Client ID and Client Secret
2. Configure the Integration on Your Server
Add the HubSpot integration to your server configuration. The integration automatically reads HUBSPOT_CLIENT_ID and HUBSPOT_CLIENT_SECRET from your environment variables:
import { createMCPServer, hubspotIntegration } from "integrate-sdk/server";
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
hubspotIntegration({
}),
],
});You can override the environment variables by passing explicit values:
hubspotIntegration({
clientId: process.env.CUSTOM_HUBSPOT_ID,
clientSecret: process.env.CUSTOM_HUBSPOT_SECRET,
});3. Client-Side Usage
The default client automatically includes all integrations. You can use it directly:
import { client } from "integrate-sdk";
await client.authorize("hubspot");
const result = await client.hubspot.listContacts({});
console.log(result);If you're using a custom client, add the integration to the integrations array:
import { createMCPClient, hubspotIntegration } from "integrate-sdk";
const customClient = createMCPClient({
integrations: [hubspotIntegration()],
});Configuration Options
export interface HubSpotIntegrationConfig {
/** HubSpot OAuth client ID (defaults to HUBSPOT_CLIENT_ID env var) */
clientId?: string;
Tools
hubspot_list_contacts
List contacts
export interface HubspotListContactsParams {
limit?: number;
hubspot_get_contact
Get contact
export interface HubspotGetContactParams {
contact_id: string;
hubspot_create_contact
Create contact
export interface HubspotCreateContactParams {
email?: string;
hubspot_update_contact
Update contact
export interface HubspotUpdateContactParams {
contact_id: string;
hubspot_delete_contact
Delete contact
export interface HubspotDeleteContactParams {
contact_id: string;
hubspot_list_companies
List companies
export interface HubspotListCompaniesParams {
limit?: number;
hubspot_get_company
Get company
export interface HubspotGetCompanyParams {
company_id: string;
hubspot_create_company
Create company
export interface HubspotCreateCompanyParams {
name?: string;
hubspot_update_company
Update company
export interface HubspotUpdateCompanyParams {
company_id: string;
hubspot_delete_company
Delete company
export interface HubspotDeleteCompanyParams {
company_id: string;
hubspot_list_deals
List deals
export interface HubspotListDealsParams {
limit?: number;
hubspot_get_deal
Get deal
export interface HubspotGetDealParams {
deal_id: string;
hubspot_create_deal
Create deal
export interface HubspotCreateDealParams {
dealname?: string;
hubspot_update_deal
Update deal
export interface HubspotUpdateDealParams {
deal_id: string;
hubspot_delete_deal
Delete deal
export interface HubspotDeleteDealParams {
deal_id: string;
hubspot_list_tickets
List tickets
export interface HubspotListTicketsParams {
limit?: number;
hubspot_get_ticket
Get ticket
export interface HubspotGetTicketParams {
ticket_id: string;
hubspot_create_ticket
Create ticket
export interface HubspotCreateTicketParams {
subject: string;
hubspot_update_ticket
Update ticket
export interface HubspotUpdateTicketParams {
ticket_id: string;
hubspot_delete_ticket
Delete ticket
export interface HubspotDeleteTicketParams {
ticket_id: string;
hubspot_search_crm
Search crm
export interface HubspotSearchCrmParams {
object_type: string;
hubspot_create_note
Create note
export interface HubspotCreateNoteParams {
body: string;
hubspot_create_task
Create task
export interface HubspotCreateTaskParams {
subject: string;
hubspot_list_owners
List owners
export interface HubspotListOwnersParams {
limit?: number;
hubspot_get_owner
Get owner
export interface HubspotGetOwnerParams {
owner_id: string;
hubspot_list_pipelines
List pipelines
export interface HubspotListPipelinesParams {
object_type: string;
hubspot_list_pipeline_stages
List pipeline stages
export interface HubspotListPipelineStagesParams {
object_type: string;
hubspot_create_association
Create association
export interface HubspotCreateAssociationParams {
from_object_type: string;
Notes
- Category: Business
- Authentication mode: OAuth