• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLKnowledge Workproductivity

search-investors

プラグイン
carta-crm
ソース
GitHub で見る ↗
説明

Carta CRM から投資家レコードを検索・取得します。 次のような場合に使用: ユーザーが「投資家を見つけて」「投資家を検索して」「投資家を調べて」「[名前]の投資家詳細を表示して」「[名前]の全情報を見せて」「[名前]について教えて」「投資家をIDで取得」「投資家をリスト表示」「現在どんな投資家がいるのか」「/search-investors」などと言った場合。 投資家の ID、名前、カスタムフィールド(独自に追加・設定した項目)など、投資家の詳細情報を返します。返された投資家 ID は、「投資家更新スキル」(update-investor スキル)と組み合わせて使用できます。

原文を表示

Searches for and retrieves investor records from the Carta CRM. Use this skill when the user says things like "find an investor", "search investors", "look up an investor", "show me investor details for [name]", "full details on [name]", "tell me about [name]", "get investor by ID", "list investors", "what investors do we have", or "/search-investors". Returns investor details including ID, name, and custom fields. The investor ID returned can be used with the update-investor skill.

ユースケース
  • 投資家を名前で検索する
  • 投資家をIDで取得する
  • 投資家の詳細情報を確認する
  • 投資家をリスト表示する
本文(日本語訳)

<!-- carta:instrumentation-fallback --> <重要事項> _instrumentation_v2 は Carta スキルの利用状況を記録する匿名のテレメトリ(利用データ)です。Carta MCP ツール呼び出しの引数に必ず含めてください。プラグインのフックが実行時に上書きするため、常に送信しても安全です。形式は以下の通り: _instrumentation_v2: {"skills": ["<プラグイン>:<スキル>", ...], "model": "<モデルID>", "surface": "<値>"}

skills はセッション中に累積されます。これまでに読み込まれたすべての Carta スキルを列挙してください。このリクエストを実行した 1 つだけでなく、すべてを対象とします。各エントリを "プラグイン:スキル" 形式でネームスペースし、古い順に並べて、最も最近使用したスキルを最後に置いてください。Carta スキル(carta-cap-table:*、carta-crm:*、carta-investors:*)のみをリストしてください。Carta 以外のプラグインのスキルは含めないでください。

surface は Claude を実行している環境です:"chat"(claude.ai または Claude アプリの通常のチャット、Cowork ではない)、"cowork"(Cowork モード)、"code-terminal"、"code-desktop"、"excel"。これらのいずれにも当てはまらない場合、または不確実な場合は完全に省略してください。推測や造語は避けてください。 </重要事項>

概要

Carta CRM で投資家を検索します。特定の投資家 1 社に関するリクエストはその投資家の詳細情報を表示し、複数の投資家に関するリクエストはテーブルを表示します。最初にこの区別で分岐してください。以下のすべての処理はこれによって決まります。

ステップ 1 — ユーザーの意図を判定:1 社か、複数か?

  • 詳細表示 — ユーザーが投資家の名前を 1 つ挙げて詳細情報を求めている:「Preqin の詳細情報が欲しい」「Index Ventures について教えてください」「この投資家についてもっと知りたい」「Preqin とは」 → ステップ 2 へ
  • リスト表示 — ユーザーが複数の投資家、フィルタ済みの結果、または複数形で結果を求めている:「パイプラインの投資家」「シード期の投資家」「うちにはどんな投資家がいるか」 → ステップ 3 へ
  • ID で指定 — ユーザーが投資家 ID を直接指定した → ステップ 2 へ(名前解決をスキップ)

ユーザーが「検索してほしい」や「探してほしい」と言っていても、特定の投資家 1 社を名前で挙げていれば詳細表示リクエストです。意図が不明確な場合は、リスト表示として扱い、何を絞り込みたいのかを確認してください。

ステップ 2 — 詳細表示:名前を解決してから詳細情報を表示

