• 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/スキル
SKILLOfficialproductivity

carta-fund-admin-requests

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

Cartaファンド管理チームに仕事を任せて進捗を追跡できます。チームが読んで対応し返信するリクエストを作成します。他のCartaスキルやコマンドでは対応できないことの最後の手段として機能します。 **起動トリガー:** 「Cartaに依頼して」「Cartaにやらせて」「ファンド管理チームに送って」「ファンド管理チームに連絡して」「Cartaでこれできる?」「リクエストの状況を確認して」「Cartaから返信来た?」「開いているリクエストは何?」「Cartaに返信して」「リクエストをフォローアップして」、および他のスキルやCartaコマンドで対応できない各種対応依頼(作成・変更・送付・言い換え・調整・分割・修正など) **使用しないでください:** - このプラグインのバグ・機能リクエストの報告(fa:create:feedback を直接呼び出してください) - Cartaのデータから答えられる質問(carta-explore-data を使用してください) - LPへの資本コール(出資要請)リマインダー(これはCartaコマンドであり、ファンド管理リクエストではありません)

原文を表示

Send work to your Carta Fund Admin team and track it. Opens a request the team reads, acts on, and replies to — the off-ramp for anything no other Carta skill or command can do. TRIGGER: "ask Carta to", "have Carta do", "send this to my fund admin", "ask my fund admin team", "can Carta do this for me", "check on my request", "did Carta reply", "what requests do I have open", "reply to Carta", "follow up on my request", plus ANY action request (create/change/send/restate/reconcile/split/fix) that no other skill or Carta command covers. NOT FOR: reporting a bug or feature request about this plugin (call fa:create:feedback directly); questions answerable from Carta data (use carta-explore-data); capital call reminders to LPs (that is a Carta command, not a Fund Admin request).

ユースケース
  • ファンド管理チームに作業を依頼したい
  • リクエストの進捗状況を確認したい
  • 他のスキルで対応できない業務を処理したい
  • ファンド管理チームからの返信内容を確認したい
本文(日本語訳)

Cartaに仕事を依頼する

リクエストを送信すると、あなたのCartaファンド管理チーム(資金運用業務を支援する専門チーム)が非同期で対応するケースが開かれます。ユーザーが何か実行してほしい場合で、他のスキルやCartaコマンドで対応できない時に使用する手段です。データベースの検索で終わるわけではなく、実質的な対応を依頼できます。

コマンド

コマンド名は正確に入力してください。<SERVER>は現在のセッションに接続しているCartaMCPサーバーを指します。

目的 呼び出し
新しいリクエストを送信 call_tool({"name": "fa__create__fund-admin-message", "arguments": {"message": "<message>"}})
リクエストと返答を確認 call_tool({"name": "fa__list__workflow-message", "arguments": {"workflow_id": <workflow_id>}})
既存のリクエストに返答 call_tool({"name": "fa__create__workflow-message", "arguments": {"workflow_id": <workflow_id>, "message": "<message>"}})
企業のリクエスト一覧を表示(スタッフのみ) call_tool({"name": "fa__list__workflow", "arguments": {"firm_uuid": "<firm_uuid>", "template_type": "request-generic", "page_size": 50}})

fa__create__fund-admin-messageはfirm_uuidを必要としません。リクエストは常にセッションのアクティブな企業に関するものです。{"workflow_id": <id>}が返され、これがケース番号になります。


ゲート0 — セッションとアクセス確認

  1. welcomeを呼び出してからget_current_userを呼び出す

  2. ファンド管理アクセスがない場合(fund_admin_accessが false)→ 以下を表示して停止:

    Cartaファンド管理チームへの業務委託にはCartaファンド管理プランへの加入が必要です。お使いのアカウントで加入が確認できませんでした。会社がCartaファンド管理を利用している場合は、設定 → 連携サービスでCartaを再度接続してください。それ以外の場合は、Cartaアカウントマネージャーにお問い合わせください。

  3. コマンドが見つからないか利用不可エラーが出た場合 → 以下を表示して停止:

    Cartaファンド管理チームへのメッセージング機能はまだこのアカウントで有効になっていません。

    再試行しないでください。メールや別の方法を提案しないでください。別の方法でチケットを開かないでください。


