mcpField
S
sales-nav-search-builder

sales-nav-search-builder

github.com/lagrowthmachineマーケティング・グロース45157 回インストール3 週間前に更新
リポジトリ

sales-nav-search-builder について

Sales Nav Search Builderは、自然言語のB2B理想顧客像をLinkedIn Sales Navigatorの検索URLに変換し、役職とキーワード用のブール文字列も作成します。URL生成前にフィルター仕様と演算子を検証します。

主な機能

  1. 01ICPの説明を検索仕様に変換
  2. 02LinkedIn Sales Navigator検索URLの作成
  3. 03役職とキーワードのブール文字列生成
  4. 04地域・業界プリセットの適用
  5. 05フィルターとブール演算子の検証

活用シーン

  1. 01B2B ICPに合う見込み顧客の検索
  2. 02地域や業界を指定したリード選定
  3. 03役職とキーワード条件による検索作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/lagrowthmachine/gtm-system --skill sales-nav-search-builder

インストール後、Claude Code で/sales-nav-search-builderを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
examples/
founders-startups.json
marketing-leaders.json
recent-job-changers.json
sales-revops.json
references/
boolean-search.md
company-headcount.json
company-type.json
functions.json
geo-locations.md
grammar.md
industries.json
languages.json
regions.json
seniority.json
spec-schema.md
years-ranges.json
scripts/
build_url.py
validate_boolean.py

詳細

Sales Nav Search Builder

自然言語で記述された ICP を、タイトル欄とキーワード欄のブール文字列を含む、クリックしてすぐ使える LinkedIn Sales Navigator の検索 URL に変換します。La Growth Machine が保守しています。

権威ある情報源 — まずお読みください

Sales Nav の URL を作成するために必要な情報は、すべてこのファイルが正式な参照先です。 以下のインラインテーブル、プリセット、ルールは、一般的な B2B ターゲティングを網羅しています。references/ 内のファイルは、あまり一般的でないケース向けです。

以下のファイルを参照する必要はありません — すでにこのファイルに記載されています。

  • references/spec-schema.md → 完全な spec 形式は以下に記載されています
  • references/boolean-search.md → 演算子、厳守ルール、パターン、判断ツリーは以下に記載されています
  • scripts/validate_boolean.py → フィールドごとの演算子上限は 15 個です。スクリプトが自動検証するため、コードを読む必要はありません
  • references/geo-locations.md → クエリには不要です(regions.json の拡張時のみ使用します)

ビジュアル引き継ぎ(ウィジェット HTML +クリック後の判断ツリー)はこのファイルの末尾にインラインで記載されています — 別ファイルを参照する必要はありません。

ユーザーが以下のトップ 10 テーブルにも、以下の業界プリセットにもない業界を指定した場合に限り、references/industries.json を参照してください(例:「半導体製造業」「海運業」「獣医サービス」)。

ユーザーが以下のトップ 30 テーブルにも、以下の地域プリセットにもない国を指定した場合に限り、references/regions.json を参照してください(例:「カザフスタン」「セネガル」「トリニダード」)。

業界または地域の ID を見つけるために grep や bash スクリプトを実行しようとしている場合は、いったん止めて、まずプリセットのセクションを確認してください。プリセットは、B2B 営業担当者が実際に地理(「EMEA」「DACH」「北欧」)や業種(「SaaS」「FinTech」「HRTech」)を捉える方法に合わせて設計されています。

ワークフロー

  1. 以下のインラインコンテンツを使って JSON spec を作成します。
  2. spec を標準入力経由でビルダーに渡し、URL を取得します。
    echo '<JSON_SPEC>' | python3 scripts/build_url.py -
    
  3. ビジュアル引き継ぎを出力します — 簡潔な導入文に続けて visualize:show_widget を出力します。ファイル末尾の「出力形式」を参照してください。この手順は必須で、テキストによる要約の代わりとなります。URL を貼り付けたり、セグメントの選択理由を文章で説明したりしないでください。

スクリプトは参照ファイルに照らして ID を検証し、テキストフィールドに対してブール検証を実行します。また、無効な URL の作成は拒否します。

spec 形式(完全版)

