Carta(企業投資ポートフォリオ管理サービス)のポートフォリオ企業とファンドのティアシート(投資概要資料)をダウンロードできます。ティアシートのリクエストについては、carta-lp-reporting-routing を使用してください。
Download tear sheets for your portfolio companies and funds on Carta. For tear sheet requests, use carta-lp-reporting-routing instead.
Carta で保有企業およびファンドのティアシート(企業概要書)をダウンロードできます。
このスキルは利用可能なテンプレートと保有企業をインタラクティブに提示し、選択内容に応じて適切なワークフローにルーティングします。
list_contexts を呼び出してから set_context で対象の firm_id を設定してください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": {...}}) |
すべての保有企業の非同期ジョブを開始(高速処理) |
call_tool({"name": "fa__mutate__start_tearsheet_download", "arguments": {...}}) |
特定の保有企業の非同期一括ジョブを開始 |
call_tool({"name": "fa__get__tearsheet_download_status", "arguments": {}}) |
非同期ジョブの完了を確認。"pending" またはダウンロード URL を返す |
企業コンテキストが有効になっていることを確認してください。セッション内で初めての MCP 呼び出しの場合、または後続の呼び出しが企業/コンテキスト エラーで失敗した場合:
list_contexts を呼び出してアクセス可能な企業を確認set_context で対象の firm_id を指定ユーザーに企業 UUID を尋ねる必要はありません。MCP セッションがアクティブな企業を追跡します。
以下を呼び出します:
call_tool({"name": "fa__list__tearsheet_templates", "arguments": {}})
ユーザーがドキュメント名を指定した場合(例:「Investment Summary」「Fund Summary」「Tear Sheet」)、テンプレートの name フィールドと照合します(大文字小文字を区別せず、部分一致で検索)。
一致が見つかった場合:ユーザーに確認
「テンプレート『Investment Summary』が見つかりました。これを使用しますか?」
「はい」の場合は保存して続行。「いいえ」の場合は全テーブルを表示
一致が見つからない場合:ユーザーに通知し、全テーブルを表示
「この企業で『Investment Summary』という名前のテンプレートは見つかりませんでした。利用可能なテンプレートは以下の通りです。どれを使用しますか?」
ドキュメント名が指定されていない場合:
テンプレートが 1 つ:続行前にユーザーに確認
複数のテンプレート:テーブルを表示し、番号で選択するよう要求
| # | id | 名前 | 向き | 粒度 | 説明 |
|---|----|----|------|------|-----|
| 1 | aaa-... | 2024 Q4 標準 | 横向き | ファンド | — |
| 2 | bbb-... | 年間サマリー | 縦向き | 企業 | 年間 LP レポート |
TEMPLATE_UUID(テンプレートの id)と TEMPLATE_NAME として保存
以下を呼び出します:
call_tool({"name": "fa__list__portfolio_companies", "arguments": {}})
このコマンドは保有企業の配列を返します。各項目には name、entity_link_id、fund_uuid が含まれます。
fund_uuid でグループ化して番号付きテーブルを表示:
## Acme ファンド I
| # | 企業名 | entity_link_id | fund_uuid |
|---|--------|---|-----|
| 1 | ポルトコ Alpha | el-uuid-1 | fund-uuid-1 |
| 2 | ポルトコ Beta | el-uuid-2 | fund-uuid-1 |
## Acme ファンド II
| # | 企業名 | entity_link_id | fund_uuid |
|---|--------|---|-----|
| 3 | ポルトコ Gamma | el-uuid-3 | fund-uuid-2 |
ユーザーに次のいずれかを選択するよう依頼:
ユーザーが保有企業を選択後:
FUND_BREAKDOWNS を構築して一括処理 フロー(複数保有企業)に進む開始前に確認サマリーを表示します。ユーザーの明示的な承認なしに進まないでください:
すべての保有企業のティアシートを生成する準備ができました:
テンプレート:<TEMPLATE_NAME> (<TEMPLATE_UUID>)
対象: すべてのファンドのすべての保有企業
続行しますか?(はい/いいえ)
ダウンロード一括コマンドを使用してジョブを開始:
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 回目)」)して待機DOWNLOAD_URL として取得タイムアウト時(10 回の試行を超過):ジョブがまだ実行中である可能性があり、手動で確認できることをユーザーに通知。「ティアシート ダウンロード ステータスを確認して」と依頼
成功時:ダウンロード リンクを表示
ティアシートの準備ができました!
[ティアシートをダウンロード](<DOWNLOAD_URL>)
> 注:このリンクは一時的なもので、有効期限があります。早めにダウンロードしてください。
FUND_BREAKDOWNS を構築します。entity_link_id を 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"]}
]
開始前に確認サマリーを表示します。ユーザーの明示的な承認なしに進まないでください:
一括ティアシートを生成する準備ができました:
テンプレート:Q4 2024 標準 (aaa-...)
保有企業: 2 ファンドにまたがる 3 社
Acme ファンド I
- ポルトコ Alpha
- ポルトコ Beta
Acme ファンド II
- ポルトコ Gamma
続行しますか?(はい/いいえ)
一括ジョブを開始:
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 回目)」)して待機DOWNLOAD_URL として取得タイムアウト時(20 回の試行を超過):ジョブがまだ実行中である可能性があり、手動で確認できることをユーザーに通知。「ティアシート ダウンロード ステータスを確認して」と依頼
成功時:ダウンロード リンクを表示
ティアシートの準備ができました!
[ティアシートをダウンロード](<DOWNLOAD_URL>)
> 注:このリンクは一時的なもので、有効期限があります。早めにダウンロードしてください。
list_contexts と set_context を呼び出してコンテキストを再確立<!-- 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>
<!-- Part of the official Carta AI Agent Plugin -->
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:
list_contexts then set_context with the target firm_id before any other call.fa:list:tearsheet_templates and fa:list:portfolio_companies.| 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 |
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:
list_contexts to see which firms are accessible.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.
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.
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:
After the user selects portcos:
FUND_BREAKDOWNS and proceed to Bulk Flow.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):
"pending" → print progress ("Still processing... (attempt N/10)") and wait.DOWNLOAD_URL.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:
Your tear sheets are ready!
[Download Your Tear Sheets](<DOWNLOAD_URL>)
> Note: this link is temporary and will expire — download it soon.
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):
"pending" → print progress ("Still processing... (attempt N/20)") and wait.DOWNLOAD_URL.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:
Your tear sheets are ready!
[Download Your Tear Sheets](<DOWNLOAD_URL>)
> Note: this link is temporary and will expire — download it soon.
list_contexts and set_context to re-establish context.原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。