Inspiration

Every marketer knows the feeling: a customer story is due, the customer is happy to talk, and the interview is the thing that never happens. Scheduling it, running it, transcribing it, and writing something that does not misquote the person takes six to ten hours, or $1,500 to $5,000 at an agency. So teams skip it, and the content gets written from a feature list with quotes nobody said. We wanted the opposite: a real interview, and a piece where every quote can be checked against the second it was spoken.

What it does

InterLogue is an MCP server that runs inside Claude. You brief it in one sentence, the way an editor briefs a reporter: "Interview Marisol Teague, +1-502-555-0142, founder of Ridgeline Provisions, about switching her order entry to Tallyhook, for Tallyhook's marketing team." A human approves that exact person and number. InterLogue phones them, an AI voice agent introduces itself as an AI, asks permission to record, and runs a ten-minute interview. The transcript comes back with a timestamp on every turn, Claude writes the piece, and InterLogue fact-checks it: nothing publishes until every quoted span resolves, word for word, to what the subject said at the cited second.

The output leads with the story, then pull quotes with timestamps, then the full verbatim record as a secondary section. A bulleted Q&A summary is treated as a failure, and the checker enforces the order.

Three rules live in code, not in a prompt. The dial gate: one function is the only path to a call, and it requires a recorded human approval of that name and number. The consent check: a transcript whose opening does not disclose the AI and ask to record is refused. The citation check: a quote that is not verbatim, a missing timestamp, a number asserted outside a quote, or a reordered piece is rejected, and the writer is told exactly which spans to fix.

How we built it

TypeScript on Node 20, MCP over stdio, twelve tools, no database and no framework. The live interview runs on an ElevenLabs conversational agent over the native Twilio integration, with the brief passed to the agent as per-call variables. Transcripts are append-only JSON. Claude Desktop is the host that writes; a deterministic fallback writer exists only so a judge can run the whole spine with one command and no Claude at all.

We built the text-only spine first, end to end on a fictional fixture, then the phone path, then the writer, then the fact-checker, then the grading and the one-sentence brief that real use demanded.

Challenges we ran into

The first two real calls failed the consent check for opposite reasons: the subject interrupted the agent's opening, then the agent spoke before the phone reached the ear. We set the agent to wait for the person to speak first and the third call was clean. The first draft of the writer produced a quote-led report, not a story, so we moved the writing to Claude and made InterLogue the checker instead. A test interview with a founder who treated the call as a joke produced an honest but empty piece, which is how the interview grader was born. And our first hosted copy dropped a session mid-interview, which taught us where the timeouts live.

Accomplishments that we're proud of

Six real phone calls before the first volunteer, and the agent's opening rewritten after the second. Brief to published, cited piece in 6 minutes 12 seconds in rehearsal, at 80 cents per ten minutes of call. 56 tests, including tamper tests that break a quote, drop a timestamp, and change a timestamp, each of which fails loudly. A one-click Claude Desktop install that a judge can run with no account and no key.

What we learned

The user is the master. Early on the tool refused briefs it thought were wrong, and refused to write from thin interviews. Real people using it in a chat window do not want a wall; they want the interview to happen and the tool to tell them what it noticed. So the grader now advises instead of refusing, a founder interviewed about their own company gets founder-story questions instead of a rejection, and the brief needs one sentence.

What's next for InterLogue

Automated contact discovery, question plans for more genres, and recording download are stubbed today and each says so out loud. A human-only approval surface, because today the approval is a record rather than an identity check. A withdrawal path so a subject can pull their recording after the fact. And a dashboard, which a judge asked for at the venue.

Built With

Share this project:

Updates

Submission history