Which TV transmitters actually reach an address, terrain-graded, and what is on now.
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.
Channels that have shut down, with the date they closed. Useful for checking whether a channel a model remembers still exists.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Channels that have shut down, with the date they closed. Useful for checking whether a channel a model remembers still exists.
| Argument | Type | Description |
|---|---|---|
| limit | number | |
| query | string |
{
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"query": {
"type": "string"
}
}
}How current this dataset is: when each source last ran, how many assertions are live versus expired, and the gaps we know we have.
| Argument | Type | Description |
|---|---|---|
| query | string |
{
"type": "object",
"properties": {
"query": {
"type": "string"
}
}
}Search stations, networks and streaming channels by name, callsign, network or owner. Returns licence status, transmitter power and antenna height where filed.
| Argument | Type | Description |
|---|---|---|
| kind | string | broadcast_station | network | streaming_service |
| limit | number | |
| query* | string | |
| region | string | Two-letter US state. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"kind": {
"type": "string",
"description": "broadcast_station | network | streaming_service"
},
"limit": {
"type": "number"
},
"query": {
"type": "string"
},
"region": {
"type": "string",
"description": "Two-letter US state."
}
}
}Which television transmitters reach a specific latitude and longitude, graded by real terrain between the tower and that point. Answers "what can I actually watch from here", which listings services cannot.
| Argument | Type | Description |
|---|---|---|
| lat | number | |
| lon | number | |
| query | string | Free text, e.g. "42.4086,-73.3054" or a note about the location. |
| terrain | boolean | Compute terrain grades. Default true. First call for a location takes ~15s; cached after. |
| antenna_ft | number | Receiving antenna height in feet above ground. Default 30. |
| full_power_only | boolean |
{
"type": "object",
"properties": {
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"query": {
"type": "string",
"description": "Free text, e.g. \"42.4086,-73.3054\" or a note about the location."
},
"terrain": {
"type": "boolean",
"description": "Compute terrain grades. Default true. First call for a location takes ~15s; cached after."
},
"antenna_ft": {
"type": "number",
"description": "Receiving antenna height in feet above ground. Default 30."
},
"full_power_only": {
"type": "boolean"
}
}
}Where the data comes from, each with its licence and whether it may be redistributed.
| Argument | Type | Description |
|---|---|---|
| query | string |
{
"type": "object",
"properties": {
"query": {
"type": "string"
}
}
}Whether a US television station website can be read by an AI assistant: which AI crawlers it blocks by name in robots.txt, whether it publishes llms.txt or /.well-known/ai, and whether it has structured data. Pass a callsign for one station, or nothing for the industry-wide summary broken down by owner group.
| Argument | Type | Description |
|---|---|---|
| query | string | A callsign such as WNYT, or free text. Omit for the summary. |
| callsign | string |
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "A callsign such as WNYT, or free text. Omit for the summary."
},
"callsign": {
"type": "string"
}
}
}Is a remembered claim about a programme still current? Returns when it was observed, whether it has expired, and what replaced it. This is the question a model cannot answer about its own training data.
| Argument | Type | Description |
|---|---|---|
| query* | string | The programme or claim to check. |
| outlet | string |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "The programme or claim to check."
},
"outlet": {
"type": "string"
}
}
}Verify a signed record from this service. Pass an airing_id, or pass back a record you cached earlier with its signature and we will confirm it is byte-identical to what we signed. The public key and exact canonicalisation are at /.well-known/dtv-intel-signing.json so you can also verify offline without calling us.
| Argument | Type | Description |
|---|---|---|
| query | string | Free text; an airing id is picked out of it if present. |
| record | object | A previously returned signed claim. |
| airing_id | number | |
| signature | string | Base64 Ed25519 signature that came with the record. |
| record_type | string | Defaults to "airing". |
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free text; an airing id is picked out of it if present."
},
"record": {
"type": "object",
"description": "A previously returned signed claim."
},
"airing_id": {
"type": "number"
},
"signature": {
"type": "string",
"description": "Base64 Ed25519 signature that came with the record."
},
"record_type": {
"type": "string",
"description": "Defaults to \"airing\"."
}
}
}What is airing right now, or at a given time. Returns programmes with descriptions and, for each, when the claim was observed and when it expires. Accepts free text.
| Argument | Type | Description |
|---|---|---|
| at | string | ISO 8601 instant. Defaults to now. |
| limit | number | |
| query | string | Free text: a title, genre, or channel name. Optional. |
| outlet | string | Restrict to one channel by name. |
{
"type": "object",
"properties": {
"at": {
"type": "string",
"description": "ISO 8601 instant. Defaults to now."
},
"limit": {
"type": "number"
},
"query": {
"type": "string",
"description": "Free text: a title, genre, or channel name. Optional."
},
"outlet": {
"type": "string",
"description": "Restrict to one channel by name."
}
}
}