ゲート1 — 業務委託それとも質問か?【必須ゲート】

何かを起案する前に必ず実行してください。問題があると述べることは、それを修正するよう指示することではありません。どちらに転んでも推測は間違いです:ユーザーが送ってほしくないメッセージを送ってしまう、あるいは対応してほしいのにデータ回答をしてしまいます。

このゲートをスキップして進む場合 — 意図が明確な場合 — 以下のような表現がある場合です:

  • 業務委託の名指し(「Cartaに依頼してほしい」「ファンド管理チームに対応させたい」「これを送ってほしい」「Cartaでできる?」)
  • または、命令形の動詞と対象を含む直接指示(「8月の発生主義計上を修正してほしい」「Q3のコール分割をしてほしい」「LPA関連書類を修正してほしい」)

このゲートを実行する場合 — メッセージが単に問題を報告しているか、誰が対応するかを述べずに必要性を言っている場合です。シグナル:「おかしい」「正しくない」「ズレている」「合致していない」「Xが必要」「Xに対応してほしい」「Xに問題がある」

AskUserQuestionを呼び出します — 選択肢をマークダウンテキストとして書かないでください。マークダウンは実行を止めないため、自分で質問に答えることになります:

質問: 「これを調べてほしいのか、それともCartaチームに修正を依頼してほしいのか?」

選択肢:

  1. 調べてほしい — データを引き出して、何が起きているか見せる
  2. Cartaに修正を依頼してほしい — ファンド管理チームにリクエストとして送る
  3. 両方 — まずデータを見せて、必要なら修正を依頼する
ユーザーの選択 対応
調べてほしい 対応する領域スキルに引き継ぎ。メッセージは送らない
Cartaに修正を依頼してほしい フロー1に進む
両方 データから回答して、その後フロー1に戻り、送信前に確認する

フロー1 — リクエストを送信

確認なしでメッセージを送らないでください。 Cartaがユーザーの代わりに送信するため、ユーザーは毎回正確なテキストを確認する必要があります。

  1. 原案を作成。 ユーザーが述べたことから自分でメッセージを作成します。ファンド名または企業名、期間、金額、希望する結果を含めます。詳細があるほど、チームは戻って質問することなく対応できます。

  2. 確認。 AskUserQuestionツールを呼び出し、作成したメッセージを全文引用します。選択肢をマークダウンリストとしてレンダリングしないでください。テキストの選択肢リストは実行を止めず、送信は実際のユーザーのターンで阻止される必要があります:

    • 送信 — 原案のまま送信
    • 編集してから送信 — 修正を受け取り、修正案を作成し、再度確認
    • 送らない — 停止、メッセージなし、代替案なし
  3. 承認時に送信してから報告:

    あなたのCartaチームに送信しました — ケース <workflow_id>。チームがこれを対応し、ここで返答します。ご質問があれば確認してさせていただきます。

ターンアラウンドを推定しないでください。「24時間以内」のような言い方をしないでください。キューを知りません。

1回の呼び出しで1つのケースが開きます。関連のない2つの依頼は、1つの統合メッセージではなく、2つの呼び出しにしてください。


フロー2 — 対応中のリクエストを確認

スタッフの呼び出し元はfa__list__workflowでリスト表示できます。スタッフ以外の呼び出し元はまだリストコマンドがないため、ケース番号の入力を求めてください:

ケース番号があれば、特定のリクエストを引き出すことができます。すべての対応中リクエストのリスト表示は、お使いのアカウントではまだ利用できません。