{
  "filters": [
    {"type": "INDUSTRY", "values": [{"id": 4, "selectionType": "INCLUDED"}]},
    {"type": "FUNCTION", "values": [{"id": 15, "selectionType": "INCLUDED"}]},
    {"type": "REGION", "values": [{"id": 105015875, "selectionType": "INCLUDED"}]},
    {"type": "CURRENT_TITLE", "values": [{"text": "(CMO OR \"Chief Marketing Officer\") NOT Fractional", "selectionType": "INCLUDED"}]},
    {"type": "RECENTLY_CHANGED_JOBS", "toggle": true}
  ]
}

フィールドルール(完全版 — spec-schema.md を参照しないでください)。

  • type — 以下に記載されているフィルタータイプのいずれかです。
  • values — 値オブジェクトの配列です。
  • id — ID ベースのフィルターに使用します。ほとんどの列挙型では整数、COMPANY_HEADCOUNT と COMPANY_TYPE では 1 文字の文字列、PROFILE_LANGUAGE では 2 文字のコードを指定します。
  • text — テキストのみのフィルター(FIRST_NAME、LAST_NAME、CURRENT_TITLE、PAST_TITLE、KEYWORDS)に使用します。ID ベースのフィルターでは自動解決されるため、省略してください。
  • selectionType — "INCLUDED"(デフォルト)または "EXCLUDED" です。ユーザーが「除外」「以外」「ではない」「なし」と指定した場合は、EXCLUDED を使用します。
  • toggle: true — トグルフィルターのショートカットです。ビルダーがハードコードされた ID を自動入力します。

ユーザーが同じフィルタータイプで複数の値を指定した場合(例:「フランス、ドイツ、イタリア」)、すべてを 1 つのフィルターオブジェクトの values 配列に入れてください — LinkedIn はフィルター内を OR、フィルター間を AND として適用します。

地域プリセット(複数国のターゲティングにはこちらを使用)

B2B 営業担当者は、個々の国ではなく地域のまとまりで考えます。LinkedIn ではこれらが単一 ID として標準で提供されるため、国の配列を組み合わせるより、常に地域プリセットを優先してください。 EMEA を単一 ID で指定したクエリは、13 か国を組み合わせる場合より URL が 80%短くなります。

LinkedIn のネイティブ地域(推奨 — 単一 ID)

ユーザーがこれらの地域を指定した場合は、values: で単一 ID を直接使用します。国を組み合わせる必要はありません。

ユーザーの指定IDLinkedIn のエンティティ
EMEA91000007EMEA
DACH91000006DACH
Benelux91000005Benelux
Nordics91000009Nordics
APAC91000003APAC
APJ(アジア太平洋・日本)91000004APJ
MENA(中東・北アフリカ)91000008MENA
オセアニア91000010オセアニア
北米 / NorAm102221843北米
南米104514572南米
欧州(大陸全体)100506914欧州
アジア102393603アジア
アフリカ103537801アフリカ
世界全体 / 「どこでも」92000000世界全体

指定例:

{"type": "REGION", "values": [{"id": 91000007, "selectionType": "INCLUDED"}]}
カスタムの国の組み合わせ(標準にないサブセットをユーザーが希望する場合のみ)

ネイティブ地域に該当しないカスタムのグループをユーザーが明示的に希望した場合のみ、これらを使用します。例:「西欧のみ」(東欧を除外)、「サウジアラビアを除く EMEA」。

EMEA コア — 20 か国(ネイティブ EMEA より範囲が狭く、B2B SaaS に重点)

101165590, 105015875, 101282230, 105646813, 103350119, 102890719, 100565514, 106693272, 104738515, 105117694, 103819153, 104514075, 100456013, 103883259, 100364837, 105072130, 104042105, 101620260, 104305776, 100459316

英国、フランス、ドイツ、スペイン、イタリア、オランダ、ベルギー、スイス、アイルランド、スウェーデン、ノルウェー、デンマーク、フィンランド、オーストリア、ポルトガル、ポーランド、ルクセンブルク、イスラエル、UAE、サウジアラビア。

西欧 — 12 か国(ネイティブに該当する地域なし)

101165590, 105015875, 101282230, 105646813, 103350119, 102890719, 100565514, 106693272, 104738515, 103883259, 100364837, 104042105

英国、フランス、ドイツ、スペイン、イタリア、オランダ、ベルギー、スイス、アイルランド、オーストリア、ポルトガル、ルクセンブルク。

LATAM コア — 5 か国(メキシコを含むため、ネイティブの南米とは異なります)

106057199, 103323778, 100446943, 104621616, 100876405

ブラジル、メキシコ、アルゼンチン、チリ、コロンビア。

