Skip to content
← Processes

Pull insights from call recordings

A name, company, or email resolves to the right call, checked against your CRM first and then your recordings tool, with the pointer written back for next time.

"Can you find the call where they mentioned X" is a five-minute detour for whoever gets asked — open the CRM, guess at which note has the link, fail, open the recording tool, search by a name that might not match how the call got logged, and often give up before finding it.

Most of the time the answer is already sitting in the CRM from the last person who looked — a pasted link in a note nobody thought to search for directly. The rest of the time, the recording tool itself resolves it in one search, by whichever identifier actually works. Either way, the pointer gets saved back, so the same lookup is instant next time.

What you get

The right call, with its link, date, participants and summary, returned in seconds and the pointer saved back to your CRM for next time.

The part worth getting right

Checking the CRM before the recording tool is what makes this fast most of the time — someone has usually already found this exact call and pasted the link somewhere, and re-deriving it from scratch every time wastes a search that a well-placed field or note already answered.

Searching by company domain, not just the exact person, is what catches the case a name-only search misses: a call is often recorded against whoever hosted it, not every attendee, so the person you were asked about may show up on a colleague's call instead of their own.

Writing the pointer back after a direct-query hit is what turns this from a one-off answer into a system that gets faster every time it runs. Skip that step and the same account gets the slow path again next time, indefinitely.

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.

# Find the recording of a call from a name or email

You have access to your CRM and a call-recording tool. Run this for
**[an email address or a company name]**.

## 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 CRM and your call-recording 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.

Never invent a call, a date, or a quote. "No call found" is a complete
and valid answer — don't reconstruct one from notes and present it as a
recording.

## 1. Normalize what you were given

- An email at a company domain gives you both a person and a company —
  keep both, since the call may be logged against a colleague rather
  than the exact person you were given.
- An email at a free mailbox (gmail, outlook, and similar) gives you a
  person only. Never infer a company from a free-mailbox domain.
- A bare company name may be ambiguous. Resolve it to one record before
  going further — two similarly-named companies is a question worth
  asking rather than a guess worth making.

## 2. Resolve the person or company in your CRM

Search by whichever axis you have — email for a person, name or domain
for a company. From a person record, read their linked company; from a
company record, list its people. If the company name was ambiguous,
confirm which record before continuing.

## 3. Check whether your CRM already has the recording

Most of the time, the pointer is already there — someone pasted the
link into a note, an interaction, or a dedicated field the last time
they found it. Check, in order:

- Any custom field on the company or contact record that looks like a
  recording link — list the record's custom fields first if you're not
  sure what it's called in your CRM, rather than assuming it's absent.
- Notes scoped to the company and the contact — search by company name,
  contact name, and the recording tool's own domain, since a pasted
  call URL contains it.
- Logged interactions — these often carry the link, or at minimum a
  date that narrows the next step to a single day.

If you find a match, that's the answer — return the most recent one,
and note how many others exist. There's no need to query the recordings
tool directly once the CRM already has the pointer.

## 4. Query your recordings tool directly, if the CRM had nothing

Search by the participant's exact email, and separately by the
company's domain over a reasonable window (a year back is a sensible
default) — the call may be recorded against a colleague rather than the
exact person you started from, which is exactly the case your CRM
couldn't answer. Fetch the matching call: title, date, duration,
participants, and a summary.

If several calls match, the most recent one wins — list the others
rather than dropping them silently. If searching by the person's own
address returns nothing, retry on the company domain before concluding
there's no call.

## 5. Return the call, and write the pointer back

Answer with: the call link, its date, the participants, and a one
paragraph summary — plus which CRM record it belongs to.

If the call was found by querying the recordings tool directly and your
CRM had no pointer to it, write it back — set the field, or log a note
— so the next lookup for this account is a step-3 hit instead of a
step-4 one.

## Output

Report: which step resolved the call (CRM pointer vs. direct query),
the call details, how many other matches existed if more than one, and
whether a pointer was written back to the CRM.

Questions about this process

Yes — an agent can check the CRM first, where the link is usually already saved, then query a call-recording tool directly if it isn't, resolving by participant email or company domain.

A clean "no call found" is treated as a complete, valid answer — it never reconstructs a call from notes and presents it as a recording.

By searching company domain as well as the exact person's email — a call is often recorded against whoever hosted it, not every attendee.

Yes — when a call is found directly and the CRM had no pointer to it, that pointer gets written back, so the next lookup hits the fast path.

Related processes

  • 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.

  • Call feedback becomes tickets and docs

    Every call recorded during the day is distilled overnight, with bugs and feature requests routed to the right team as tickets and docs, plus a Friday digest.

  • Find contacts for signal accounts

    Companies that already showed interest but have nobody linked get the right people found by role, deduped, and added to outreach automatically.

Experience Tulina for 14 days.

By continuing, you agree to our Terms of Use and Privacy policy.