claude-skills/

Anthropic公式スキル・プラグインの日本語ディレクトリ

last sync 22h ago
スキルOfficialproductivity

📄carta-download-tearsheet

プラグイン
carta-investors

説明

Carta上のポートフォリオ企業およびファンドのティアシートをダウンロードします。 次のような場合に使用: - 「[投資先企業] のティアシートを作成して」 - 「全ポートフォリオ企業のティアシートをダウンロードして」 - 「[投資先企業] のティアシートをプレビューして」

原文を表示

Download tear sheets for your portfolio companies and funds on Carta. Use when asked to "create a [portco] tear sheet", "download tear sheet for all portfolio companies", or "preview the tear sheet for [portco]".

ユースケース

  • 投資先企業のティアシートをダウンロードしたい
  • ポートフォリオ企業の情報を取得したい
  • ファンドのティアシートをダウンロードしたい

本文(日本語訳)

ティアシート ダウンロード

概要

Carta上のポートフォリオ企業(portco)およびファンドのティアシートをダウンロードします。

このスキルは、利用可能なテンプレートとポートフォリオ企業をインタラクティブに提示し、 選択内容に応じて適切なワークフローへルーティングします:

  • 全ファンドにわたる全 portco → 「Download All」フロー: ファンド内訳が不要な高速パス
  • 特定の portco(1社以上) → 「Bulk」フロー: ファンド内訳を構築し、非同期 ZIP アーカイブを生成。完了まで定期ポーリングを行い、ダウンロード URL を提供

次のような場合に使用

  • 「[Portco] のティアシートを作成して」
  • 「[Portco] のティアシートを生成して」
  • 「全ポートフォリオ企業のティアシートをダウンロードして」
  • 「一括ティアシートパッケージを作成して」
  • 「[Portco] のティアシートをプレビューして」
  • 「[Fund] 内の全 portco のティアシートを生成して」
  • 「全ティアシートを ZIP でダウンロードして」
  • その他のトリガーフレーズ: "tear sheet for portco"、"tear sheets for all portcos"、"preview tear sheet"、"generate tear sheet PDF"、"create tear sheet"、"download tear sheet package"、"download all tear sheets"

前提条件

  • Carta MCP サーバーが接続済みであること
  • ファーム(firm)コンテキストがアクティブであること。未設定の場合は、他のコールを行う前に list_contexts を呼び出し、次に対象の firm_id を指定して set_context を呼び出すこと
  • ファンド UUID や portco UUID を事前に知っておく必要はない — どちらも fa:list:tearsheet_templates および fa:list:portfolio_companies を通じてインタラクティブに解決される

データ取得

MCP コマンド 用途
call_tool({"name": "fa__list__tearsheet_templates", "arguments": {}}) ファームで利用可能な PDF テンプレートを一覧表示
call_tool({"name": "fa__list__portfolio_companies", "arguments": {}}) 全ポートフォリオ企業をファンドグループとともに一覧表示
call_tool({"name": "fa__mutate__download_all_tearsheets", "arguments": {...}}) 全 portco 対象の非同期ジョブを開始(高速パス)
call_tool({"name": "fa__mutate__start_tearsheet_download", "arguments": {...}}) 特定の portco サブセット対象の非同期一括ジョブを開始
call_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) 非同期ジョブの完了をポーリング。"pending" またはダウンロード URL を返す

Gate 0: ファームコンテキスト

ファームコンテキストがアクティブであることを確認してください。 セッション内で初めて MCP を呼び出す場合、または後続のコールがファーム/コンテキストエラーで失敗した場合:

  1. list_contexts を呼び出し、アクセス可能なファームを確認する
  2. 対象の firm_id を指定して set_context を呼び出す

ユーザーにファーム UUID を尋ねる必要はありません — MCP セッションがアクティブなファームを追跡しています。


Gate 1: テンプレートの選択

以下を呼び出します:

call_tool({"name": "fa__list__tearsheet_templates", "arguments": {}})

ユーザーがドキュメント名を指定した場合(例: "Investment Summary"、"Fund Summary"、"Tear Sheet"): テンプレートの name フィールドと照合します(大文字・小文字を区別しない部分一致)。

  • 一致あり: ユーザーに確認する:

    「テンプレート 'Investment Summary' が見つかりました — これを使用しますか?」

    「はい」の場合は保存して続行。「いいえ」の場合はテーブル全体を表示する。

  • 一致なし: ユーザーに通知した上で、テーブル全体を表示する:

    「このファームに 'Investment Summary' という名前のテンプレートは見つかりませんでした。 利用可能なテンプレートを表示します — どれを使用しますか?」

