Tollist is an AI agent that screens callers and protects your attention with x402 micropayments.
Tollist: because your attention is not toll-free.
Tollist is an AI agent that screens unknown callers and protects human attention with x402 micropayments.
AI has made it extremely cheap to generate personalised calls, emails and outreach at scale, while the person receiving those requests still has limited time and focus. Tollist addresses this imbalance by adding an economic signal before an unknown caller can consume someone’s attention.
When a caller reaches a Tollist-protected number, an AI voice agent asks who they are, why they are calling and what they would like to do. The caller can choose to leave a priority voice message or submit a callback request. Tollist then sends a secure payment link by SMS and ends the call, avoiding unnecessary waiting time and telephony costs.
After completing a small stablecoin payment, the caller can record a message in the browser or confirm their callback request. Tollist transcribes and summarises the request, then presents it to the recipient in a private dashboard.
The payment is not simply a fee for communication. It acts as proof of intent. A small payment is almost insignificant to someone with a genuine reason to make contact, but it changes the economics of automated spam sent at scale.
Tollist uses x402 so the same protected resource can work for both humans and software agents. Humans receive a simple wallet-based payment experience, while autonomous agents can receive a standard HTTP 402 Payment Required response, pay programmatically and retry the request.
Phone calls are the first use case, but Tollist is designed as a broader economic layer for scarce digital access, including email, direct messages, meeting requests, support queues and agent-to-agent communication.
Machines scale. Human attention does not. Tollist restores the balance.
Tollist is built as a TypeScript monorepo, with each part of the system separated so the call flow, payment provider, AI model, storage layer and notification channels can be changed without rewriting the whole application.
Incoming calls are handled using Twilio Programmable Voice and ConversationRelay.
ConversationRelay manages:
It communicates with NestJS through a WebSocket connection. This allowed us to create a real-time voice agent without building a low-level audio-streaming pipeline or depending on a separate voice-agent platform.
Tollist is deliberately not an unrestricted chatbot.
The conversation is controlled by a finite-state machine with explicit stages:
The backend enforces hard limits on:
This prevents callers from keeping the AI talking indefinitely and keeps telephony and model costs predictable.
OpenAI is used to interpret natural-language responses and return structured data, such as:
The model does not control pricing, payment requirements, state transitions or call duration.
AI understands the caller. Code controls the gate.
The AI integration is also placed behind a provider interface, so another model such as Gemini can be introduced later without changing the rest of the system.
When the caller selects an option, the backend creates a temporary payment request containing:
The payment link is sent using the Twilio Messaging API, and the call ends immediately. The caller does not need to remain on the line while opening a wallet or completing payment.
A benefits Tollist in two different ways:
402 Payment Required flow.This means the same economic gate can work for both people and autonomous agents.
After payment is verified, Tollist unlocks only the service that was purchased.
For a priority message:
For a callback request:
The dashboard allows the recipient to:
The most notable part of the implementation is the separation between language understanding and application control.
Instead of relying on one large prompt to manage an expensive live conversation, Tollist uses the LLM only as a constrained interpreter inside a deterministic state machine.
This makes the system:

