mcpField
B
boostu-teamleader-mcp

boostu-teamleader-mcp

ローカル
github.com/boostuagencyビジネス・マーケティング46 週間前に更新

boostu-teamleader-mcp について

boostu-teamleader-mcpは、AIアシスタントから自然言語でTeamleader Focus CRMを操作できるオープンソースのMCPサーバーです。CRMレコード、営業書類、プロジェクト、時間記録などのAPI機能を扱い、ツールグループを選択できます。

主な機能

  1. 01CRMの連絡先、企業、商談
  2. 02見積書、請求書、クレジットノート
  3. 03製品とサブスクリプション
  4. 04プロジェクトと時間記録
  5. 05サポートチケットと参照データ
  6. 06ツールグループの選択とトークン更新

活用シーン

  1. 01CRMレコードの作成と更新
  2. 02営業書類の作成と送信
  3. 03プロジェクト時間とサポートチケットの管理

MCP 対応

MCPサーバーはOAuth2でTeamleader Focus APIに接続し、stdio経由でMCPクライアントに操作ツールを公開します。`TEAMLEADER_TOOLS`でツールグループを選択でき、更新されたOAuthトークンは指定したファイルに保存できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"boostuagency-boostu-teamleader": {
"command": "npx",
"args": [
"-y",
"boostu-teamleader-mcp"
],
"env": {
"TEAMLEADER_CLIENT_ID": "<TEAMLEADER_CLIENT_ID>",
"TEAMLEADER_CLIENT_SECRET": "<TEAMLEADER_CLIENT_SECRET>",
"TEAMLEADER_REFRESH_TOKEN": "<TEAMLEADER_REFRESH_TOKEN>",
"TEAMLEADER_TOKEN_STORE": "<TEAMLEADER_TOKEN_STORE>",
"TEAMLEADER_TOOLS": "<TEAMLEADER_TOOLS>"
}
}
}
}
起動コマンドnpx -y boostu-teamleader-mcp
設定が必要な環境変数
TEAMLEADER_CLIENT_IDシークレットYour Teamleader Focus integration Client ID
TEAMLEADER_CLIENT_SECRETシークレットYour Teamleader Focus integration Client Secret
TEAMLEADER_REFRESH_TOKENシークレットOAuth2 refresh token from the one-time authorization
TEAMLEADER_TOKEN_STOREシークレットPath to persist the rotated refresh token (default .teamleader-token)
TEAMLEADER_TOOLSComma-separated tool groups to enable (default: all groups)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmboostu-teamleader-mcp2.1.4

ツール

103

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
pagenumberいいえページ番号(デフォルト:1)
tagsarrayいいえタグで絞り込み
termstringいいえ連絡先を絞り込む検索語
page_sizenumberいいえページサイズ(デフォルト:20、最大:100)
updated_sincestringいいえISO 8601 の日付。指定日以降に更新された連絡先のみを対象とします

詳細

🔗 BoostU Teamleader MCP

オープンソースの Teamleader Focus MCP サーバーです。Claude やその他の AI アシスタントから、自然な言葉で CRM を管理できます。🤖

CI npm version npm downloads node Model Context Protocol tools License: MIT Made by BoostU


💡 これは何ですか?

boostu-teamleader-mcp は、Teamleader Focus API を AI アシスタント(Claude Desktop、Claude Code、Cursor、Windsurf など)に公開する Model Context Protocol サーバーです。Teamleader Focus の全領域を網羅する 100 種類以上のツールを提供します。CRM(連絡先、企業、商談)、営業文書(見積書、請求書、クレジットノート)、製品カタログ、サブスクリプション、プロジェクト、時間管理、カスタマーサービスのチケットなどに対応しています。AI を接続するだけで、自然な言葉で CRM 全体を管理できます。

セルフホストを希望しませんか?

teamleader-mcp.boostu.be で、常時稼働のマネージド版をご利用ください。OAuth の設定は不要で、マジックリンクでログインでき、Claude 用のコネクターもワンクリックで設定できます。プレビュー期間中は無料で、その後は有料プランとなります。