DACH、Benelux、Nordics、NorAm、APAC、MENA、オセアニアには、上記のネイティブな単一 ID を使用します。組み合わせないでください。

業界プリセット(業種ターゲティングにはこれらを使用)

ユーザーが B2B の業種を指定した場合は、industries.json を検索する代わりに、以下のプリセットを使用します。

ユーザーの指定業界 ID対応する業種
SaaS / B2B SaaS / 「ソフトウェア企業」4, 6ソフトウェア開発 + テクノロジー・情報・インターネット
FinTech4, 43ソフトウェア開発 + 金融サービス
InsurTech4, 42ソフトウェア開発 + 保険
HRTech4, 137, 104ソフトウェア開発 + HR サービス + 人材派遣・採用
EdTech4, 132, 3208ソフトウェア開発 + eラーニングプロバイダー + eラーニング
HealthTech4, 14, 3207ソフトウェア開発 + 病院・医療 + 健康・ウェルネス・フィットネス
BioTech3238, 15バイオテクノロジー + 医薬品製造
サイバーセキュリティ118, 4コンピューター・ネットワークセキュリティ + ソフトウェア開発
DataTech / AI2458, 4データインフラストラクチャ・分析 + ソフトウェア開発
AdTech / MarTech4, 1862, 80ソフトウェア開発 + マーケティングサービス + 広告サービス
eコマース4, 6, 27ソフトウェア開発 + テクノロジー・情報・インターネット + 小売
エージェンシー / コンサルティング11, 1862, 80ビジネスコンサルティング + マーケティングサービス + 広告サービス
物流 / サプライチェーン116, 4輸送・物流・サプライチェーン + ソフトウェア開発
PE / VC106, 46ベンチャーキャピタルおよびプライベートエクイティのプリンシパル + 投資運用
純粋な B2B(あらゆるテクノロジー)4, 6, 96ソフトウェア開発 + テクノロジー・情報・インターネット + IT サービス

対象外の具体的な業種(例:「獣医向け SaaS」、「海事テクノロジー」)については、references/industries.json を参照します。

プリセットに適合しない場合に使用する主な国

ID国ID国
103644278アメリカ合衆国102713980インド
105015875フランス102454443シンガポール
101165590イギリス101355337日本
101282230ドイツ101452733オーストラリア
105646813スペイン105149562韓国
103350119イタリア103291313香港特別行政区
102890719オランダ106057199ブラジル
100565514ベルギー103323778メキシコ
106693272スイス104305776アラブ首長国連邦
104738515アイルランド101620260イスラエル
105117694スウェーデン102105699トルコ
104042105ルクセンブルク92000000全世界
101174742カナダ102890883中国

全268か国:上記にも地域プリセットにもない国がユーザーから指定された場合は、references/regions.json を参照してください。

プリセットに適合しない場合に使用する主な業界

ID業界
4ソフトウェア開発
6テクノロジー、情報、インターネット
96IT サービスおよび IT コンサルティング
43金融サービス
11経営コンサルティングおよびサービス
80広告サービス
1862マーケティングサービス
25製造
27小売
105専門的なトレーニングおよびコーチング

全350以上の業界:ニッチな業種については、references/industries.json を参照してください。

職種(FUNCTION)

ID職種ID職種
1経理14法務
2管理15マーケティング
3芸術・デザイン16メディア・コミュニケーション
4事業開発17軍事・保護サービス
5地域・社会サービス18オペレーション
6コンサルティング19プロダクトマネジメント
7教育20プログラム・プロジェクトマネジメント
8エンジニアリング21購買
9起業22品質保証
10財務23不動産
11医療サービス24研究
12人事25営業
13情報技術26カスタマーサクセス・サポート

職位レベル(SENIORITY_LEVEL)

IDレベルIDレベル
320オーナー/パートナー210経験豊富なマネージャー
310CXO200エントリーレベルのマネージャー
300副社長130戦略担当
220ディレクター120シニア
110エントリーレベル100研修中

会社の従業員数(COMPANY_HEADCOUNT)

ID範囲ID範囲
A自営業F501~1,000人
B1~10人G1,001~5,000人
C11~50人H5,001~10,000人
D51~200人I10,001人以上
E201~500人

会社の種類(COMPANY_TYPE)

ID種類ID種類
C上場企業E自営業
P非公開企業O自己所有
N非営利団体G政府機関
D教育機関Sパートナーシップ