リストされた行を3つのグループに分けます。statusを最初に読む — これは整数で、2と3は終了状態のため、行が誰のを待っているかより優先します:

グループ 出所 意味
完了 statusが2(完了)または3(キャンセル) クローズ済み
対応が必要なタスク last_task.templateがpending-customer Cartaから返答あり、ユーザーの対応が必要
対応中 last_task.templateがpending-cartaまたはnew Cartaが処理中

認識できないlast_task.templateは対応中に入ります — 隠さずに表示します。年代はlast_activity_atから取得し、ない場合はcreated_atにフォールバックします。

ステータスは送信済み(new)/ 処理中(pending-carta)/ ユーザーの対応待ち(pending-customer)/ 完了(status 2)/ キャンセル(status 3)と表示します — CartaWorkhubアーティファクトで使う同じ言葉です。それぞれはペイロードが証明できるイベントです。意図的に「受け取った」という状態がないのは、読んだことを示すものがないからです。

このペイロードに**stateフィールドと_linksブロック**はありません。読まないでください。自分でURLを構築しないでください。行はworkflow_cta_urlを含む場合だけ外へリンクします。workflow_detail_urlは顧客が開けない/staff/ルートなので、リンクとして使うことはありません。

各グループを独立したテーブルとしてレンダリングし、#を最初に置いてユーザーが番号で開けるようにします:

# リクエスト ステータス 年代
1 Q3資本コール分割 ユーザーの対応待ち 2日前

request-genericはダイレクトメッセージワークフロー(直接メッセージングの一種)なのでサブジェクトがありません。request_typeが実際の作業を示す場合はそこからリクエストラベルを取得します。空白または汎用的な場合(other、general、request-generic)、thread_metadata.message_snippetにフォールバックし、必要ならスレッドの冒頭メッセージを読みます。1行に切り詰めます。ラベル自体をリンク — 別の「開く」や「表示」列は作らない。対応が必要なタスクを最初に、次に対応中を表示。完了は求められない限り数字に折りたたみます。

閉じ方:

番号を入力してそのケースを開く、または:[N] 新規リクエスト  [R] 更新

フロー3 — リクエストを読む

fa__list__workflow-messageはスレッド全体を1回の呼び出しで両方向返します。author.is_staffはCartaが書いたものを示します。

会話としてレンダリングします。古い順に — 「あなた」と「Carta」。content_textを使用します。空白の場合はcontent_htmlにフォールバックしてタグを削除します。

Cartaの内部エージェント出力を絶対に表示しないでください。 実行ログなし、エージェント名やシステム名なし、内部メタデータなし、スタッフの下書きメモなし。スタッフメッセージは、クライアント向けテキストとCartaで見直すリンクとしてレンダリング — それだけです。メッセージが完全に内部的な場合、言い換えるのではなく省略します。

ボールがCartaにあるかユーザーにあるか明確に述べ、その後:

1 - Cartaに返答   ← 推奨
2 - Cartaで開く
3 - キューに戻る

フロー4 — 返答

フロー1と同じ確認を含める。AskUserQuestionツール:原案作成、正確なテキストを表示、明確なはい、その後同じworkflow_idでfa__create__workflow-message。返答が実際に聞かれたことに答えるよう、スレッドをまず読みます。以下で確認:

ケース**<workflow_id>**に返答を送信しました。

その後キューに戻るを提供します。


何か問題が起きた場合

