test_website
Starts a usability test of a public web page and returns a report link.
An AI persona visits the page and tries the task. The tool returns straight away with a report link; the report itself takes 2 to 4 minutes and is read on Tespr.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
url | string | Yes | The public page to test, e.g. https://example.com/pricing. |
task | string | Yes | What the visitor tries to do, in plain words. 12 to 1,000 characters. |
persona | object | Yes | Who visits the page. See below. |
insights | string[] | No | What the report covers: first_impressions, user_behavior, usability_issues, recommendations. Defaults to all four. |
persona
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | A short label, e.g. “Busy small-business owner”. Up to 80 characters. |
about | string | No | Who they are and what they care about. Up to 2,000 characters. |
comfort | 0 to 5 | No | How comfortable they are with websites and apps. Defaults to 3. |
patience | 0 to 5 | No | How much frustration they take before giving up. Defaults to 3. |
traits | string[] | No | Up to four of curious, impatient, detail-oriented, skeptical, goal-driven, explorative, easily-confused, confident. |
Example
Arguments
{
"url": "https://example.com/pricing",
"task": "Find the cheapest plan that lets a 5-person team share docs with clients",
"persona": {
"name": "Startup operations lead",
"about": "Runs ops at a small startup and compares tools between meetings.",
"comfort": 4,
"patience": 2,
"traits": [
"goal-driven",
"impatient"
]
}
}Response
Started a Tespr test of https://example.com/pricing as "Startup operations lead".
Report link: https://tespr.vercel.app/r/k7f3x9Qm2pLa
Give the user this link. The report takes about 2 to 4 minutes. To read it, they open the link and sign in with an invited Tespr account, and it's saved to their account. Tespr is invite-only: someone without an invite can join the waitlist from the link, but can't read the report until they're approved.The response also carries structuredContent with report_url, status and expires_at.
Errors
| Message starts with | What it means |
|---|---|
| That page isn't on the public internet | The address is localhost, a private network or not a real domain. |
| The task is too short | Describe what the visitor should do in a full sentence. |
| Today's free tests from Claude are used up | The shared daily limit is reached. Try tomorrow, or test from the app if you have an invite. |
| … has had 3 free tests today | That site's daily limit is reached. |