ドキュメント名が指定されなかった場合:

  • テンプレートが1つ: 続行前にユーザーに確認する

  • テンプレートが複数: テーブルを表示し、番号で選択するよう促す:

    | # | id | 名前 | 向き | 粒度レベル | 説明 |
    |---|----|------|------|-----------|------|
    | 1 | aaa-... | Q4 2024 Standard | landscape | fund | — |
    | 2 | bbb-... | Annual Summary   | portrait  | company | Annual LP report |
    

テンプレートの idTEMPLATE_UUID、名前を TEMPLATE_NAME として保存します。


Gate 2: ポートフォリオ企業の選択

以下を呼び出します:

call_tool({"name": "fa__list__portfolio_companies", "arguments": {}})

このコマンドはポートフォリオ企業の配列を返します。 各アイテムには nameentity_link_idfund_uuid が含まれます。

fund_uuid でグループ化し、番号付きテーブルで表示します:

## Acme Fund I
| # | 企業名 | entity_link_id | fund_uuid |
|---|--------|----------------|-----------|
| 1 | Portco Alpha | el-uuid-1 | fund-uuid-1 |
| 2 | Portco Beta  | el-uuid-2 | fund-uuid-1 |

## Acme Fund II
| # | 企業名 | entity_link_id | fund_uuid |
|---|--------|----------------|-----------|
| 3 | Portco Gamma | el-uuid-3 | fund-uuid-2 |

ユーザーに選択を促します:

  1. 全ファンドにわたる全 portco
  2. 特定ファンド内の全 portco
  3. 特定の企業 — 行番号または entity_link_id で指定

Gate 3: ルーティング

ユーザーが portco を選択した後:

  • 全ファンドにわたる全 portco が選択された場合Download All フロー へ進む
  • 1社以上の特定 portco が選択された場合FUND_BREAKDOWNS を構築し、Bulk フロー へ進む

Download All フロー(全 portco)

開始前に確認サマリーを提示してください — ユーザーの明示的な承認なしに処理を進めてはなりません:

以下の内容でティアシートを生成する準備ができました:

  テンプレート:  <TEMPLATE_NAME> (<TEMPLATE_UUID>)
  スコープ:      全ファンドにわたる全 portco

続行しますか? (yes/no)

「Download All」コマンドで一括ジョブを開始します:

call_tool({"name": "fa__mutate__download_all_tearsheets", "arguments": {
  "template_uuid": "<TEMPLATE_UUID>"
}})

ジョブが開始されたことをユーザーに伝え、ポーリングを開始します。

完了までポーリングcall_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) を 30秒おきに、最大10回(合計5分)呼び出します:

  • レスポンスが "pending" → 進捗を表示し(「処理中です... (試行 N/10)」)、待機する
  • レスポンスに URL が含まれる → ジョブ完了。DOWNLOAD_URL として記録する
  • レスポンスがエラーメッセージ → エラーを提示して処理を停止する

タイムアウト時(10回の試行が終了した場合): ジョブがまだ実行中の可能性があることをユーザーに伝え、「Check tearsheet download status」と尋ねることで手動確認できる旨を案内してください。

成功時: ダウンロードリンクを提示します:

  • アーティファクトを直接ダウンロードしようとしないでください。必ずダウンロードリンクを提示してください。
ティアシートの準備ができました!

[ティアシートをダウンロード](<DOWNLOAD_URL>)

> 注意: このリンクは一時的なものであり、有効期限が切れます — 早めにダウンロードしてください。

Bulk フロー(複数 portco)

FUND_BREAKDOWNS を構築します — fund_uuid ごとに entity_link_id をグループ化:

[
  {"fund_uuid": "fund-uuid-1", "entity_link_ids": ["el-uuid-1", "el-uuid-2"]},
  {"fund_uuid": "fund-uuid-2", "entity_link_ids": ["el-uuid-3"]}
]

開始前に確認サマリーを提示してください — ユーザーの明示的な承認なしに処理を進めてはなりません:

以下の内容で一括ティアシートを生成する準備ができました:

  テンプレート:  Q4 2024 Standard (aaa-...)
  対象 portco:   2ファンドにわたる3社

    Acme Fund I
      - Portco Alpha
      - Portco Beta
    Acme Fund II
      - Portco Gamma

続行しますか? (yes/no)

一括ジョブを開始します:

call_tool({"name": "fa__mutate__start_tearsheet_download", "arguments": {
  "template_uuid": "<TEMPLATE_UUID>",
  "fund_breakdowns": <FUND_BREAKDOWNS>
}})

ジョブが開始されたことをユーザーに伝え、ポーリングを開始します。

