Draft the quarterly LP letter
Portfolio metrics gathered from founder updates and dashboards, drafted into your quarterly letter, with every figure carrying the date it was reported.
- TriggerTriggered
Quarterly schedule
- CompletedGmail
Collect the founder updates
- Completed
Name who did not report
- CompletedGoogle Sheets
Reconcile against fund records
- CompletedNotionClaude
Draft the letter
- Completed
Hand over the exceptions
The quarterly LP letter is three days of gathering and an afternoon of writing. Someone searches the mailbox for every founder update, copies figures into a sheet, notices that four companies have not reported, chases them, reconciles what came back against the fund's own records, and only then starts drafting. The gathering is where the time goes and where the errors enter.
The updates are all in one mailbox and the fund's records are in one sheet. The join between them is mechanical, and so is the check that the quarter's totals still add up. What any of it means is not, and that is where a partner's afternoon should go.
What you get
A quarterly draft where every portfolio figure carries the date and source it came from, companies that reported nothing are named rather than omitted, and the fund-level numbers reconcile.
The part worth getting right
Every figure carries the date it was reported, not the date of the quarter it appears under. Founder updates arrive on their own schedules, and an update sent in the sixth week of a quarter contains numbers from the fifth. Presented under a quarter-end heading with no date attached, those become quarter-end numbers, and the letter drifts away from accuracy without anyone having decided anything. The date is a single extra field that keeps the whole document defensible.
Companies that did not report stay in the letter by name. The instinct is to carry last quarter's figures forward, because a gap looks like an omission and a number looks complete. But a company that stopped reporting is the one an LP most needs to hear about, and carrying its figures means it keeps appearing at a valuation nobody has revisited for a year.
Discrepancies are handed to a partner rather than resolved. A founder reporting strong growth against a carrying value the fund has not moved is either a stale valuation or an optimistic founder, and which one it is has consequences. A draft that averages the two, or silently prefers the fund's number, removes the question from view at the exact moment somebody should be asking it.
The prompt
The real prompt behind the steps above — detailed enough that an agent with a people-search tool, email/phone enrichment, and CRM access can run it as written.
# Draft the quarterly LP letter
You have access to email, a spreadsheet, and a documentation tool. Run
this at **[quarter end]**.
## 0. Set up (skip if you're already connected)
If you don't already have live tool access for this, connect it
first. This prompt is only as real as the tools behind it:
1. Create a free account at app.tulina.ai.
2. Add Tulina's MCP server to your assistant: https://mcp.tulina.ai/mcp
3. In Tulina, connect your own API keys for the tools this
prompt uses: your email, a spreadsheet, and your documentation tool.
Once connected, your assistant has real tool access and the rest of
this prompt runs as written.
## 0b. Already on Tulina? Three things around the run
An account and the MCP server are not the whole setup. Two of these come
before the run below and one after it, and together they turn this from a
one-off answer into a process your workspace keeps:
1. **Activate this process's connectors first.** Call
`oto_connector(op="list")`, match it against the tools named in step 3
above, and `oto_connector(op="select", name="...")` every one that
isn't active yet. Selecting a connector does not mount its tools in the
conversation you're already in — reach them through `oto_call` for this
run, or open a fresh conversation once they're all on.
2. **Attach the work to an existing project.** `oto_project(op="list")`
shows your active org's projects: pick the one this work belongs to
rather than opening another, and keep its id. The project is where this
process, the tables it writes to and the connectors it uses hang
together.
3. **When the run is done, save it as a process — with its graph.** Write
the body with `oto_procedure(op="set", ...)`, then attach it with
`oto_project(op="link", project_id=..., target_type="procedure",
target_ref="<your slug>")`. The body has to carry a drawing: read
`oto_guide(op="read", slug="procedure-flowchart")` and follow it
exactly — ONE untagged fenced block in that grammar, opening with the
trigger and a quoted example of what you'd type to start a run. Tulina
parses that drawing back into the graph it renders as the process's
default view, which is what makes it come out in the same style as
every other process in the app; a drawing the grammar can't read falls
back to raw characters instead. Saving a process needs org-admin
rights — without them, hand the finished body to someone who has them.
This document goes to limited partners. A number without a date and a
source on it does not belong in the draft.
## 1. Collect the founder updates for the quarter
Search the mailbox for updates from each portfolio company covering
the quarter. Match on the company's domain rather than on a founder's
name, since founders change and forwarded updates arrive from
whichever partner received them.
For each company, extract what was reported and the date it was
reported: revenue, growth, runway in months, headcount, and any
financing event.
Record the reporting date alongside every figure. A revenue number
from an update sent six weeks into the quarter is not a quarter-end
number, and presenting it as one is the most common way these letters
become quietly wrong.
## 2. Name the companies that did not report
List every portfolio company with no update this quarter, with the
date of their last one.
Do not fill the gap from the previous quarter's figures, and do not
drop them from the letter. Silently carrying a stale number forward is
how a company that stopped reporting six months ago keeps appearing at
a valuation nobody has checked. Non-reporting is itself information
and LPs are entitled to it.
## 3. Reconcile against the fund's own records
Pull the fund's holdings from the spreadsheet: ownership, cost basis,
current carrying value, and any valuation change in the quarter.
Cross-check every company's self-reported figures against what the
fund has recorded. Where they disagree, flag it rather than choosing
one. A founder reporting growth against a carrying value that has not
moved is a discrepancy a partner should resolve, not something a draft
should quietly average.
Compute the fund-level numbers: total value, unrealised gains,
realisations in the quarter, and remaining capital. Check they
reconcile with the previous quarter plus this quarter's movements. If
they do not, report the difference rather than the total.
## 4. Draft the letter
Structure it: fund-level position, material changes this quarter,
company-by-company notes, then realisations and outlook.
Rules:
- Every figure carries its source and its reporting date.
- Companies with no update appear with their last reporting date, not
with old figures.
- Discrepancies between founder-reported and fund-recorded numbers are
listed for a partner, not resolved in the draft.
- No forward-looking claims about a company beyond what the founder
themselves stated, attributed to them.
Write it into the documentation tool as a draft. Partners add the
judgement, which is the part LPs are actually paying for.
## 5. Hand over the exceptions
Produce a short list before the letter: companies that did not report,
figures that disagree with fund records, and any fund-level total that
failed to reconcile. That list is the partner's work queue and should
be dealt with before the letter goes out.
## Output
Report: companies with updates found, companies that did not report
and their last reporting date, figures whose reporting date falls
outside the quarter, discrepancies against fund records, whether the
fund-level numbers reconciled, and the draft's location.
Questions about this process
Related processes
- Draft the monthly investor update
Revenue, pipeline, the plan's own targets, and last month's commitments are pulled together into a draft with the numbers already in it.
- Keep your knowledge base current
Every morning, the previous day's activity gets read across your team's tools and synthesized into what changed, automatically and unattended.
- Publish the Monday brief
Product usage, pipeline, and customer feedback joined into one executive report, published before the team sits down.