このリポジトリは、オープンソースの MCP サーバーそのものです。ご自身の Teamleader 統合を使ってローカルで実行できます。ホスト版では、同じサーバーをベースに、マルチテナント認証、ダッシュボード、使用状況の分析、トークン管理機能を追加しています。

セルフホスト(このリポジトリ)マネージド(boostu.be)
価格無料、MIT ライセンスプレビュー期間中は無料、その後は有料
設定独自の Teamleader 統合を作成し、npx で実行コネクター URL を 1 つ Claude にコピー
トークン.env とリフレッシュトークンを自分で管理暗号化され、自動でローテーション
おすすめの対象開発者やセルフホストを利用する方技術的な知識を必要としないチーム

🔌 仕組み

flowchart LR
    U["🧑 You"] -->|"plain language"| C["🤖 Claude / AI assistant"]
    C <-->|"MCP · stdio"| S["🔗 boostu-teamleader-mcp"]
    S <-->|"OAuth2 REST"| T["📇 Teamleader Focus API"]

Claude に自然な言葉で依頼します。Claude はこの MCP サーバーを呼び出し、OAuth2 で Teamleader Focus に認証して、該当する API 呼び出しを実行します。データは Teamleader に保管されたままで、このサーバーは呼び出しを仲介するだけです。

このファイルの右上にあるアウトラインボタンを使うと、任意のセクションに移動できます。


✨ 主な特長

  • 👥 CRM 全般:すべてのパイプラインにわたって、連絡先、企業、商談を作成・更新できます
  • 🧾 見積書と請求:商談の見積書を作成し、請求書を会計に登録してメールで送信し、支払いを記録できます
  • 📦 製品カタログ:製品、カテゴリー、価格表、単位を閲覧できます
  • 🔁 サブスクリプション:定期サブスクリプションを作成、更新、無効化できます
  • 📊 プロジェクトと時間管理:プロジェクトやマイルストーンを管理し、作業時間を記録して、リアルタイムタイマーを開始・停止できます
  • 🎫 カスタマーサービスのチケット:チケットを作成し、返信を投稿して、ステータスを更新できます
  • 🔎 参照データの検索:商談フェーズ、パイプライン、税率、支払い条件、失注理由などを検索できます
  • 🔐 自動リフレッシュトークンローテーション対応の OAuth2:トークンは自動的に更新され、ローテーション後のトークンは設定可能なファイルに保存されます
  • 🧩 ツールグループの選択:TEAMLEADER_TOOLS で必要なグループだけを読み込み、アシスタントのコンテキストをすっきり保てます

🚀 クイックスタート

インストールせずに実行
npx boostu-teamleader-mcp
グローバルインストール
npm i -g boostu-teamleader-mcp
boostu-teamleader-mcp
Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。

{
  "mcpServers": {
    "teamleader": {
      "command": "npx",
      "args": ["-y", "boostu-teamleader-mcp"],
      "env": {
        "TEAMLEADER_CLIENT_ID": "your-client-id",
        "TEAMLEADER_CLIENT_SECRET": "your-client-secret",
        "TEAMLEADER_REFRESH_TOKEN": "your-refresh-token"
      }
    }
  }
}
Claude Code

プロジェクトの .mcp.json または ~/.claude/mcp.json に追加します。

{
  "mcpServers": {
    "teamleader": {
      "command": "npx",
      "args": ["-y", "boostu-teamleader-mcp"],
      "env": {
        "TEAMLEADER_CLIENT_ID": "your-client-id",
        "TEAMLEADER_CLIENT_SECRET": "your-client-secret",
        "TEAMLEADER_REFRESH_TOKEN": "your-refresh-token"
      }
    }
  }
}
Cursor

プロジェクトのルートにある .cursor/mcp.json(またはグローバルの ~/.cursor/mcp.json)に追加します。