完了までポーリングcall_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) を 15秒おきに、最大20回(合計5分)呼び出します:

  • レスポンスが "pending" → 進捗を表示し(「処理中です... (試行 N/20)」)、待機する
  • レスポンスに URL が含まれる → ジョブ完了。DOWNLOAD_URL として記録する
  • レスポンスがエラーメッセージ → エラーを提示して処理を停止する

タイムアウト時(20回の試行が終了した場合): ジョブがまだ実行中の可能性があることをユーザーに伝え、「Check tearsheet download status」と尋ねることで手動確認できる旨を案内してください。

成功時: ダウンロードリンクを提示します:

  • アーティファクトを直接ダウンロードしようとしないでください。必ずダウンロードリンクを提示してください。
ティアシートの準備ができました!

[ティアシートをダウンロード](<DOWNLOAD_URL>)

> 注意: このリンクは一時的なものであり、有効期限が切れます — 早めにダウンロードしてください。

エラーハンドリング

  • ファームコンテキストエラー: list_contexts および set_context を呼び出してコンテキストを再設定する
  • テンプレートが返されない: そのファームにティアシートテンプレートが設定されていない可能性があります。Carta アプリを確認するか、サポートに連絡してください
  • portco が返されない: そのファームにポートフォリオ企業が存在しない可能性があります。正しいファームコンテキストがアクティブになっているか確認してください
  • 一括ジョブの失敗: テンプレートまたは portco の選択が無効な可能性があります。別の選択肢で再試行してください
  • 自動的に再試行しないでください — エラーの全内容を提示し、ユーザーに判断を委ねてください
原文(English)を表示

<!-- Part of the official Carta AI Agent Plugin -->

Download Tearsheet

Overview

Download tear sheets for your portfolio companies and funds on Carta.

The skill presents available templates and portfolio companies interactively, then routes to the appropriate workflow based on the selection:

  • All portcos across all funds → Download All: fast path — no fund breakdown needed.
  • Specific portcos (one or more) → Bulk: builds fund breakdowns, async ZIP archive, polled until complete, download URL provided.

When to Use

  • "Create a [Portco] tear sheet"
  • "Generate a tear sheet for [Portco]"
  • "Download tear sheet for all portfolio companies"
  • "Create a bulk tear sheet package"
  • "Preview the tear sheet for [Portco]"
  • "Generate tear sheets for all portcos in [Fund]"
  • "Download all tear sheets as a ZIP"
  • Other trigger phrases: "tear sheet for portco", "tear sheets for all portcos", "preview tear sheet", "generate tear sheet PDF", "create tear sheet", "download tear sheet package", "download all tear sheets".

Prerequisites

  • The Carta MCP server must be connected.
  • A firm context must be active. If not set, call list_contexts then set_context with the target firm_id before any other call.
  • No fund UUID or portco UUID needs to be known in advance — both are resolved interactively via fa:list:tearsheet_templates and fa:list:portfolio_companies.

Data Retrieval

MCP Command Purpose
call_tool({"name": "fa__list__tearsheet_templates", "arguments": {}}) List available PDF templates for the firm
call_tool({"name": "fa__list__portfolio_companies", "arguments": {}}) List all portfolio companies with their fund groupings
call_tool({"name": "fa__mutate__download_all_tearsheets", "arguments": {...}}) Start an async job for all portcos (fast path)
call_tool({"name": "fa__mutate__start_tearsheet_download", "arguments": {...}}) Start an async bulk job for a specific portco subset
call_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) Poll for async job completion; returns "pending" or a download URL

Gate 0: Firm Context

Ensure a firm context is active. If this is your first MCP call in the session, or if subsequent calls fail with a firm/context error:

  1. Call list_contexts to see which firms are accessible.
  2. Call set_context with the target firm_id.

You do not need to ask the user for a firm UUID — the MCP session tracks the active firm.


Gate 1: Select Template

Call:

call_tool({"name": "fa__list__tearsheet_templates", "arguments": {}})

If the user mentioned a document name (e.g. "Investment Summary", "Fund Summary", "Tear Sheet"): match it against the template name field (case-insensitive, partial match).

  • Match found: Confirm with the user:

    "Found template 'Investment Summary' — is this the one you want?"

    If yes, store it and continue. If no, show the full table.

  • No match found: Tell the user, then show the full table:

    "No template named 'Investment Summary' was found for this firm. Here are the available templates — which one would you like to use?"

If no document name was mentioned:

  • One template: Confirm with user before proceeding.

  • Multiple templates: Show table, ask user to select by number:

    | # | id | Name | Orientation | Grain Level | Description |
    |---|----|------|-------------|-------------|-------------|
    | 1 | aaa-... | Q4 2024 Standard | landscape | fund | — |
    | 2 | bbb-... | Annual Summary   | portrait  | company | Annual LP report |
    

