Traceo bug recordings (console, network, user actions, environment) as context for coding agents.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Comments the reporter attached to the recording when sharing it.
Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http traceo https://www.traceo.dev/mcp
Comments the reporter attached to the recording when sharing it.
| Argument | Type | Description |
|---|---|---|
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}Browser console output captured during the recording, one line per entry. Secrets are redacted.
| Argument | Type | Description |
|---|---|---|
| level | array | Only these levels (default all). |
| limit | integer | Max lines to return. |
| cursor | string | Pagination cursor from a previous call. |
| search | string | Case-insensitive substring filter on the message. |
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"level": {
"type": "array",
"items": {
"enum": [
"error",
"warn",
"info",
"log",
"debug"
],
"type": "string"
},
"description": "Only these levels (default all)."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max lines to return."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous call."
},
"search": {
"type": "string",
"description": "Case-insensitive substring filter on the message."
},
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}Stills from the recording video, captured after each click, error and failed request plus an even spread. Pass at_s to see the screen at a moment (e.g. the time of an error from get_timeline), or from_s/to_s for a range. Returns up to 6 images.
| Argument | Type | Description |
|---|---|---|
| at_s | number | Seconds from the start: returns the frames nearest this moment. |
| to_s | number | End of a range in seconds. |
| limit | integer | How many frames (default 3). |
| from_s | number | Start of a range in seconds. |
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"at_s": {
"type": "number",
"minimum": 0,
"description": "Seconds from the start: returns the frames nearest this moment."
},
"to_s": {
"type": "number",
"minimum": 0,
"description": "End of a range in seconds."
},
"limit": {
"type": "integer",
"maximum": 6,
"minimum": 1,
"description": "How many frames (default 3)."
},
"from_s": {
"type": "number",
"minimum": 0,
"description": "Start of a range in seconds."
},
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}HTTP requests captured during the recording, one line each: time, method, status, URL (query strings stripped), duration, type, size. No request/response bodies are captured. Sensitive headers are redacted.
| Argument | Type | Description |
|---|---|---|
| type | string | Resource type, e.g. xhr, fetch, script. |
| limit | integer | Max lines to return. |
| cursor | string | Pagination cursor from a previous call. |
| domain | string | Substring match on the request host. |
| method | string | HTTP method, e.g. POST. |
| status | string | "failed" (network error or >=400), "2xx", "3xx", "4xx", "5xx", or an exact code like "404". |
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
| include_headers | boolean | Include request (>) and response (<) headers. Default false. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"type": {
"type": "string",
"description": "Resource type, e.g. xhr, fetch, script."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max lines to return."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous call."
},
"domain": {
"type": "string",
"description": "Substring match on the request host."
},
"method": {
"type": "string",
"description": "HTTP method, e.g. POST."
},
"status": {
"type": "string",
"description": "\"failed\" (network error or >=400), \"2xx\", \"3xx\", \"4xx\", \"5xx\", or an exact code like \"404\"."
},
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
},
"include_headers": {
"type": "boolean",
"description": "Include request (>) and response (<) headers. Default false."
}
}
}Start here. Summarizes a Traceo bug recording from its share link: page, environment (browser, viewport, locale), duration, event counts, the first errors and failed requests, the user actions leading up to the first error, and which tool to call next.
| Argument | Type | Description |
|---|---|---|
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}A still image of the recorded page (the recording thumbnail).
| Argument | Type | Description |
|---|---|---|
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}Console logs, network requests and user actions merged in time order, with times relative to recording start (+12.4s). Best view for reproducing a bug. Narrow with from_s/to_s around an error.
| Argument | Type | Description |
|---|---|---|
| to_s | number | End, in seconds from recording start. |
| limit | integer | Max lines to return. |
| types | array | Event kinds to include (default all). |
| cursor | string | Pagination cursor from a previous call. |
| from_s | number | Start, in seconds from recording start. |
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"to_s": {
"type": "number",
"description": "End, in seconds from recording start."
},
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max lines to return."
},
"types": {
"type": "array",
"items": {
"enum": [
"console",
"network",
"action"
],
"type": "string"
},
"description": "Event kinds to include (default all)."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous call."
},
"from_s": {
"type": "number",
"description": "Start, in seconds from recording start."
},
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}Clicks, inputs and navigations the reporter performed, in order, with target element and page path.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Max lines to return. |
| cursor | string | Pagination cursor from a previous call. |
| recording* | string | Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id. |
{
"type": "object",
"required": [
"recording"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Max lines to return."
},
"cursor": {
"type": "string",
"description": "Pagination cursor from a previous call."
},
"recording": {
"type": "string",
"description": "Traceo share link (e.g. https://www.traceo.dev/abc123...) or recording id."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 10, 2026.