An internal research desk with a searchable answer archive
Anyone at the company posts a question, picks quick or deep, and gets a sourced answer that is filed and searchable so nobody researches it twice.
I want an internal research desk that anyone at the company can open instead of pinging the team with "can someone look this up". Build it as an app with an ask screen, a live queue, an answer view, and a searchable archive.
The main screen is the queue: every submitted research question, newest first, showing the question, who asked it, whether they chose quick or deep, the current status (checking, running, answered, failed), when it was submitted, and what it cost. Clicking a row opens the full answer. Keep the queue and its in-flight state in the app's own stored data so a refresh or a second viewer sees the same list, and file completed answers into Notion as described below.
Submitting starts on an Ask screen. The person types their question, enters or picks their name, and chooses Quick or Deep before they submit. As soon as a question has been typed, and before the submit button does anything, the app searches the existing archive using Notion Query a Data Source against the answers database and shows any close matches inline under the box: the earlier question, the date it was answered, who asked it, and the opening of the stored answer. This dedupe step is the whole point of the app, so make it prominent. If there is a match, "Use this answer" is the primary action and starting a new run is the secondary one. Only spend credits when the person explicitly chooses to.
Quick questions run through Exa Answer, which returns a written answer with citations in a single call. Deep questions go to Exa Create Agent Run with a higher effort tier and a budget cap on maximum cost in dollars, and the app polls Exa Get Agent Run while the queue is open until the run reports completed or failed, updating the row's status as it goes. Use a low effort tier for Quick and a high one for Deep, expose the exact tiers and the spending cap in a settings screen, and treat a failed or budget-exhausted run as a visible failed row with the reason on it, never a silent drop.
For every source behind an answer, fetch readable text with Exa Get Contents so a reader can inspect a citation without leaving the app. Render answers so each claim sits next to the sources that support it: inline numbered markers in the answer text, a sources panel beside it listing title, domain and link, and an expandable panel holding the extracted text for each source. Never render an answer as a wall of text with the links dumped at the bottom.
When an answer completes, file it into a Notion database with Notion Create a Page: the question as the page title, and properties for the requester, the date, the effort tier used, the cost in dollars, and the source URLs, with the full answer body and the source list written as page content. Let the person add a short topic tag before it files. If the target database is missing a property the app needs, say which ones to add rather than failing silently.
The archive screen reads back from Notion with Query a Data Source, with a search box over the questions and filters for requester, date range and tag. Opening an archived entry shows the stored answer and its sources the same way the live answer view does. Any colleague can correct or annotate a stored answer from that screen: pull the page's blocks with Retrieve Block Children, let them edit the answer text or add a correction note, and save it back with Notion Update a Block, recording who changed it and when.
Cost and effort belong in the open, not buried in a detail view. Show the cost figure Exa returns on each answer, agent run and contents fetch, show the effort tier beside every question in the queue and on the answer page, and put a running total for the current week at the top of the queue so the team can see what the desk is spending.
What does this prompt do?
- One shared queue where anyone posts a research question, picks how deep to go, and watches it get answered
- Checks your own archive first, so a question someone already asked surfaces the old answer before you spend anything
- Quick questions come back in seconds, deeper ones kick off a full web research job and report back when they finish
- Every answer shows its sources next to the claims they support, plus what it cost and how deep it went
- Finished answers are filed into Notion and stay searchable, and any colleague can correct or annotate one
What do I need to use this?
- An Exa account and its API key, which powers the web research and the written answers
- A Notion workspace with a database for filed answers, shared with your Notion connection
- Fields in that database for the question, answer, sources, date and requester
- A rough sense of who will be asking, if you want to track requests by person or team
How can I customize it?
- Set the spending cap on deep research so one question can never run away with your credits
- Change what gets stored with each answer: team, project, topic tags, or a confidence rating alongside the basics
- Adjust how strict the duplicate check is, from exact repeats only through to anything on a similar topic
FAQs
Do I need to be technical to ask a question?
What is the difference between quick and deep?
Will it stop us paying twice for the same question?
Can I trust the answers?
Does it work with a Notion database we already have?
What happens if an answer turns out to be wrong?
Related templates
See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.
Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.
Open one screen to find every unavailable, stale, or low-battery device in your smart home, see which hub is really at fault, and clear out the dead entries in bulk.
See every open model your teams run in production, who approved it, and whether a quiet license change means it needs another look.
Stop checking a dozen agency sites by hand. Open one board of live solicitations, each scored against what your team can actually bid on.
Describe a market in plain English, get a live landscape of matching companies, expand it from any name you like, and keep every map in Notion.
Stop pinging the team every time something needs looking up.
Give everyone one place to ask, and one archive that remembers every answer you have already paid for.