HubSpot MCP Server

by SheffieldP
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables interaction with HubSpot CRM data, providing tools for managing contacts and companies, creating new entries with duplicate checking, and accessing recent engagement history from the CRM.

HubSpot MCP サーバー

概要

HubSpot CRMとの連携を可能にするモデルコンテキストプロトコル(MCP)サーバー実装。このサーバーにより、AIモデルは標準化されたインターフェースを介してHubSpotのデータやオペレーションと連携できるようになります。

モデルコンテキストプロトコルとその動作の詳細については、 Anthropic の MCP ドキュメントを参照してください。

コンポーネント

リソース

サーバーは次のリソースを公開します。

  • hubspot://hubspot_contacts : HubSpotの連絡先へのアクセスを提供する動的リソース
  • hubspot://hubspot_companies : HubSpot企業へのアクセスを提供する動的リソース
  • hubspot://hubspot_recent_engagements : 過去3日間のHubSpotエンゲージメントへのアクセスを提供する動的リソース

すべてのリソースは、HubSpot でそれぞれのオブジェクトが変更されると自動的に更新されます。

プロンプトの例

  • LinkedIn プロフィールの Web ページからコピーして Hubspot の連絡先を作成します。
    Create HubSpot contacts and companies from following: John Doe Software Engineer at Tech Corp San Francisco Bay Area • 500+ connections Experience Tech Corp Software Engineer Jan 2020 - Present · 4 yrs San Francisco, California Previous Company Inc. Senior Developer 2018 - 2020 · 2 yrs Education University of California, Berkeley Computer Science, BS 2014 - 2018
  • 会社の最新の活動を入手してください:
    What's happening latestly with my pipeline?

ツール

サーバーは、HubSpot オブジェクトを管理するためのいくつかのツールを提供します。

連絡先管理ツール

  • hubspot_get_contacts
    • HubSpotから連絡先を取得する
    • 入力不要
    • 戻り値: 連絡先オブジェクトの配列
  • hubspot_create_contact
    • HubSpot で新しい連絡先を作成します(作成前に重複をチェックします)
    • 入力:
      • firstname (文字列): 連絡先の名
      • lastname (文字列): 連絡先の姓
      • email (文字列、オプション): 連絡先のメールアドレス
      • properties (dict, オプション): 追加の連絡先プロパティ
        • 例: {"phone": "123456789", "company": "HubSpot"}
    • 行動:
      • 同じ名と姓を持つ既存の連絡先をチェックします
      • プロパティにcompanyが指定されている場合は、同じ会社との一致もチェックします
      • 一致するものが見つかった場合、既存の連絡先の詳細を返します
      • 一致するものが見つからない場合にのみ新しい連絡先を作成します

企業管理ツール

  • hubspot_get_companies
    • HubSpotから企業情報を取得する
    • 入力不要
    • 戻り値: 会社オブジェクトの配列
  • hubspot_create_company
    • HubSpot で新しい会社を作成します(作成前に重複がないかチェックします)
    • 入力:
      • name (文字列): 会社名
      • properties (dict, オプション): 追加の会社プロパティ
        • 例: {"domain": "example.com", "industry": "Technology"}
    • 行動:
      • 同じ名前の既存の会社をチェックします
      • 一致するものが見つかった場合、既存の会社の詳細を返します
      • 一致するものが見つからない場合にのみ新しい会社を作成します
  • hubspot_get_company_activity
    • 特定の企業の活動履歴を取得する
    • 入力:
      • company_id (文字列): HubSpot の会社 ID
    • 戻り値: アクティビティオブジェクトの配列

エンゲージメントツール

  • hubspot_get_recent_engagements
    • 過去3日間のすべての企業と連絡先からのHubSpotエンゲージメントを取得します
    • 入力不要
    • 戻り値: 完全なメタデータを含むエンゲージメント オブジェクトの配列

マルチユーザーサポート

このMCPサーバーは、それぞれが独自のアクセストークンを持つ複数のHubSpotユーザーと連携するように設計されています。サーバーはアクセストークンにグローバル環境変数を使用しません。

