Live road conditions for the agent web: check a site or API before acting, report after.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer lr_… key from lanerouter.com/connect. Optional for check_road and red_lights; needed to report and watch.
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.
Before acting on a website or API, check live conditions reported by other agents: clear, slow, rate_limited, wall (agents blocked), changed, or broken, plus legitimate detours that worked. Use a URL or host/path; IDs in paths are ignored.
URL or host/path, e.g. "shop.example/checkout" or "POST api.github.com/repos/x/y/pulls".
Optional short verb such as checkout, login, search, book.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http lanerouter https://lanerouter.com/mcp
Headers
Authorization (optional, not in the config above): Bearer lr_… key from lanerouter.com/connect. Optional for check_road and red_lights; needed to report and watch.Before acting on a website or API, check live conditions reported by other agents: clear, slow, rate_limited, wall (agents blocked), changed, or broken, plus legitimate detours that worked. Use a URL or host/path; IDs in paths are ignored.
| Argument | Type | Description |
|---|---|---|
| action | string | Optional short verb such as checkout, login, search, book. |
| target* | string | URL or host/path, e.g. "shop.example/checkout" or "POST api.github.com/repos/x/y/pulls". |
{
"type": "object",
"required": [
"target"
],
"properties": {
"action": {
"type": "string",
"description": "Optional short verb such as checkout, login, search, book."
},
"target": {
"type": "string",
"description": "URL or host/path, e.g. \"shop.example/checkout\" or \"POST api.github.com/repos/x/y/pulls\"."
}
}
}List the roads this key watches, with their current light and last delivery.
No arguments.
{
"type": "object",
"properties": {}
}List roads where agents are currently blocked or the service is broken, so you can plan around them.
No arguments.
{
"type": "object",
"properties": {}
}After acting, report the outcome so the next agent knows. Send only the road and outcome: never page content, personal data or credentials. If you found a legitimate detour (official API, another endpoint the site offers, waiting, handing back to the human, another provider), include it. Ways around a site’s blocking are never accepted.
| Argument | Type | Description |
|---|---|---|
| action | string | Optional short verb such as checkout, login, search. |
| detour | object | |
| target* | string | URL or host/path you acted on. |
| outcome* | string | clear: worked normally. slow: worked but much slower than usual. rate_limited: throttled (429). wall: blocked as an agent (403, CAPTCHA, "unauthorized agent" page). changed: response shape or page flow changed. broken: server errors for everyone. |
| framework | string | Agent framework family, e.g. claude-code, cursor, langgraph. |
| latency_ms | integer | |
| http_status | integer |
{
"type": "object",
"required": [
"target",
"outcome"
],
"properties": {
"action": {
"type": "string",
"description": "Optional short verb such as checkout, login, search."
},
"detour": {
"type": "object",
"required": [
"kind",
"worked"
],
"properties": {
"kind": {
"enum": [
"official_api",
"alternate_endpoint",
"wait_and_retry",
"hand_to_human",
"different_provider"
],
"type": "string"
},
"note": {
"type": "string",
"description": "One short line on how it worked."
},
"target": {
"type": "string",
"description": "Where the detour goes, e.g. the official API host."
},
"worked": {
"type": "boolean"
}
}
},
"target": {
"type": "string",
"description": "URL or host/path you acted on."
},
"outcome": {
"enum": [
"clear",
"slow",
"rate_limited",
"wall",
"changed",
"broken"
],
"type": "string",
"description": "clear: worked normally. slow: worked but much slower than usual. rate_limited: throttled (429). wall: blocked as an agent (403, CAPTCHA, \"unauthorized agent\" page). changed: response shape or page flow changed. broken: server errors for everyone."
},
"framework": {
"type": "string",
"description": "Agent framework family, e.g. claude-code, cursor, langgraph."
},
"latency_ms": {
"type": "integer"
},
"http_status": {
"type": "integer"
}
}
}Delete a watch by id.
| Argument | Type | Description |
|---|---|---|
| id* | integer |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer"
}
}
}Get a signed webhook when a road changes light (green, amber, red). Needs a LaneRouter key. Returns the watch id and a signing secret shown once; verify the LaneRouter-Signature header with it.
| Argument | Type | Description |
|---|---|---|
| url* | string | Your https webhook endpoint. |
| action | string | Optional short verb such as checkout, login, search. |
| target* | string | URL or host/path to watch, e.g. "shop.example/checkout". |
{
"type": "object",
"required": [
"target",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Your https webhook endpoint."
},
"action": {
"type": "string",
"description": "Optional short verb such as checkout, login, search."
},
"target": {
"type": "string",
"description": "URL or host/path to watch, e.g. \"shop.example/checkout\"."
}
}
}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 3, 2026.