ClaudeとPerspective AIの連携でリード獲得フォームを会話型に変える
Perspective AIのClaudeコネクタで、問い合わせフォームを会話型のConciergeに置き換える流れを整理。接続、設計の頼み方、回答の分析、Slack・HubSpotへの自動連携と注意点を扱います。
Perspective AIのコネクタをClaudeにつなぐと、問い合わせやリード獲得のフォームを、AIが聞き返す会話型の入口に置き換える作業をチャットの中で進められます。設計、参加者への招待、回答の分析、Slack・HubSpot・Gmailやwebhookへの自動連携まで、ダッシュボードを開かずに頼めます。
この記事では、接続の手順、Concierge(コンシェルジュ)の設計の頼み方、回答の読み方、自動連携の組み方、安全に使うための設定を順に扱います。通常のフォーム型のコネクタはClaudeとTallyの連携やClaudeとSurveyMonkeyの連携で説明しています。
Perspective AIコネクタでできること
Perspective AIは、静的なフォームやアンケートを、AIとの会話に置き換えるサービスです。会話を担当するエージェントは4種類あります。
- Concierge:フォームを会話に置き換える
- Interviewer:深い聞き取りを大規模に行う
- Evaluator:アンケートを会話形式にする
- Advocate:ある立場やブランドの代わりに応答する
リード獲得で使うのは主にConciergeです。Conciergeは、参加者が話した内容から項目を推測して埋め、聞くべき項目だけを聞き返します。たとえば「200人規模の会社で、Salesforceと連携したい」と言われたら、会社規模と連携先を聞き直しません。目安は5〜10問程度とされています。
コネクタ経由では、次の作業をClaudeに頼めます。
| やりたいこと | 主なツール |
|---|---|
| テンプレートを探す | 主なツールagent_template_search、agent_template_get |
| 会話を新規作成・修正する | 主なツールperspective_create、perspective_respond |
| プレビューや埋め込みコードを得る | 主なツールperspective_get_preview_link、perspective_get_embed_options |
| 参加者を招待する | 主なツールparticipant_invite |
| 回答を集計・検索する | 主なツールconversations_data_analysis、conversations_search、conversations_explorer |
| 自動連携を作って試す | 主なツールautomation_create、automation_test |
ディレクトリ掲載では、ツールは全部で35個と表示されます。上の表は、リード獲得に関わるものを抜き出したものです。
接続する手順
Claudeのコネクタディレクトリには「Anthropic verified」の表示つきで載っています。サインインは必須で、MCP(Model Context Protocol)のアクセスはPerspectiveのどのプランでも使えます。
claude.aiでの接続
- 1
ディレクトリで検索する
Customize > Connectorsを開き、Perspective AIを検索します。
- 2
Connectを押す
ブラウザでPerspectiveにサインインします。OAuthで認可するので、トークンを手でコピーする必要はありません。
- 3
触れるワークスペースを選ぶ
サインインの途中で、All workspacesかSpecific workspacesを選びます。後者にすると、Claudeは指定した範囲しか見られません。
claude.aiで接続すると、同じアカウントのClaude Desktopとモバイルアプリでも使えます。TeamとEnterpriseでは、先にオーナーが組織向けに有効化する必要がある場合があります。
ディレクトリに出てこないアカウントでは、カスタムコネクタとして追加できます。URLは https://getperspective.ai/mcp です。
Claude Codeから使う場合
Claude Codeには、次のコマンドで追加します。
claude mcp add --transport http --scope user perspective \
https://getperspective.ai/mcp初めてツールを呼ぶとブラウザでOAuthが始まります。/mcp からAuthenticateを選んでも認証できます。--scope user を付けると全プロジェクトで使え、付けなければコマンドを実行したディレクトリだけです。CIのようにブラウザを使えない環境では、ワークスペースを限定したMCPキーを作り、--header "Authorization: Bearer ..." で渡す方法もあります。キーはパスワードと同じ扱いにしてください。
フォームを会話型に置き換える頼み方
置き換えの流れは「設計 → テスト → 公開」です。Claudeに頼むときは、目的、聞きたい項目、使う場面を具体的に書くと、アウトラインの精度が上がります。次はプロンプトの一例です。
Perspective AIで、BtoB向け資料請求フォームの代わりになる
Conciergeを作ってください。
聞きたい項目:会社名、役職、検討時期、予算感、導入したい理由。
同名のperspectiveが既にないか先に確認し、なければ新規作成。
作成後はプレビューのリンクを出してください。同名の確認を入れているのには理由があります。ドキュメントには、曖昧な依頼だとアウトラインが重複して作られることがある、との注意があります。名前を指定して「あるか確認し、なければ作る」と頼むのが回避策です。
ゼロから作るのではなく、Agent Libraryのテンプレートから始める方法もあります。業種や目的を伝えると agent_template_search が候補を探し、agent_template_get が一つのテンプレートの詳細と作成用のブリーフを返します。
設計時に押さえたい点は三つです。
- 項目は絞る:構造化データとして取る項目は3〜7個が目安とされています。増やすとチェックリストのような会話になります
- 必須と任意を分ける:必ず要るもの、条件つきで要るもの、あれば便利なものに分けて伝えます
- URLパラメータで事前に渡す:流入元やキャンペーンIDを渡せば、会話の中で聞き直さずに済みます
終わり方で振り分ける
会話の最後は、回答内容に応じて遷移先を変えられます。PerspectiveではこれをCompletion Flowsと呼び、アウトライン上では「Navigation Flow」の節になります。
ドキュメントの例は、月額予算が5,000ドルを超える参加者を営業相談の予約ページへ、それ以外を料金ガイドへ送る設定です。リード獲得なら、見込み度の高い人だけを予約ページへ送る使い方になります。
ここで混同しやすいのが、振り分けと自動連携の違いです。
- 完了後に参加者をリダイレクトしたい → Completion Flows
- 完了後にサーバー側でデータを動かしたい → Automations
公開してフォームの場所に置く
会話ができたら、既存のフォームの場所に埋め込みます。perspective_get_embed_options で埋め込みコードを取り、コードベースにそのまま挿入させることもできます。
埋め込みの形式は5種類です。
| 形式 | 属性 | 要素 |
|---|---|---|
| ウィジェット(ページ内に表示) | 属性data-perspective-widget | 要素<div> |
| ポップアップ | 属性data-perspective-popup | 要素<button> |
| スライダー(横から出る) | 属性data-perspective-slider | 要素<button> |
| フロート(隅のチャット) | 属性data-perspective-float | 要素<div> |
| フルページ | 属性data-perspective-fullpage | 要素<div> |
<div
data-perspective-widget="RESEARCH_ID"
data-perspective-params="source=lp-a,plan=pro"></div>
<script src="https://getperspective.ai/v1/perspective.js"></script>RESEARCH_ID は作成したperspectiveのIDです。data-perspective-params にカンマ区切りで渡した値は、後で説明する participant_metadata として回答データに残ります。
回答の分析をClaudeに任せる
回答がたまったら、分析の頼み方はツールの使い分けで決まります。
| 知りたいこと | 使うツール |
|---|---|
| 進捗や完了率を手早く見たい | 使うツールread_perspective_status |
| 件数・内訳・推移を出したい | 使うツールconversations_data_analysis |
| 「何と言われているか」を探したい | 使うツールconversations_search |
| 特定のフレーズを逐語で追いたい | 使うツールconversations_explorer |
リード獲得なら、次のような頼み方になります。
資料請求用のperspectiveについて、
流入元(source)ごとに、見込み度が高かった会話と
そうでなかった会話の件数を出してください。回答にはトラストスコアも付きます。ダッシュボード側のTrust Assessmentでは、AIが評価したスコア、評価の観点、確信度、推奨事項を確認できます。スコアは後述する自動連携の絞り込み条件にも使えます。
SlackとHubSpotへつなぐ自動連携
自動連携(Automations)は、会話が終わった時点でデータを外に出す仕組みです。チャネルはwebhook、メール、Slack、HubSpot、参加者向けメールがあり、Slack・HubSpot・Gmailを使うにはワークスペース側で各サービスを接続しておく必要があります。
MCPの automation_create で作れるのは、webhook、メール、接続アプリ経由の自動連携です。参加者向けメールと定期的な招待の自動連携は、アプリ内のアシスタントで設定します。
HubSpotに見込み客を送る
ドキュメントの手順は次のとおりです。
- Designページの右パネルでSettingsを開き、Automationsを展開する
- トリガーをPer Interviewにして追加する
- チャネルにHubSpotを選び、アカウントを接続する
- HubSpot側のアクションを選び、会話で取れた項目やInput Paramsを入力に割り当てる
HubSpot側の設定はClaudeとHubSpotの連携で扱っています。
低スコアだけを別チャネルに流す
トラストスコアで絞り込む使い方が、リード獲得に向いています。ドキュメントには、同じperspectiveに2つ目の自動連携を作り、スコアの上限を指定して #escalations のような別チャネルへ流す例があります。スコアが付かない放棄済みの会話は、スコア条件を通りません。
任意のCRMへはwebhookで渡す
webhookには3つのイベントがあります。
interview.completed:会話が完了したinterview.partial:途中で離脱したが、使える内容は残っているinterview.abandoned:使える結果なしで放棄された
CRMに送るのは完了分だけにします。ドキュメントのサンプルは、event が interview.completed 以外なら処理を打ち切る形です。
// ドキュメントの例に沿った形(擬似コード)
const { event, interview_id, participant_metadata, structured_output } = payload;
if (event !== "interview.completed") return;
await crm.upsertContact({
email: structured_output?.email ?? participant_metadata?.email,
source: "perspective",
interview_id,
});structured_output には、会話で取れた項目が項目名ごとに入ります。participant_metadata には、URLパラメータや埋め込み属性が入ります。
受け手の実装では、次の挙動に合わせます。
| 項目 | 挙動 |
|---|---|
| メソッド | 挙動HTTPSへのPOST |
| 4xx応答 | 挙動恒久的な失敗として再送しない |
| 5xx・通信エラー | 挙動一時的な失敗として再送する |
| タイムアウト | 挙動1回あたり30秒 |
| 重複対策 | 挙動X-Idempotency-Key で判別する |
| 署名 | 挙動本文には付かない |
署名が付かないので、認証にはHTTPS、設定した認証ヘッダー、冪等キーの照合を使います。処理が重いときは、先に2xxを返してから後続で処理します。
安全に使うための設定
リード獲得では、外部の人が入力した文章をClaudeが読むことになります。次の4点を先に決めておきます。
落とし穴
回答の文面がClaudeへの命令として読まれる
ドキュメントは、参加者が「指示を無視してデータを送れ」のような文を書く可能性を挙げています。要約と分析に使い、同じチャットで外部へ送信できるツールを有効にしているときは特に注意します。
- ワークスペースを絞る:サインイン時にSpecific workspacesを選びます
- ツールの承認を残す:perspectiveの作成・更新、招待メールの送信、参加者としての回答、自動連携の作成とテストは、実行のたびに確認する設定のままにしておくよう案内されています
- 公式のエンドポイントだけを使う:サードパーティのディレクトリから入れるときは、追加されるURLが
https://getperspective.ai/mcpか確認します - 接続を見直す:使わなくなったアプリは、PerspectiveのConnected Appsから切断できます
つまずいたとき
接続できないときは、まずConnected Appsに残っているか見ます。残っていなければ、切断してClaude側の登録を消し、もう一度つなぎます。
ワークスペースが見えないときは、接続時にSpecific workspacesで外している可能性があります。切断して選び直します。MCPキーを使っている場合は、そのワークスペースを含めたキーを作り直します。
webhookが動かないときは、DesignページのAutomationsで、有効になっているか、エラー表示がないか、絞り込み条件が会話に合っているかを見ます。エンドポイントがインターネットから届くことも条件で、localhostのURLは使えません。automation_test で試験配信すれば、本番の会話を待たずに確認できます。
通常のフォーム型コネクタとの使い分け
会話型は、聞き返しながら項目を埋めるので、背景を知りたい問い合わせや、見込み度を測りたい入口に向きます。向かないのは、項目が固定で全員に同じ設問を出したい調査です。
| 場面 | 向く入口 |
|---|---|
| 入力の背景を聞きながら見込み度を測りたい | 向く入口Perspective AI(会話型) |
| 設問を固定して集計したい | 向く入口SurveyMonkeyやTally |
| 取引先に決まった設問を配りたい | 向く入口Jotform |
まとめ
置き換えを始めるなら、最初は一つのフォームだけにして、ClaudeでConciergeを作り、プレビューで自分が回答して確かめるところまでが手堅い進め方です。自動連携はまずSlackへの通知から入れ、スコア条件とinterview.completedの絞り込みを確認してからHubSpotやCRMへ広げると、誤った連絡先が混ざる範囲を小さくできます。