My TV Channel is a remote MCP server that gives an AI agent 19 tools, among them archive_channel, check_handle_available, create_channel. It answers at https://my-tv-channel.com/api/mytvchannel/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 10 of 10 times since 5 September 2026; the last check, on 18 October 2026, succeeded.
Create and run 24/7 linear TV channels. Import videos by URL; we transcode, schedule and stream.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
archive_channel | Take a channel off the air and out of every listing. This ARCHIVES rather than destroys: the handle stays reserved and assets and schedule history are retained, so it can be restored. Refuses with 409 while transcodes are still running. Ide Inputs: channel_id |
check_handle_available | Check whether a channel handle is free before trying to create it. The handle becomes the subdomain: {handle}.my-tv-channel.com. 3-63 chars, lowercase a-z, 0-9 and hyphens. Inputs: handle |
create_channel | Create a 24/7 linear TV channel. It will NOT be live yet — a channel goes live automatically once it has at least 4 ready assets AND at least 15 minutes of total content. is_public lists it in Discover and is available on every subscription Inputs: handle, name, channel_type, description, primary_language, tags |
delete_asset | Remove a video from a channel. Soft delete — it stops being scheduled immediately and the schedule regenerates automatically. Idempotent. The asset is retained and stops being scheduled; it is not erased. Affects one video — archive_channel Inputs: asset_id |
get_account_status | Start here. Returns who the account is, its subscription tier and limits, how much weekly upload/stream quota is used and remaining, and every channel the owner has with its ready-asset count and what it still needs to go live (launchGaps). |
get_channel | Get one channel by id. Includes scheduleStatus (inactive | pending | active | error) — poll this to confirm a channel has gone live — plus watchUrl, launchedAt and isArchived. Inputs: channel_id |
get_schedule | Read the channel's EPG — what is playing and what is coming up. Note this one returns a plain array of entries (unlike other tools, which return an object). Inputs: channel_id |
get_schedule_rules | Read the channel's declarative schedule rules (fixed time slots and dayparts), plus its scheduling mode and timezone. Inputs: channel_id |
get_transcode_status | Poll transcode progress. Give either channel_id (all its videos) or asset_id (one). Each asset reports uploadStatus (downloading -> pending -> transcoding -> ready) and the summary tells you when meetsLaunchRequirements becomes true: 4+ rea Inputs: channel_id, asset_id |
import_video_from_url | Add a video to a channel from a direct media URL. THIS IS THE MAIN WAY TO ADD CONTENT over MCP — you cannot upload local file bytes through this interface, so if the owner has local files, ask them to host them somewhere reachable or upload Inputs: channel_id, url, title, tags, weight |
import_youtube_video | Import a YouTube video that the OWNER UPLOADED THEMSELVES. This will not work for anyone else's video, by design — a channel built from other people's videos is a copyright problem for the owner. Ownership is proved by a tag only the upload Inputs: channel_id, url, title, tags, weight |
list_assets | List the videos on a channel. Inputs: channel_id |
list_channels | List the channels owned by this account. |
regenerate_schedule | Rebuild the channel's schedule now using the current weights. Call this after changing weights on a channel that is ALREADY live, otherwise the change will not air until the hourly cron. Throttled to one call per channel per 5 minutes; exce Inputs: channel_id |
retry_transcode | Re-queue a video whose transcode failed. Only works on assets in a failed state. Inputs: asset_id |
set_asset_weight | Change how often a video plays (weight 0-10, default 5; 0 removes it from rotation entirely), and optionally its title or tags. IMPORTANT ORDERING: weights only affect what actually airs when the schedule is (re)generated. A channel builds Inputs: asset_id, weight, title, tags |
set_schedule_rules | Give the channel a durable schedule: fixed slots ("news at 18:00") and dayparts ("no kids content after 22:00"). The scheduler re-honours these on EVERY rebuild, so you set them once instead of babysitting the grid. **Pro tier or higher.** Inputs: channel_id, timezone, rules |
update_channel | Update an existing channel: name, description, visibility, category, language, age rating, or the community chat link. Only send the fields you are changing. Inputs: channel_id, name, description, category, keywords, primary_language |
validate_schedule_rules | DRY-RUN a ruleset. Saves nothing. Returns {valid, errors, warnings, preview} where preview is a simulated 24h grid of what would actually air. Intended as the dry run for set_schedule_rules: rules are wall-clock, slots start on-or-after the Inputs: channel_id, timezone, hours, rules |
Every block below points at https://my-tv-channel.com/api/mytvchannel/mcp. Pick your client and copy.
claude mcp add --transport http my-tv-channel https://my-tv-channel.com/api/mytvchannel/mcp
{
"mcpServers": {
"my-tv-channel": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://my-tv-channel.com/api/mytvchannel/mcp"]
}
}
}{
"mcpServers": {
"my-tv-channel": {
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"servers": {
"my-tv-channel": {
"type": "http",
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"context_servers": {
"my-tv-channel": {
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"mcpServers": {
"my-tv-channel": {
"serverUrl": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"mcpServers": {
"my-tv-channel": {
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}name: My TV Channel
version: 0.0.1
schema: v1
mcpServers:
- name: My TV Channel
type: streamable-http
url: https://my-tv-channel.com/api/mytvchannel/mcp{
"mcpServers": {
"my-tv-channel": {
"httpUrl": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"mcpServers": {
"my-tv-channel": {
"type": "http",
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}{
"mcpServers": {
"my-tv-channel": {
"url": "https://my-tv-channel.com/api/mytvchannel/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fmy-tv-channel.com%2Fapi%2Fmytvchannel%2Fmcp&type=streamable_http&id=my-tv-channel&name=My%20TV%20Channel
It answered our last check on 18 October 2026 in 87 ms. Over 10 checks since 5 September 2026 it answered 10. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by my-tv-channel.com and served from my-tv-channel.com, the vendor's own domain: https://my-tv-channel.com/api/mytvchannel/mcp.
19, as returned by the server's own tools/list on 31 August 2026: archive_channel, check_handle_available, create_channel, delete_asset, get_account_status, get_channel, get_schedule, get_schedule_rules, and 11 more.
It answered our last check on 18 October 2026 in 87 ms. Over 10 checks since 5 September 2026 it answered 10.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://my-tv-channel.com/api/mytvchannel/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: com.my-tv-channel. Endpoint host: my-tv-channel.com. ARD identifier: urn:air:com.my-tv-channel:mcp:my-tv-channel.
First indexed 31 August 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.