Vasal asks Qloo one question that no podcast directory can answer: which people do this show's listeners love across every domain of taste, and how strongly? That lets a host book for fit rather than fame.
Without Qloo, a model alone guesses famous names and people who have already been on the show. The Without Qloo tab on every board shows it: on our first saved board, 7 of the model's 8 guesses had already been on the show, and across the seven saved boards it was 41 of 56.
It is live. Type any podcast at vasal.site and watch the agent work through Qloo, step by step, for about a minute.
Try it in two minutes:
- Open the first saved board, This Week in Startups. Click a guest, read the brief, click "Copy pitch", then click the "Without Qloo" tab.
- Click "Try your show" on vasal.site, type a show, pick the right match, and watch the board build.
- Open the proof page.
- Two more saved boards: Conan O'Brien Needs A Friend and Armchair Expert with Dax Shepard.
- Code and setup: github.com/ramakrishnanhulk20/Vasal
Inspiration
A host and a producer pick next week's guest from memory, from the news and from whoever the last guest suggested. Two things go wrong. The guest's fans are not the show's listeners, or the guest has already been on. Downloads follow guests, and podcast ads are sold by the thousand downloads, so a bad pick costs money.
Vasal is the doorway of a Tamil home, where a kolam is drawn each morning to welcome guests.
What it does
A host types a show. Vasal returns a ranked board of guests whose fans match the show's listeners, each with a fit score, the tastes the two audiences share and, where Qloo has the data, the audience group the guest's fans lean toward. On request, each guest gets a brief with five questions and a pitch email draft. Vasal never sends anything.
Four things a judge can check on the live site:
- A real agent. Claude works through Qloo's tools on every run, and each call appears on screen as it happens.
- The show's own history. Every name is checked against the show's episode feed, so past guests and hosts never reach the board, and the board says how far back the check reached.
- Proof written down first. The method was committed before any data existed, tested on 755 episodes, and published on the proof page with its limits.
- An open door for agents. Any MCP client can run the same booker with a free key from vasal.site/agents.
How we built it
A Claude Haiku 5.5 tool loop works through Qloo's Insights API:
- search to find the show
- insights for the people its listeners love
- demographics for who a guest's fans are
- compare for what two audiences share
- insights for the films, shows and books the audience is about to care about
- Qloo's harness package for name lookups
One final insights call scores every finalist, so the fits sit on one scale. Code computes every number. The model writes the angles and briefs, and code refuses any digit, link or claim it cannot back. The agent server runs on Railway with Postgres, and the web app is Next.js on Vercel.
Challenges we ran into
The Qloo quota is shared by every visitor, so every call reserves from a Postgres counter first, and a refused reservation spends nothing. Feeds and episode titles are text from strangers, so they are treated as data and fetched only from public addresses. Qloo has no audience data for many lesser-known guests, so the board shows the group a guest's fans lean toward only where that data exists, and the step list says when it does not. Qloo's hackathon host returned no trend data when we checked, so the app says a guest's trend is unknown instead of guessing.
Accomplishments that we're proud of
We wrote the test down before we pulled any data. Across 755 episodes of eight large shows, episodes in the top fifth by guest fit drew 1.55 times the median adjusted views of those in the bottom fifth. The pooled correlation is 0.14 (95% interval 0.07 to 0.21), and it was positive in all eight shows. It is small and it shows association, not cause. A suite of 1,142 passing tests, and a prove command that checks the live API from outside, back the build.
What we learned
The strongest argument for Qloo is a side-by-side with the model alone. Small, honest results are easier to defend than large ones. A rule in code beats a rule in a prompt.
What's next for Vasal
Run Vasal on mid-size shows, where the test could not reach, and publish what hosts say. Turn the trend check on when Qloo returns trend data.
Built With
- anthropic
- claude
- cloudflareturnstile
- hono
- mcp
- next.js
- node.js
- postgresql
- qloo
- qlooinsightsapi
- railway
- react
- tailwindcss
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.