crm_view_tool ではなく crm_call_tool を使用して解決してください。 このステップはあなたのためのもので、ユーザーのためではありません。ビュー(表示)呼び出しはレスポンス内の配列をすべてカウントに変換するため、行データと ID があなたに届かず、ユーザーは求めていないリストを見ることになります。

crm_call_tool({
  "name": "crm:search_investors",
  "arguments": { query: "<投資家名>", limit: 10 }
})

返されたマッチ数に応じて分岐してください:

  • 正確に 1 件のみマッチ → その詳細情報を表示して終了:
    crm_view_tool({ "name": "crm:get_investor", "arguments": { id: "<id>" } })
    
  • 複数件マッチ → 推測しないでください。候補をビューで表示し、どれか確認してください:
    crm_view_tool({
      "name": "crm:search_investors",
      "arguments": { query: "<投資家名>", limit: 10 }
    })
    
    その後「複数の投資家がマッチしています。どちらのことですか?」と聞きます。ユーザーが選んだら、その投資家に対して get_investor を呼び出してください。企業は共通の語幹を持つことが多い(「Index」「Index Ventures」など)ため、確認なしで上位ヒットを開くと、間違ったレコードを完全な信頼感で表示してしまいます。
  • マッチなし → その旨を伝える。空のビューは表示しないでください。

ユーザーが ID を直接指定した場合、解決の必要はありません。1 回の呼び出しで 1 つの詳細情報を表示するだけです。

リクエスト 1 件に対して最大 1 件の詳細情報を表示してください。ユーザーが複数の投資家を名前で挙げた場合は、複数のビューを重ねるのではなく、どの投資家を開くかを確認してください。

ステップ 3 — リスト表示:検索してテーブルを表示

crm_view_tool({
  "name": "crm:search_investors",
  "arguments": {
    query: "<検索キーワード>",
    limit: 20
  }
})

ユーザーがもっと結果を見たいと言ったら limit を増やしてください。offset を使ってページネーション(複数ページ表示)に対応してください。

ビュー(表示)が利用できない場合

CRM ビューは組織ごとに有効化されており、単一レコードのビューはその上にさらにフラグが必要です。したがって上記の crm_view_tool 呼び出しはこう返すかもしれません:

CRM tool 'search_investors' has no view — call it with crm_call_tool instead.

(CRM ツール 'search_investors' にはビューがありません。代わりに crm_call_tool で呼び出してください。)

これは失敗ではなく、正常なレスポンスです。この組織はそのビューを有効にしていません。その 1 回の呼び出しを crm_call_tool で 同じ内容で リトライし、ステップ 4 に従ってテキストで結果を提示してください。crm_view_tool を再試行しないでください。ユーザーにメッセージを報告しないでください。

ビューがない詳細表示リクエストも同様に解決します。ステップ 2 の crm_call_tool 解決を保持し、選ばれたレコードをテキストで提示してください。

ステップ 4 — 結果を提示

ビューが表示されたとき、ユーザーはレコード全体を見ています。フィールドを言い直さないでください。ユーザーが求めた質問に答えるか、1 行で承認してください。

テーブルが表示されたとき、ユーザーはすべての行を既に見ています。テキストで改めて列挙、再フォーマット、または要約しないでください。テーブルが重複するためです。ユーザーが実際に求めた質問に答えるか、1 行で承認してください(例:「9 件の投資家が見つかりました。ID は最初のカラムに表示されており、/update-investor で使用できます」)。

crm_call_tool にフォールバック(切り替え)したとき、空でないすべてのフィールドを読みやすい要約で表示し、ID を目立つように表示してください。ユーザーは /update-investor を実行するときに ID が必要になります。

投資家が見つからない場合:

「検索に一致する投資家が見つかりません。別の名前またはキーワードをお試しください。」

原文(English)を表示

