MCP endpoint
The Model Context Protocol server: the same data as tools for Claude, ChatGPT and other assistants.
Free key and every planLive data
POSThttps://api.tvguideapi.com/mcp
Try itRuns the real call with your key
200 OK
Parameters
| Parameter | In | Type | Required | Description | Example |
|---|---|---|---|---|---|
| Authorization | header | string | required | Your key as a bearer token. | Bearer tvg_live_... |
Streamable HTTP. The same key and limits as the API; one tool call counts as one call. See MCP server.
Request
curl -X POST -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/mcp"
$ch = curl_init("https://api.tvguideapi.com/mcp");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("TVG_KEY")],
]);
$answer = json_decode(curl_exec($ch), true);
const r = await fetch("https://api.tvguideapi.com/mcp", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.TVG_KEY}` },
});
const { data, meta } = await r.json();
import os, requests
r = requests.post(
"https://api.tvguideapi.com/mcp",
headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"},
)
data = r.json()["data"]
Sample response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tools": [
{
"name": "whats_on_now"
},
{
"name": "channel_day"
},
{
"name": "where_to_watch"
},
{
"name": "next_airing"
}
]
}
}