My TV Channel MCP server
online · 96% uptimecom.my-tv-channel/my-tv-channel·v1.1.0Create and run 24/7 linear TV channels. Import videos by URL; we transcode, schedule and stream.
Little public usage data yet
Reviews
Write oneNobody has reviewed My TV Channel yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
My TV Channel tools (19, 3 write)
write = sends, deletes, buys or postsarchive_channelFreeTake 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. Idempotent. This is the reversible way to take a channel down; delete_asset removes individual videos instead.
check_handle_availableFreeCheck 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.
create_channelwrite actionFreeCreate 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 tier, including Starter.
delete_assetwrite actionFreeRemove 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 takes a whole channel off the air.
get_account_statusFreeStart 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). Call this before creating anything so you know the real limits for THIS account rather than assuming.
get_channelFreeGet one channel by id. Includes scheduleStatus (inactive | pending | active | error) — poll this to confirm a channel has gone live — plus watchUrl, launchedAt and isArchived.
get_scheduleFreeRead 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).
get_schedule_rulesFreeRead the channel's declarative schedule rules (fixed time slots and dayparts), plus its scheduling mode and timezone.
get_transcode_statusFreePoll 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+ ready assets AND 900+ seconds. Poll every 30-60s; transcoding takes roughly real-time/4.
import_video_from_urlFreeAdd 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 via the app. The URL must be a direct, public, unauthenticated link to mp4/mov/m4v/mpeg/mpg/avi, or a FINITE .m3u8 (VOD, not a live stream) — not a web page, not behind a login, not a YouTube/Vimeo watch page. The server downloads it. Returns immediately; the asset then goes downloading -> pending -> transcoding -> ready. Duration counts against the weekly upload quota. Re-submitting the same URL to the same channel returns the original asset instead of importing twice.
import_youtube_videoFreeImport 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 uploader can add: 1. The owner's tag looks like 'MyTVChannelApp#<device-id>'. When the import fails for a missing tag, the 403 error message contains that account's exact tag string. 2. They paste that exact string into the video's description or tags on YouTube. 3. Retry the import. You cannot do step 2 for them and you cannot bypass it. Public finished videos only: no live streams, no private or age-restricted videos, no playlists or channel URLs. Capped at 10 per day. Counts against the same weekly upload quota as everything else.
list_assetsFreeList the videos on a channel.
list_channelsFreeList the channels owned by this account.
regenerate_scheduleFreeRebuild 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; exceeding that returns 429 with a Retry-After header giving the seconds remaining. Requires the channel to meet launch requirements.
retry_transcodeFreeRe-queue a video whose transcode failed. Only works on assets in a failed state.
set_asset_weightFreeChange 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 its schedule the instant it crosses the launch threshold, so weights set AFTER that are stored but do not air. Either set the weight when you import each video, or call regenerate_schedule afterwards. Weights are relative: identical weights across every video produce a uniform rotation, and the spread between them is what shapes airtime.
set_schedule_rulesFreeGive 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.** This REPLACES the entire ruleset — send every rule you want, not just new ones. Sending an empty array removes all rules and returns the channel to plain weighted-random. Validate first with validate_schedule_rules. Rule shapes: time_slot {rule_type:'time_slot', start_time:'18:00', end_time?:'21:00', days_mask:127, selector_type:'asset'|'tag'|'playlist', selector_value:<id|tag|[ids]>, priority?:0} daypart_weight {rule_type:'daypart_weight', start_time:'22:00', end_time:'06:00', days_mask:127, selector_type:'asset'|'tag', selector_value:..., weight_multiplier:0-10} days_mask is a bitmask: bit0=Mon … bit6=Sun. 127=daily, 31=Mon-Fri, 96=weekend. end_time on a time_slot makes it a BLOCK that keeps drawing from the selector until that time — that is how you get 'cartoons 06:00-09:00' rather than one cartoon. selector_type 'playlist' with an array of asset ids plays them IN ORDER. weight_multiplier 0 removes matching assets from that window entirely. Set `timezone` (IANA) or the times mean UTC, which is almost never what the owner meant. Slots start ON-OR-AFTER their time: the programme running into a slot is never cut short, so an 18:00 slot may begin at 18:02. That is intended.
update_channelwrite actionFreeUpdate an existing channel: name, description, visibility, category, language, age rating, or the community chat link. Only send the fields you are changing.
validate_schedule_rulesFreeDRY-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 their time, and dayparts reweight the random fill, so the airing result is hard to predict from the rules alone. Unlike set_schedule_rules this is not tier-gated and works on any tier. Same payload as set_schedule_rules.
Public scan report
scanner v0.1.10 · 2026-11-04 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 1504ms20/20
- Tool poisoning19 tool descriptions checked15/15
- Auth qualityAPI key sent as a header8/15
- Maintenanceno repository listed3/15
- Maintainer identityendpoint served from the registry-verified namespace domain8/10
Findings (1)
- lowNo source repository listed
maint.no-repo
How My TV Channel compares
Against every graded Developer tools MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 72/100
- higher than 33% of 1,119 Developer tools servers
- Tools
- 19
- the typical Developer tools server has 7
- Tools that change things
- 16%
- typical: 5%. Fewer write tools means less an agent can break
- Uptime
- 96%
- of our recent checks; the typical remote Developer tools server answers 100%
- Response time
- 292 ms
- faster than 43% of 443 Developer tools servers
What its tools let an agent do: 11 read · 3 create · 3 change · 2 delete
Install My TV Channel in Claude Code, Cursor or VS Code
claude mcp add --transport http my-tv-channel https://my-tv-channel.com/api/mytvchannel/mcp
Grade history
- 2026-11-04restoreC → Bscore 72: No source repository listed
My TV Channel: common questions
- Is My TV Channel MCP server safe?
- Mostly: it is graded B (72/100). Read the My TV Channel safety report
- How do I install My TV Channel?
- It runs remotely at my-tv-channel.com. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does My TV Channel need an API key?
- Yes. The registry entry asks for
Authorization. - Is My TV Channel maintained?
- The latest release is v1.1.0.
- Is My TV Channel up?
- 96% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of My TV Channel?
- Servers from other publishers that do the same job: Dockhold MCP server and Jira Alerts (JSM Operations) MCP server.
- How does My TV Channel compare with other Developer tools MCP servers?
- safety score 72/100 (higher than 33% of 1,119 Developer tools servers); tools 19 (the typical Developer tools server has 7); tools that change things 16% (typical: 5%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to My TV Channel
Same job from other publishers: the closest match first, then the best rated.
- DockholdDeploy your project to a live HTTPS URL from your AI tool; read logs, set variables, resize apps.not reviewedGrowingA
Jira Alerts (JSM Operations)MCP server for Jira Service Management Operations — alerts, on-call schedules and respondersnot reviewedGrowingB