状況 対応
メッセージが単に問題を報告し、誰が対応するか述べていない ゲート1 — 起案する前に質問、決して手渡しと思い込まない
確認オプションをマークダウンで書いた。AskUserQuestionを呼び出していない 停止してツールを呼び出す。テキストリストは送信を止めない
ファンド管理サブスクリプションなし ゲート0メッセージ、停止
アカウントでメッセージング有効になっていない ゲート0メッセージ、停止 — 再試行なし、別チャネルなし
セッションにアクティブな企業がない list_contextsを呼び出してからset_context。1回再試行
fa__create__fund-admin-messageがworkflow_idを返さない リクエストが作成されていない可能性があると伝え、再送する前にCartaチームに確認するよう促す — 自動再送はしないでください。2つ目のケースが開きます
ユーザーがリクエスト一覧を求めているがスタッフではない フロー2非スタッフメッセージ、ケース番号を依頼
原文(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>

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

Ask Carta to do something

A request opens a case your Carta Fund Admin team works async. It is the answer whenever the user wants something done and no other skill or Carta command can do it — not a dead end, and never a warehouse query instead.

Commands

Names are verbatim. <SERVER> is whichever Carta MCP server this session has.

Intent Call
Send a new request call_tool({"name": "fa__create__fund-admin-message", "arguments": {"message": "<message>"}})
Read a request + Carta's replies call_tool({"name": "fa__list__workflow-message", "arguments": {"workflow_id": <workflow_id>}})
Reply on an existing request call_tool({"name": "fa__create__workflow-message", "arguments": {"workflow_id": <workflow_id>, "message": "<message>"}})
List a firm's requests (staff only) call_tool({"name": "fa__list__workflow", "arguments": {"firm_uuid": "<firm_uuid>", "template_type": "request-generic", "page_size": 50}})

fa__create__fund-admin-message takes no firm_uuid — the request is always about the session's active firm. It returns {"workflow_id": <id>}, the case number.


Gate 0 — session + access

  1. Call welcome, then get_current_user.

  2. No Fund Admin access (fund_admin_access false) → surface verbatim and stop:

    Sending work to a Carta Fund Admin team needs a Carta Fund Administration subscription. I can't find one on your account. If your firm uses Carta Fund Admin, reconnect Carta in Settings → Connectors; otherwise reach out to your Carta account manager.

  3. Command missing or erroring as unavailable → surface verbatim and stop:

    Messaging your Carta Fund Admin team isn't enabled for this account yet.

    Do not retry. Do not suggest email or another channel. Do not open a ticket by some other route.


Gate 1 — is this a hand-off or a question? [Hard gate]

Run this before drafting anything. A statement that something is wrong is not the same as an instruction to fix it, and guessing is wrong in both directions: a message the user never wanted sent, or a data answer when they wanted work done.

Skip this gate — the intent is explicit — when the message names the hand-off ("ask Carta to", "have my fund admin", "send this to", "can Carta do this") or gives a direct instruction with an imperative verb and an object ("restate the August accrual", "split the Q3 call", "re-paper the LPA").

Fire this gate when the message only reports a problem or states a need, with no verb saying who acts. Signals: "looks wrong", "isn't right", "is off", "doesn't tie", "we need X", "can you deal with X", "something's up with X".

Call AskUserQuestion — do not write the options as markdown text, because markdown does not block execution and you will answer your own question:

Question: "Do you want me to look into this, or ask your Carta team to fix it?"

Options:

  1. Look into it — pull the data and show you what's going on
  2. Ask Carta to fix it — send it to your Fund Admin team as a request
  3. Both — show you the data first, then send a request if you still want one
User picks Action
Look into it Hand off to the matching domain skill. Send nothing.
Ask Carta to fix it Proceed to Flow 1.
Both Answer from data first, then return to Flow 1 and confirm before sending.

Flow 1 — Send a request

Never send an unconfirmed message. It leaves Carta on the user's behalf, so they see the exact text first, every time.

  1. Draft it. Write the message yourself from what the user said. Include the fund or entity name, the period, the amounts, and the outcome they want. Detail is what lets the team act without coming back to ask.

  2. Confirm. Call the AskUserQuestion tool with the drafted message quoted in full. Do not render the choices as a markdown list — a written list is not a gate, and the send must block on a real user turn:

    • Send it — send as drafted
    • Edit first — take their changes, redraft, confirm again
    • Don't send — stop, no message, no fallback
  3. Send on approval, then report:

    Sent to your Carta team — case <workflow_id>. They'll pick it up and reply here. I'll check for a response whenever you ask.

Never estimate a turnaround. Never say "within 24 hours" or similar — you do not know the queue.

One call opens one case. Two unrelated asks are two calls, not one merged message.


Flow 2 — What's open

Staff callers list with fa__list__workflow. Non-staff callers have no list command yet, so ask for the case number instead:

I can pull up a specific request if you have its case number. Listing every open request isn't available to your account yet.

Group listed rows into three. Read status first — it is an integer, and 2 and 3 are terminal, so they outrank whoever the row is pending on:

Group Comes from Means
Completed status is 2 (complete) or 3 (canceled) Closed
Tasks to complete last_task.template is pending-customer Carta replied; needs the user
In progress last_task.template is pending-carta or new Carta has it

An unrecognised last_task.template goes under In progress — show it rather than hide it. Age comes from last_activity_at, falling back to created_at.

Status reads Sent (new) / Working (pending-carta) / Ready for you (pending-customer) / Done (status 2) / Canceled (status 3) — the same words the Carta Workhub artifact uses. Each is an event the payload can prove; there is deliberately no "received", because nothing marks a read.

There is no state field and no _links block on this payload. Do not read either, and do not build a URL yourself. A row links out only when it carries workflow_cta_url; workflow_detail_url is a /staff/ route a customer cannot open, so it is never used as a link.

Render each group as its own table, # first so the user can open one by number:

# Request Status Age
1 Split the Q3 capital call Ready for you 2d

request-generic is a DM workflow, so it has no subject. Take the request label from request_type when it names a real job; when it is empty or generic (other, general, request-generic), fall back to thread_metadata.message_snippet, and read the opening message of the thread if you need a better one. Trim to one line. Link the label itself — never a separate "Open" or "View" column. Show Tasks to complete first, then In progress; collapse Completed to a count unless asked.

Close with:

Enter a number to open that case, or: [N] New request  [R] Refresh

Flow 3 — Read a request

fa__list__workflow-message returns the whole thread in one call, both directions. author.is_staff marks what Carta wrote.

Render it as a conversation, oldest first — "You" and "Carta". Use content_text; when it is empty fall back to content_html with the tags stripped.

Never surface Carta's internal agent output. No run logs, no agent or system names, no internal metadata, no staff scratch notes. A staff message renders as its client-facing text plus a link to review it in Carta, and nothing else. If a message is entirely internal, omit it rather than paraphrasing it.

State plainly whether the ball is with Carta or the user, then:

1 - Reply to Carta   ← recommended
2 - Open in Carta
3 - Back to queue

Flow 4 — Reply

Same confirmation as Flow 1, including the AskUserQuestion tool: draft, show the exact text, get an explicit yes, then fa__create__workflow-message on the same workflow_id. Read the thread first so the reply answers what was actually asked. Confirm with:

Reply sent on case <workflow_id>.

Then offer Back to queue.


If something goes wrong

Situation Response
Message only reports a problem, names no actor Gate 1 — ask before drafting; never assume a hand-off
You wrote the confirm options as markdown instead of calling AskUserQuestion Stop and call the tool. A written list does not block the send
No Fund Admin subscription Gate 0 message; stop
Messaging not enabled for the account Gate 0 message; stop — no retry, no other channel
No active firm in the session Call list_contexts, then set_context; retry once
fa__create__fund-admin-message returns no workflow_id Say the request may not have been created and to check with their Carta team before resending — do not resend automatically, it would open a second case
User asks to list requests but is not staff Flow 2 non-staff message; ask for a case number
workflow_id not found Wrong case number — ask them to confirm it
User wants to attach a file Not supported yet: describe the document in the message and say the team will ask for it
User is reporting a plugin bug Not a Fund Admin request — call fa:create:feedback directly

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