{
  "mcpServers": {
    "teamleader": {
      "command": "npx",
      "args": ["-y", "boostu-teamleader-mcp"],
      "env": {
        "TEAMLEADER_CLIENT_ID": "your-client-id",
        "TEAMLEADER_CLIENT_SECRET": "your-client-secret",
        "TEAMLEADER_REFRESH_TOKEN": "your-refresh-token"
      }
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json に追加します。

{
  "mcpServers": {
    "teamleader": {
      "command": "npx",
      "args": ["-y", "boostu-teamleader-mcp"],
      "env": {
        "TEAMLEADER_CLIENT_ID": "your-client-id",
        "TEAMLEADER_CLIENT_SECRET": "your-client-secret",
        "TEAMLEADER_REFRESH_TOKEN": "your-refresh-token"
      }
    }
  }
}

🔐 認証

3 つの環境変数 TEAMLEADER_CLIENT_ID、TEAMLEADER_CLIENT_SECRET、TEAMLEADER_REFRESH_TOKEN が必要です。Teamleader Marketplace / Developer portal でインテグレーションを登録し、OAuth2 認証フローを完了すると取得できます。

Teamleader は API 呼び出しのたびにリフレッシュトークンをローテーションします。サーバーが再起動後も最新のトークンを保持できるよう、書き込み可能なファイルパスを TEAMLEADER_TOKEN_STORE に設定してください。設定しないと、設定ファイル内のトークンは最初の再起動後に無効になります。

手順をすべて説明したガイド(認証 URL、コード交換、ヘルパースクリプト)については、docs/AUTHENTICATION.md をご覧ください。


⚙️ 設定

環境変数
名前必須説明
TEAMLEADER_CLIENT_IDはいTeamleader インテグレーションの OAuth2 クライアント ID
TEAMLEADER_CLIENT_SECRETはいTeamleader インテグレーションの OAuth2 クライアントシークレット
TEAMLEADER_REFRESH_TOKENはいOAuth2 認証フローで取得した初期リフレッシュトークン
TEAMLEADER_TOKEN_STOREいいえサーバーがローテーションされたリフレッシュトークンを保存する、書き込み可能なファイルへのパス(例:/var/run/teamleader-token)。本番環境では強く推奨します。
TEAMLEADER_TOOLSいいえ有効にするツールグループキーをカンマ区切りで指定します。未設定の場合、21 個すべてのグループが読み込まれます。
ツールグループの選択

TEAMLEADER_TOOLS を使用して、登録するツールグループを制限します。アシスタントのツール一覧を小さく保ちたい場合や、Teamleader の特定の領域へのアクセスを制限したい場合に便利です。

TEAMLEADER_TOOLS=deals,quotations,products

グループキーの一覧:

キー対象
contacts連絡先の CRUD
companies会社の CRUD
deals案件/商談
tasksタスク
eventsカレンダーイベント
invoices請求書(作成、記帳、送信、支払い、ダウンロード)
quotations見積書(作成、更新、送信、承認)
products製品カタログと価格表
reference案件フェーズ、税率、支払条件など
orgユーザー、チーム、部門
customFieldsカスタムフィールドの定義
creditNotesクレジットノート
subscriptions定期購読
projectsプロジェクトとマイルストーン
timeTracking作業時間の記録と稼働中のタイマー
activities電話とミーティング
ticketsサポートチケット
tags連絡先や会社へのタグの追加/削除
notesあらゆる対象に関するメモ
filesファイル一覧、ダウンロード、アップロード
webhooksWebhook の登録

🧰 利用可能なツール

連絡先
ツール説明
teamleader_list_contactsTeamleader Focus の連絡先を、任意のフィルタリングとページネーションを指定して一覧表示します
teamleader_get_contact特定の連絡先の詳細情報を取得します
teamleader_create_contactTeamleader Focus に新しい連絡先を作成します
teamleader_update_contactTeamleader Focus の既存の連絡先を更新します
teamleader_link_contact_to_company任意で役職と意思決定者フラグを指定して、連絡先を会社に紐付けます
teamleader_unlink_contact_from_companyTeamleader Focus の会社から連絡先の紐付けを解除します
teamleader_update_contact_company_link既存の連絡先と会社の紐付けにある役職または意思決定者フラグを更新します
会社
ツール説明
teamleader_list_companiesTeamleader Focus の会社を、必要に応じてフィルタリングやページネーションを指定して一覧表示します
teamleader_get_company特定の会社の詳細情報を取得します
teamleader_create_companyTeamleader Focus に新しい会社を作成します
取引
ツール説明
teamleader_list_dealsTeamleader Focus の取引/商談を、必要に応じてフィルタリングやページネーションを指定して一覧表示します
teamleader_get_deal特定の取引の詳細情報を取得します
teamleader_create_dealTeamleader Focus に新しい取引/商談を作成します
teamleader_update_dealTeamleader Focus の既存の取引を更新します
タスク
ツール説明
teamleader_list_tasksTeamleader Focus のタスクを、必要に応じてフィルタリングやページネーションを指定して一覧表示します
teamleader_create_taskTeamleader Focus に新しいタスクを作成します
イベント
ツール説明
teamleader_list_eventsTeamleader Focus のカレンダーイベントを、必要に応じてフィルタリングやページネーションを指定して一覧表示します
teamleader_get_event特定のイベントの詳細情報を取得します
teamleader_create_eventTeamleader Focus に新しいカレンダーイベントを作成します
請求書
ツール説明
teamleader_list_invoicesTeamleader Focus の請求書を、必要に応じてフィルタリングやページネーションを指定して一覧表示します
teamleader_get_invoice特定の請求書の詳細情報を取得します
teamleader_create_invoiceTeamleader Focus に新しい請求書の下書きを作成します
teamleader_invoices_book請求書の下書きを会計処理に登録し、番号を割り当てます
teamleader_invoices_send指定した宛先に請求書をメールで送信します
teamleader_invoices_register_payment請求書に対する支払いを登録します
teamleader_invoices_download指定した形式の請求書をダウンロードするための一時 URL を取得します
見積書
ツール説明
teamleader_quotations_list見積書を一覧表示します。必要に応じて取引 ID でフィルタリングできます
teamleader_quotations_infoID で単一の見積書を取得します。必要に応じて有効期限(有効期限日)の設定も取得できます
teamleader_quotations_create取引に見積書を作成します。明細項目やテキスト、名前、有効期限日を指定できます
teamleader_quotations_update見積書を更新します。明細項目、テキスト、名前を変更したり、有効期限日を変更したりできます
teamleader_quotations_accept見積書を承諾します(承諾済みとしてマークされます。元に戻すのは困難です)
teamleader_quotations_send任意の件名とメッセージで見積書をメール送信します(cc、bcc、送信者、添付ファイル、言語を指定できます)。#LINK は署名リンクに置き換えられます
製品
ツール説明
teamleader_products_list製品を一覧表示します。必要に応じて検索語でフィルタリングできます
teamleader_products_infoID で単一の製品を取得します
teamleader_product_categories_list製品カテゴリを一覧表示します
teamleader_price_lists_list価格表を一覧表示します
teamleader_units_of_measure_list測定単位を一覧表示します
参照データ
ツール説明
teamleader_deal_phases_list取引フェーズを一覧表示します
teamleader_deal_pipelines_list取引パイプラインを一覧表示します
teamleader_deal_sources_list取引ソースを一覧表示します
teamleader_lost_reasons_list取引の失注理由を一覧表示します
teamleader_tax_rates_list税率を一覧表示します
teamleader_payment_terms_list支払条件を一覧表示します
teamleader_withholding_tax_rates_list源泉徴収税率を一覧表示します
組織
ツール説明
teamleader_users_listユーザーを一覧表示します。必要に応じて検索語でフィルタリングできます
teamleader_users_infoID で単一のユーザーを取得します
teamleader_users_me現在認証されているユーザーを取得します
teamleader_teams_listチームを一覧表示します
teamleader_departments_list部門を一覧表示します
カスタムフィールド
ツール説明
teamleader_custom_field_definitions_listカスタムフィールドの定義を一覧表示
teamleader_custom_field_definitions_infoIDで単一のカスタムフィールド定義を取得
クレジットノート
ツール説明
teamleader_credit_notes_listクレジットノートを一覧表示。請求書または部門で絞り込み可能
teamleader_credit_notes_infoIDで単一のクレジットノートを取得
サブスクリプション
ツール説明
teamleader_subscriptions_listサブスクリプションを一覧表示。顧客で絞り込み可能
teamleader_subscriptions_infoIDで単一のサブスクリプションを取得
teamleader_subscriptions_create顧客への定期請求を開始する新しいサブスクリプションを作成
teamleader_subscriptions_updateサブスクリプションのタイトルを更新
teamleader_subscriptions_deactivateサブスクリプションを無効化(今後の請求を停止)
プロジェクト
ツール説明
teamleader_projects_listプロジェクトを一覧表示。検索語または顧客で絞り込み可能
teamleader_projects_infoIDで単一のプロジェクトを取得
teamleader_projects_create顧客向けの新しいプロジェクトを作成
teamleader_milestones_listマイルストーンを一覧表示。プロジェクトで絞り込み可能
teamleader_milestones_createプロジェクトにマイルストーンを作成
時間追跡
ツール説明
teamleader_time_tracking_list時間追跡エントリーを一覧表示。ユーザーで絞り込み可能
teamleader_time_tracking_add時間追跡エントリーを追加
teamleader_time_tracking_update時間追跡エントリーの所要時間または説明を更新
teamleader_timer_startタイマーを開始
teamleader_timer_stopタイマーを停止し、時間追跡エントリーを作成
アクティビティ(電話・会議)
ツール説明
teamleader_calls_list電話を一覧表示。顧客で絞り込み可能
teamleader_calls_create電話アクティビティを作成
teamleader_calls_complete電話を完了としてマーク
teamleader_meetings_list会議を一覧表示
teamleader_meetings_create会議を予定
teamleader_meetings_complete会議を完了としてマーク
チケット
ツール説明
teamleader_tickets_listサポートチケットを一覧表示。顧客またはステータスで絞り込み可能
teamleader_tickets_infoIDで単一のサポートチケットを取得
teamleader_tickets_create顧客向けの新しいサポートチケットを作成
teamleader_tickets_updateチケットの件名またはステータスを更新
teamleader_tickets_add_messageチケットスレッドに返信/メッセージを追加
teamleader_ticket_status_list利用可能なすべてのチケットステータスを一覧表示
タグ
ツール説明
teamleader_contacts_add_tags連絡先に1つ以上のタグを追加
teamleader_contacts_remove_tags連絡先から1つ以上のタグを削除
teamleader_companies_add_tags会社に1つ以上のタグを追加
teamleader_companies_remove_tags会社から1つ以上のタグを削除
メモ
ツール説明
teamleader_notes_list対象(連絡先、会社、商談など)に紐づくメモを一覧表示
teamleader_notes_create対象に紐づくメモを作成
ファイル
ツール説明
teamleader_files_list対象(連絡先、会社、商談など)に紐づくファイルを一覧表示
teamleader_files_downloadIDでファイルの一時ダウンロードURLを取得
teamleader_files_upload2段階のファイルアップロードを開始し、アップロードURLを返す
Webhooks
ツール説明
teamleader_webhooks_list登録済みの Webhook を一覧表示します
teamleader_webhooks_register指定したイベントタイプの Webhook URL を登録します
teamleader_webhooks_unregister指定したイベントタイプの Webhook URL の登録を解除します

💬 プロンプトの例

Create a quotation for deal <id> with two line items: 5 hours of consulting at €150/h and a one-time setup fee of €500.
Move the valid-until date of quotation <id> to the end of next month, then email the customer a reminder in Dutch with the signing link.
Book the draft invoice <id> into accounting and then send it to the customer.
Register a €1 200 payment against invoice <id> received today via bank transfer.
Log 2.5 hours on project <id> for user <user_id> with the note "API integration work".
Start a timer for me right now — I'm working on the BoostU onboarding project.
Open a support ticket for company <id>: subject "Login not working", priority high.
What deal phase IDs do we have in pipeline <id>? I need to move deal <id> to the "Proposal sent" phase.
List all products in the "Hosting" category and their prices.
Create a monthly subscription for company <id>: product <product_id>, quantity 1, starting next month.
Show me all open deals with their current phases and tell me which ones haven't moved in the last 30 days.

🐳 Docker

docker run --rm \
  -e TEAMLEADER_CLIENT_ID=your-client-id \
  -e TEAMLEADER_CLIENT_SECRET=your-client-secret \
  -e TEAMLEADER_REFRESH_TOKEN=your-refresh-token \
  -e TEAMLEADER_TOKEN_STORE=/data/teamleader-token \
  -v /var/run/teamleader:/data \
  ghcr.io/boostuagency/boostu-teamleader-mcp

🛠️ 開発

# Clone and install
git clone https://github.com/boostuagency/boostu-teamleader-mcp.git
cd boostu-teamleader-mcp
npm install

# Run in development mode (no build step required)
npm run dev

# Build
npm run build

# Run tests
npm test

# Type-check only
npm run typecheck

🏗️ アーキテクチャ

サーバーの中核は src/server.ts の createServer です。これはトランスポートに依存せず、TeamleaderClient を受け取り、有効化されたツールグループを登録して、プレーンな McpServer インスタンスを返します。エントリーポイント(src/index.ts)はこれを StdioServerTransport に接続します。ツールのロジックは src/tools/ 配下のドメインごとのモジュールにあり、それぞれが src/lib/ の共通ヘルパーを使った一貫性のある try / respond / catch / respondError パターンに従っています。OAuth2 トークンの取得とローテーションはすべて src/api/auth.ts で処理されるため、コードベースの他の部分からは透過的です。このサーバーのホスト型マルチテナント版は teamleader-mcp.boostu.be で利用できます。


✅ エンドポイントの検証

ほとんどの読み取りエンドポイント(*.list、*.info)は、Teamleader Focus API に対して実環境で検証済みです。いくつかの書き込みおよびアクションエンドポイント(例:subscriptions.create、projects.create、files.upload)は公式ドキュメントに基づいて実装されていますが、該当モジュールが有効な実アカウントではテストされていません。エンドポイント名が誤っている場合、呼び出しは予期しない動作をするのではなく、明確な HTTP エラーメッセージを返して失敗します。エンドポイントの全マニフェストと検証状況は docs/teamleader-endpoints.md に記載されています。


🤝 貢献

開発環境のセットアップ、コミット規約、新しいツールグループの追加手順については、CONTRIBUTING.md を参照してください。


🔒 セキュリティ

セキュリティ上の脆弱性は [email protected] に報告してください。公開の Issue は作成しないでください。開示ポリシーについては SECURITY.md を参照してください。.env ファイルや .teamleader-token をバージョン管理にコミットしないでください。どちらも .gitignore に記載されています。


⚖️ 免責事項

これはコミュニティによって独自に構築された統合機能です。Teamleader NV との提携、承認、スポンサー関係はありません。「Teamleader」および「Teamleader Focus」は Teamleader NV の商標であり、ここでは互換性を説明する目的でのみ使用しています。Teamleader の規約に基づく Teamleader API の利用については、ご自身の責任で行ってください。


📄 ライセンス

MIT License — Copyright (c) 2026 BoostU Agency。上流プロジェクトへの帰属表示については NOTICE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。