代わりに、MCP サーバーへの各リクエストには、次のいずれかの方法でユーザー固有のアクセス トークンを含める必要があります。

  1. リクエストヘッダー内: X-HubSpot-Access-Token: your-token-here
  2. リクエスト本文にaccessTokenとして次のように記述します: {"accessToken": "your-token-here"}
  3. リクエスト本文にhubspotAccessTokenとして次のように記述します: {"hubspotAccessToken": "your-token-here"}

この設計により、ユーザー トークンを独自のバックエンド (Supabase など) に保存し、各リクエストとともに渡すことができます。

マルチユーザー統合の例

// Example of how to use this MCP server in a multi-user setup async function makeHubSpotRequest(userId, action, params) { // Retrieve the user's HubSpot token from your database const userToken = await getUserHubSpotToken(userId); // Make request to MCP server with the user's token const response = await fetch('https://your-mcp-server.vercel.app/', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-HubSpot-Access-Token': userToken }, body: JSON.stringify({ action, ...params }) }); return await response.json(); }

設定

前提条件

各ユーザーにHubSpotアクセストークンが必要です。以下の方法で取得できます。

  1. HubSpotアカウントでプライベートアプリを作成する: HubSpotプライベートアプリガイドに従ってください
    • HubSpotアカウント設定に移動します
    • 「統合」>「プライベートアプリ」に移動します
    • 「プライベートアプリを作成」をクリックします
    • 基本情報を入力してください:
      • アプリに名前を付ける
      • 説明を追加
      • ロゴをアップロード(オプション)
    • 必要なスコープを定義します。
      • oauth(必須)
    • オプションのスコープ:
      • crm.dealsplits.read_write
      • crm.objects.companies.read
      • crm.objects.companies.write
      • crm.objects.contacts.read
      • crm.objects.contacts.write
      • crm.objects.deals.read
    • アプリを確認して作成する
    • 生成されたアクセストークンをコピーする

注意: アクセス トークンは安全な状態に保ってください。バージョン管理にコミットしないでください。

Dockerのインストール

イメージはローカルでビルドすることも、Docker Hubからプルすることもできます。このイメージはLinuxプラットフォーム用にビルドされています。

サポートされているプラットフォーム

  • Linux/amd64
  • Linux/arm64
  • Linux/arm/v7

オプション1: Docker Hubからプルする

docker pull buryhuang/mcp-hubspot:latest

オプション2: ローカルで構築する

docker build -t mcp-hubspot .

コンテナを実行します。

docker run \ buryhuang/mcp-hubspot:latest

クロスプラットフォームパブリッシング

複数のプラットフォーム向けにDockerイメージを公開するには、 docker buildxコマンドを使用します。以下の手順に従ってください。

  1. 新しいビルダー インスタンスを作成します(まだ作成していない場合)。
    docker buildx create --use
  2. 複数のプラットフォーム用のイメージをビルドしてプッシュします
    docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t buryhuang/mcp-hubspot:latest --push .
  3. 指定されたプラットフォームでイメージが使用可能であることを確認します
    docker buildx imagetools inspect buryhuang/mcp-hubspot:latest

Claude Desktopでの使用

Smithery経由でインストール

Smithery経由で Claude Desktop 用の mcp-hubspot を自動的にインストールするには:

npx -y @smithery/cli@latest install mcp-hubspot --client claude

Dockerの使用

{ "mcpServers": { "hubspot": { "command": "docker", "args": [ "run", "-i", "--rm", "buryhuang/mcp-hubspot:latest" ] } } }

発達

開発環境をセットアップするには:

pip install -e .

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。

-
security - not tested
A
license - permissive license
-
quality - not tested

標準化されたインターフェースを介して AI モデルが HubSpot CRM のデータおよび操作と対話できるようにし、マルチユーザー トークンベースの認証による連絡先と会社の管理をサポートするサーバー。

  1. Overview
    1. Components
      1. Resources
      2. Example Prompts
      3. Tools
    2. Multi-User Support
      1. Example Multi-User Integration
    3. Setup
      1. Prerequisites
      2. Docker Installation
    4. Cross-Platform Publishing
      1. Usage with Claude Desktop
        1. Installing via Smithery
        2. Docker Usage
      2. Development
        1. License
          ID: gl8jk9u4nb