<!-- carta:instrumentation-fallback --> <IMPORTANT> _instrumentation_v2 is anonymous Carta skill-usage telemetry. ALWAYS include it in your Carta MCP tool-call arguments — the plugins' hooks overwrite it when they run, so always sending it is safe. Shape: _instrumentation_v2: {"skills": ["<plugin>:<skill>", ...], "model": "<model-id>", "surface": "<value>"} skills is cumulative for the session: list every Carta skill loaded so far, not only the one driving this call. Namespace each entry "plugin:skill" and keep them oldest-first, with the most recently used skill last. List only Carta skills (carta-cap-table:*, carta-crm:*, carta-investors:*) — never skills from non-Carta plugins. surface is the Claude surface you are running in: "chat" (claude.ai or the Claude app, i.e. regular chat, not Cowork), "cowork" (Cowork mode), "code-terminal", "code-desktop", or "excel". Omit it entirely if none of those describe your surface or you cannot tell — do not guess and do not invent another value. </IMPORTANT>

Overview

Look up investors in the Carta CRM. A request about one named investor renders that investor's card; a request for a set renders a table. Route on that distinction first — it decides every call below.

Step 1 — Determine intent: one investor, or a set?

  • Detail — the user named one investor and wants the record: "full details on Preqin", "tell me about Index Ventures", "more on this investor", "who is Preqin". → Step 2.
  • List — the user wants a set, or filtered or plural results: "investors in my pipeline", "seed-stage investors", "what investors do we have". → Step 3.
  • By ID — the user gave an investor ID → Step 2, skipping the resolve.

A named single investor is a detail request even when the user says "search" or "find". If it's genuinely unclear, treat it as a list and ask what they want to narrow to.

Step 2 — Detail: resolve the name, then render the card

Resolve through crm_call_tool, never crm_view_tool. This step is for you, not the user: a view call collapses every array in the response to a count, so the rows — and the id you need — never reach you, and the user gets a list they did not ask for.

crm_call_tool({
  "name": "crm:search_investors",
  "arguments": { query: "<investor name>", limit: 10 }
})

Then branch on how many candidates came back:

  • Exactly one match → render its card and stop:
    crm_view_tool({ "name": "crm:get_investor", "arguments": { id: "<id>" } })
    
  • Several matches → do NOT guess. Render the candidates as a view and ask which one:
    crm_view_tool({
      "name": "crm:search_investors",
      "arguments": { query: "<investor name>", limit: 10 }
    })
    
    Then ask: "Several investors match — which one did you mean?" When they pick, call get_investor for it. Firms often share a stem ("Index", "Index Ventures"), so opening the top hit unasked shows the wrong record with full confidence.
  • No match → say so; do not render an empty view.

When the user gives an ID outright, there is nothing to resolve — one call, one card.

Render at most one card per request. If the user named several investors, ask which to open rather than stacking views.

Step 3 — List: search and render the table

crm_view_tool({
  "name": "crm:search_investors",
  "arguments": {
    query: "<search term>",
    limit: 20
  }
})

Increase limit if the user asks to see more results. Use offset to paginate.

If the view is unavailable

CRM views are enabled per organisation, and single-record views behind a second flag on top of that. So any crm_view_tool call above may answer with:

CRM tool 'search_investors' has no view — call it with crm_call_tool instead.

That is a normal response, not a failure — this organisation does not have that view enabled. Retry that one call verbatim through crm_call_tool and present the result as text per Step 4. Do not retry crm_view_tool, and do not report the message to the user.

A detail request whose card has no view still resolves the same way: keep the crm_call_tool resolve from Step 2 and present the chosen record as text.

Step 4 — Present results

When a card rendered, the user sees the whole record. Do not restate its fields. Answer what they asked, or acknowledge in one line.

When a table rendered, the user already sees every row. Do NOT re-list, re-format, or summarise them as text — that duplicates the table. Answer the question they actually asked, or acknowledge in one line (e.g. "Found 9 investors — the ID is in the first column, for /update-investor.").

When you fell back to crm_call_tool, display all non-empty fields in a readable summary and show the ID prominently — the user will need it to run /update-investor.

If no investors are found:

"No investors found matching your search. Try a different name or keyword."

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。