Store as TEMPLATE_UUID (the template id) and TEMPLATE_NAME.


Gate 2: Select Portfolio Companies

Call:

call_tool({"name": "fa__list__portfolio_companies", "arguments": {}})

The command returns an array of portfolio companies. Each item includes name, entity_link_id, and fund_uuid.

Group them by fund_uuid and display a numbered table:

## Acme Fund I
| # | Company Name | entity_link_id | fund_uuid |
|---|--------------|----------------|-----------|
| 1 | Portco Alpha | el-uuid-1      | fund-uuid-1 |
| 2 | Portco Beta  | el-uuid-2      | fund-uuid-1 |

## Acme Fund II
| # | Company Name | entity_link_id | fund_uuid |
|---|--------------|----------------|-----------|
| 3 | Portco Gamma | el-uuid-3      | fund-uuid-2 |

Ask the user to choose:

  1. All portcos across all funds
  2. All portcos in a specific fund
  3. Specific companies — by row number or entity_link_id

Gate 3: Route

After the user selects portcos:

  • All portcos across all funds selected → proceed to Download All Flow.
  • One or more specific portcos selected → build FUND_BREAKDOWNS and proceed to Bulk Flow.

Download All Flow (all portcos)

Present a confirmation summary before starting — never proceed without explicit user approval:

Ready to generate tearsheets for all portfolio companies:

  Template:  <TEMPLATE_NAME> (<TEMPLATE_UUID>)
  Scope:     All portcos across all funds

Proceed? (yes/no)

Start the bulk job using the download-all command:

call_tool({"name": "fa__mutate__download_all_tearsheets", "arguments": {
  "template_uuid": "<TEMPLATE_UUID>"
}})

Tell the user the job has started and polling will begin.

Poll for completion — call call_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) every 30 seconds, up to 10 attempts (5 minutes total):

  • Response is "pending" → print progress ("Still processing... (attempt N/10)") and wait.
  • Response contains a URL → job complete. Capture as DOWNLOAD_URL.
  • Response is an error message → surface it and stop.

On timeout (10 attempts exhausted): Tell the user the job may still be running and they can check manually by asking: "Check tearsheet download status".

On success: Present the download link:

  • DO NOT try to download the artifact directly. ALWAYS present the download link.
Your tear sheets are ready!

[Download Your Tear Sheets](<DOWNLOAD_URL>)

> Note: this link is temporary and will expire — download it soon.

Bulk Flow (multiple portcos)

Build FUND_BREAKDOWNS — group entity_link_ids by fund_uuid:

[
  {"fund_uuid": "fund-uuid-1", "entity_link_ids": ["el-uuid-1", "el-uuid-2"]},
  {"fund_uuid": "fund-uuid-2", "entity_link_ids": ["el-uuid-3"]}
]

Present a confirmation summary before starting — never proceed without explicit user approval:

Ready to generate bulk tearsheets:

  Template:  Q4 2024 Standard (aaa-...)
  Portcos:   3 companies across 2 funds

    Acme Fund I
      - Portco Alpha
      - Portco Beta
    Acme Fund II
      - Portco Gamma

Proceed? (yes/no)

Start the bulk job:

call_tool({"name": "fa__mutate__start_tearsheet_download", "arguments": {
  "template_uuid": "<TEMPLATE_UUID>",
  "fund_breakdowns": <FUND_BREAKDOWNS>
}})

Tell the user the job has started and polling will begin.

Poll for completion — call call_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) every 15 seconds, up to 20 attempts (5 minutes total):

  • Response is "pending" → print progress ("Still processing... (attempt N/20)") and wait.
  • Response contains a URL → job complete. Capture as DOWNLOAD_URL.
  • Response is an error message → surface it and stop.

On timeout (20 attempts exhausted): Tell the user the job may still be running and they can check manually by asking: "Check tearsheet download status".

On success: Present the download link:

  • DO NOT try to download the artifact directly. ALWAYS present the download link.
Your tear sheets are ready!

[Download Your Tear Sheets](<DOWNLOAD_URL>)

> Note: this link is temporary and will expire — download it soon.

Error Handling

  • Firm context error: Call list_contexts and set_context to re-establish context.
  • No templates returned: The firm may not have tearsheet templates configured. Check the Carta app or contact support.
  • No portcos returned: The firm may not have portfolio companies. Verify the correct firm context is active.
  • Bulk job failure: Template or portco selection may be invalid. Retry with different selections.
  • Never retry automatically — surface the full error and let the user decide.

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