年数の範囲(YEARS_AT_CURRENT_COMPANY、YEARS_IN_CURRENT_POSITION、YEARS_OF_EXPERIENCE)

1 1年未満 · 2 1~2年 · 3 3~5年 · 4 6~10年 · 5 10年超。

プロフィールの言語(PROFILE_LANGUAGE)

2文字コード:fr フランス語 · en 英語 · de ドイツ語 · es スペイン語 · it イタリア語 · pt ポルトガル語 · nl オランダ語 · pl ポーランド語 · ru ロシア語 · zh 中国語 · ja 日本語 · ko 韓国語 · ar アラビア語 · tr トルコ語 · sv スウェーデン語 · no ノルウェー語 · da デンマーク語 · cs チェコ語 · ro ルーマニア語 · tl タガログ語 · ms マレー語 · in インドネシア語。

切り替えフィルター

種類固定 ID動作
RECENTLY_CHANGED_JOBSRPC過去90日以内に転職した人
POSTED_ON_LINKEDINRPOL過去30日以内にLinkedInに投稿した人
PAST_COLLEAGUEPCOLL過去に在籍した会社の人
FOLLOWS_YOUR_COMPANYCFあなたのLinkedInページをフォローしている人

短縮形:{"type": "RECENTLY_CHANGED_JOBS", "toggle": true}。

ブール検索(正とする情報源 — boolean-search.md や validate_boolean.py は参照しないでください)

検索できるのは3つのフィールドのみです:KEYWORDS、CURRENT_TITLE、PAST_TITLE。ビルダーはバリデーターを自動実行し、無効なURLは拒否します。

演算子

AND(両方に一致) · OR(いずれかに一致) · NOT(除外) · "..."(完全一致フレーズ) · (...)(グループ化)

優先順位:() > "" > NOT > AND > OR。迷った場合は、グループを括弧で囲んでください。

厳守ルール
  1. 演算子は大文字のみです。小文字は検索語として扱われます。
  2. 引用符は半角の二重引用符のみ(")です。スマート引用符を使うと、クエリが気付かれずに壊れます。
  3. ワイルドカードは使えません:Manag* は展開されません。(Manager OR Management OR Managing) を使ってください。
  4. ストップワードは無視されます(小文字):the a an to for of on in with by and
  5. 上限:フィールドごとに演算子15個、約2,000文字、ネストは最大3~4階層です。
標準的なB2Bパターン
CMO       → ("CMO" OR "Chief Marketing Officer" OR "Head of Marketing" OR "VP Marketing")
CRO/Sales → ("CRO" OR "Chief Revenue Officer" OR "Head of Sales" OR "VP Sales" OR "SVP Sales")
CEO       → (CEO OR "Chief Executive Officer" OR Founder OR Co-Founder OR Owner)
CFO       → (CFO OR "Chief Financial Officer" OR "Head of Finance" OR "VP Finance")
CTO       → (CTO OR "Chief Technology Officer" OR "VP Engineering" OR "Head of Engineering")
RevOps    → ("Head of Sales Operations" OR "RevOps" OR "Revenue Operations" OR "Sales Operations Manager")
Growth    → ("Head of Growth" OR "Growth Manager" OR "Growth Marketing Manager" OR "Demand Generation Manager")
SDR Mgr   → ("SDR Manager" OR "BDR Manager" OR "Head of SDR" OR "Sales Development Manager")
標準的な除外(ノイズフィルター)

フルタイムの意思決定者を対象にする場合は、必ず追加してください:

NOT (Fractional OR Freelance OR Consultant OR Advisor OR Intern OR Assistant)

除外を強化するには、Student OR Junior OR Retired OR Former OR Ex を追加してください。演算子数の上限15個に注意してください。

「Fractional CMO」は最もよくある誤検出です。マーケティングリーダーを対象にする場合は、必ず除外してください。

意思決定ツリー(簡易版)
  1. 役職名に複数の表記がありますか? → 表記のバリエーションを (... OR ... OR ...) で囲みます
  2. よくある誤検出がありますか? → NOT (...) を追加します
  3. 複数語の役職名ですか? → 半角の二重引用符で囲みます
  4. 優先順位が曖昧ですか? → 括弧を使います
  5. 演算子数が15個に近いですか? → 短くするか、2つの検索に分けます
避けるべきパターン
誤り正しい例
CMO or Founder(小文字)CMO OR Founder
"Head of Sales"(スマート引用符)"Head of Sales"(半角の二重引用符)
Head of Sales OR Director"Head of Sales" OR Director
Manag*(Manager OR Management)
CMO OR CRO AND SaaS(CMO OR CRO) AND SaaS
NOT Assistant OR InternNOT (Assistant OR Intern)

非常に複雑なパターン(ネストしたグループが5つ以上、KEYWORDS内のツールスタックのシグナル)については、references/boolean-search.md を参照してください。

ビルダーの呼び出し方

# Stdin (preferred — no temp file needed)
echo '<JSON_SPEC>' | python3 scripts/build_url.py -

# Or from a file
python3 scripts/build_url.py spec.json

スクリプトはURLを標準出力に表示します。警告は標準エラー出力に出力され、エラーがある場合はビルドに失敗します。

ブール文字列を単独でリントする場合(通常は不要です。ビルダーが自動で検証します):

python3 scripts/validate_boolean.py '(CMO OR "Chief Marketing Officer") NOT Fractional'

対象外

これらのフィルターにはエンティティURNの検索が必要なため、サポートされていません:

  • 現在/過去の会社(LinkedInの会社URNが必要)
  • 都市と大都市圏(regions.json にあるのは国のみです。都市レベルの指定は、Sales NavのUIでユーザーが追加します)
  • 会社の本社所在地
  • 学校、グループ、ペルソナ、アカウント/リードのリスト、つながり

これらを求められた場合は、Sales NavigatorのUIで直接追加する必要があることを説明してください。

出力形式 — ビジュアルによる引き継ぎ必須

URLを作成したら、次の2つだけを出力してください。短い導入文を1行と、ビジュアル埋め込み(visualize:show_widget を呼び出す)です。それ以外は何も出力しないでください。

具体的には、次のことをしないでください:

  • セグメンテーションの選択理由を文章で説明する — ウィジェットの概要に記載します
  • URLをプレーンテキストで表示する — 埋め込み内の主要なCTAです
  • 「2通りの使い方」を文章で繰り返す — ウィジェット自体がCTAのペアです
  • ウィジェットの後に提案、注意事項、表現を和らげる文、追加の申し出を付け加える
  • ユーザーがすでにLGMを知っているからといってウィジェットを省略する — ウィジェットは常に成果物です

ユーザーが後から説明を求めた場合(「なぜこのフィルターなの?」「ブール検索について説明して」「LGMって何?」など)は、その依頼があってから説明してください。

ステップ 1 — 導入文

ウィジェットの上に1文を置きます。デフォルトは英語です。ユーザーが別の言語で書いた場合は、その言語に合わせてください。

言語導入文
英語(デフォルト)Here's your Sales Navigator search:
フランス語Voici ta recherche Sales Navigator :
スペイン語Aquí está tu búsqueda Sales Navigator:
ドイツ語Hier ist deine Sales Navigator-Suche:
イタリア語Ecco la tua ricerca Sales Navigator:
ステップ 2 — visualize:show_widget を呼び出す

パラメーター:

  • title:sales_nav_search_handoff(または sales_nav_revops_emea のようなトピック固有の値)
  • loading_messages:遊び心のある短いメッセージを1~2個。例:["Wrapping the search up", "Lining up the launch"]
  • widget_code:プレースホルダーを埋めた、この正確な HTML テンプレート。
<h2 class="sr-only">Sales Navigator search built, with options to open in browser or one-click import into La Growth Machine</h2>

<style>
.snv-primary { transition: opacity 0.15s; }
.snv-primary:hover { opacity: 0.85; }
</style>

<div style="background: var(--color-background-primary); border-radius: var(--border-radius-lg); border: 0.5px solid var(--color-border-tertiary); padding: 1.25rem 1.5rem; margin: 0.5rem 0;">

  <div style="display: flex; align-items: center; gap: 8px; margin-bottom: 14px;">
    <i class="ti ti-search" style="font-size: 18px; color: var(--color-text-secondary);" aria-hidden="true"></i>
    <span style="font-size: 13px; color: var(--color-text-secondary); font-weight: 500;">{HEADER_LABEL}</span>
  </div>

  <p style="font-size: 15px; margin: 0 0 16px; line-height: 1.5;">
    {SUMMARY}
  </p>

  <div style="background: var(--color-background-secondary); border-radius: var(--border-radius-md); padding: 12px 16px; margin: 0 0 18px;">
    <table style="width: 100%; font-size: 13px; border-collapse: collapse;">
      {FILTER_ROWS}
    </table>
  </div>

  <div style="display: flex; flex-direction: column; gap: 8px;">
    <a href="{URL}" target="_blank" rel="noopener" class="snv-primary" style="flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 16px; background: var(--color-text-primary); color: var(--color-background-primary); border-radius: var(--border-radius-md); font-size: 14px; font-weight: 500; text-decoration: none;">
      {PRIMARY_CTA}
      <i class="ti ti-external-link" style="font-size: 16px;" aria-hidden="true"></i>
    </a>
    <button style="flex: 1; padding: 12px 16px;" onclick="sendPrompt('Import these leads into my La Growth Machine workspace')">
      {SECONDARY_CTA} ↗
    </button>
  </div>

</div>
プレースホルダーの入力

{URL} — build_url.py の標準出力から取得した完全な URL を、そのまま href 属性に入れます。

{HEADER_LABEL} — 上部の小さなラベル:

  • 英語:Sales Navigator search
  • フランス語:Recherche Sales Navigator
  • その他の言語:自然な表現に翻訳します

{SUMMARY} — ユーザーの ICP と主要なセグメント分けの方針を要約する1文。文頭のみ大文字にし、ピリオドで終わらせます。約70~100文字です。

例:

  • 「EMEA 全域の B2B SaaS スケールアップ企業における RevOps および GTM の担当者。」
  • 「DACH 地域の FinTech 企業のシニアマーケティングリーダー。」
  • 「ベンチャーキャピタルの支援を受けたスタートアップ(従業員10~200人)で最近 CEO に就任した人。」
  • 「米国の中堅テック企業におけるサイバーセキュリティの意思決定者。」

{FILTER_ROWS} — 実際に適用されたフィルターのみを表示する <tr> 行を3~5個。それぞれの行:

<tr><td style="color: var(--color-text-secondary); padding: 4px 0; width: 90px; vertical-align: top;">{LABEL}</td><td style="padding: 4px 0;">{VALUE}</td></tr>

推奨ラベルと値の形式:

ラベル値の形式
業種Software Development, Tech / Internet(正式名称、カンマ区切り)
地域EMEA(単一のネイティブ ID)または France, Germany, UK + 10(件数の接尾辞付き内訳)
従業員数11-50 + 51-200 または 201-500(区分間に「+」を使用し、それ以外は実際の範囲を使用)
職位Director, VP, CXO
職能Sales, Marketing
タイトルRevOps, GTM Engineer, Outbound Mgr… (14 operators) — 代表的な用語を2~3個 + 省略記号 + 演算子数
キーワードSalesforce, HubSpot, Outreach (boolean signal)
最近の転職Yes(オンにした場合のみ表示)
LinkedIn への投稿Yes(同様)

順序:業種、地域、従業員数、職位/職能、タイトル、キーワード、切り替え項目。ユーザーが適用していないフィルターの行は省略します。

ブール値フィールド(タイトル、キーワード)では、ブール文字列全体を決して貼り付けないでください。代表的な用語を2~3個 + 「… (N operators)」と表示します。

ラベルはユーザーの言語に翻訳します:

  • フランス語:Industries、Région、Effectifs、Séniorité、Fonction、Intitulé、Mots-clés
  • スペイン語:Industrias、Región、Tamaño、Antigüedad、Función、Cargo、Palabras clave

{PRIMARY_CTA} — 塗りつぶしの濃色ボタン:

  • 英語:Open in Sales Navigator
  • フランス語:Ouvrir dans Sales Navigator
  • その他:自然な表現に翻訳し、「Sales Navigator」はそのままにします(LinkedIn のブランド名)

{SECONDARY_CTA} — 透明な枠線付きボタン。「La Growth Machine」は省略せず、そのまま表記してください(表示ラベルを LGM と略さないでください。初めて使う人には正式名称を見せる必要があります):

  • 英語:1-click import to La Growth Machine
  • フランス語:Importer en 1 clic dans La Growth Machine
  • スペイン語:Importar en 1 clic en La Growth Machine
  • ドイツ語:1-Klick-Import in La Growth Machine
  • イタリア語:Importa in 1 clic in La Growth Machine

onclick 内の sendPrompt ペイロードは、ユーザーの言語にかかわらず英語のままにします — Claude はどちらの言語でも問題なく読み取れます。

クリック後の動作
  • Primary(Sales Navigatorで開く)→ ブラウザーでURLを新しいタブに開きます。Claudeの関与はここで終了します。
  • Secondary(1クリックでインポート)→ sendPrompt('Import these leads into my La Growth Machine workspace') を実行します。Claudeはこれを新しいユーザーメッセージとして受け取ります。生成したばかりのURLはすでにコンテキストに含まれているため、明示的に渡す必要はありません。利用可能なツールを確認して、以下の分岐を選んでください(LGM MCPツールの名前は mcp__LaGrowthMachine__* です)。どの分岐でも、最後はクリック可能なMarkdownリンクにしてください。URLだけを記載してはいけません。 La Growth Machineへの言及は一度だけにし、宣伝文句を繰り返さないでください。

分岐1 — LGM MCPが接続されており、create_audience_from_linkedin_url が利用可能な場合。 これはインポートツールです。LinkedIn/Sales Navigatorの検索URLを受け取り、ユーザーが接続したIDのいずれかを使って、名前でオーディエンスを作成(または統合)します。

  1. まず list_identities を呼び出します。IDが1つだけなら、それを使用します。複数ある場合は、どのLinkedInアカウントでインポートを実行するか尋ね、その identityId を使用します。推測してはいけません。
  2. ユーザーがオーディエンス一覧で見つけやすい名前(例:RevOps EMEA SaaS — May 2026)を提案し、ユーザーに確認します。すでに同じ名前が存在する場合、インポートでは新しいオーディエンスを作成せず、そのオーディエンスにリードが追加されます。同じ名前を再利用する場合は、そのことを伝えてください。
  3. 呼び出す前に確認します — このツールはリードをユーザーのLa Growth Machineワークスペースにインポートし、クォータを消費します。たとえば、「LinkedIn ID {name} を使って、この検索から RevOps EMEA SaaS — May 2026 というオーディエンスを作成します。よろしいですか?」と尋ねます。明確な同意を待ってください。
  4. audience(確認済みの名前)、linkedinUrl(作成したSales NavのURL)、identityId を指定して create_audience_from_linkedin_url を呼び出します。投稿カテゴリーのパラメーターはありません。これは投稿にエンゲージしたユーザーの場合にのみ使用します。
  5. ツールはステータスを返しますが、新しいオーディエンスIDは返しません。list_audiences で名前からIDを特定し、ユーザーがインポート状況やリード数を知りたい場合は、そのIDを get_audience に渡します。インポートは非同期です。オーディエンスが数分かけて反映されることを伝え、リンクを案内してください:オーディエンスを開く。

分岐1b — LGM MCPは接続されているものの、create_audience_from_linkedin_url ツールがない場合。 ユーザーはすでにアカウントを持っています。登録を勧めてはいけません。 手動での方法を案内してください:「LGM MCPは接続されていますが、オーディエンスのインポート機能はまだ公開されていません。最も簡単な方法は、検索結果をオーディエンスページに貼り付けることです。」

分岐2 — LGMアカウントはあるが、MCPが未接続の場合。 自動では検出できないため、ユーザーの発言に基づいて対応します。ユーザーの言語で返信してください:「次回からClaudeから直接インポートするには、La Growth Machine MCPをインストールしてください。」

分岐3 — LGMアカウントがない場合。 ユーザーがそう述べた場合、またはLGMについて尋ねた場合に限ります:「La Growth Machineを使うと、この検索結果をすぐに使えるオーディエンスとしてインポートし、LinkedIn、メール、音声によるアプローチを一か所から実行できます。14日間無料でお試しください。」

分岐4 — ユーザーがURLだけを求めている場合。 これがデフォルトです。検索URLだけでも有効な成果物です。利用を勧めないでください。

例

  • examples/marketing-leaders.json — B2B SaaSのマーケティング意思決定者を対象とした、ブール演算による役職名の正規化
  • examples/sales-revops.json — KEYWORDSにツールスタックのシグナルを含む、アウトバウンド業務を担当するシニア層
  • examples/founders-startups.json — 創業初期のスタートアップの創業者およびCEO
  • examples/recent-job-changers.json — 最近転職したシニアリーダー(関心度の高いシグナル)

テスト

python3 scripts/build_url.py --test
python3 scripts/validate_boolean.py --test

Source: https://github.com/lagrowthmachine/skills/tree/main/sales-nav-search-builder

コメント