Shortform Kit
by diegobruegger-prog · remote · no sign-in to list tools · v1.0.1 · published by GitHub user diegobruegger-prog
Transcribe, read and download public Reels, TikToks and YouTube videos, plus sourced creator data
9 tools: 6 change things and 3 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things6Claude Code: ask: see these tools
- Only reads3Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http shortformkit https://shortformkit.com/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
9 tools
Changes things 6Claude Code: ask
creator_monetizationLook up sourced 2026 creator-income data.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Look up sourced 2026 creator-income data. topic=programs lists monetization programs with eligibility (subscribers, watch hours, views) and status; rpm_by_niche and rpm_by_country give earnings per 1,000 views as low, high and median; engagement_benchmarks gives typical engagement rates; sponsorship_rates gives price ranges per post. Every row carries its sources. Use it to answer 'how much does X pay' or 'what do I need to monetize'; for a concrete earnings estimate from a view count use estimate_youtube_earnings instead. Offline data, max 40 rows.
Annotations the server declares
- title: Creator monetization data
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
download_mediaCreate a temporary download of a public post.No findings
Why it is in this group
- The description's first verb is "create": a word for a change.
Description, as the server wrote it Create a temporary download of a public post. Returns a job object with status and, when done, download_url (valid 15 minutes) plus job_status_url to poll if it is still running after about 100 seconds. Use kind=video for MP4, audio for MP3, image for photo posts and carousels, thumbnail for the cover, frame for a still at one timestamp. For the spoken text use transcribe_video instead. Videos up to 4 hours; only for content the user owns or may use.
Annotations the server declares
- title: Download media
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
estimate_youtube_earningsEstimate YouTube ad revenue for a channel from its monthly views.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Estimate YouTube ad revenue for a channel from its monthly views. Returns the RPM range in USD, monthly and yearly USD ranges, the model used and a link to the interactive calculator. Ads only, no sponsorships or memberships. Use creator_monetization for the underlying RPM tables and program requirements.
Annotations the server declares
- title: Estimate YouTube earnings
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
loudness_and_subtitlesLook up delivery standards for audio and captions.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Look up delivery standards for audio and captions. topic=loudness_targets gives integrated loudness (LUFS) and true-peak limits for Spotify, Apple Music, YouTube, Netflix, Prime Video, EBU R128, ATSC A/85, podcasts and social video; subtitle_standards gives characters per line, lines, reading speed and timing rules (Netflix, BBC and others); frame_rates_timecode explains frame rates and drop-frame timecode. Every value sourced. Use it when mixing, exporting or captioning for a platform. Offline data, max 40 rows.
Annotations the server declares
- title: Loudness and subtitle standards
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
social_video_specsLook up 2026 upload specs for Instagram, TikTok, YouTube, Facebook, X, LinkedIn, Pinterest, Snapchat and Threads: aspect ratio, resolution, max length, file size, caption and hasht…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Look up 2026 upload specs for Instagram, TikTok, YouTube, Facebook, X, LinkedIn, Pinterest, Snapchat and Threads: aspect ratio, resolution, max length, file size, caption and hashtag limits, each row with official source links, plus recent spec changes. Use it before exporting or cropping a video for a platform. Offline data, no network calls; empty filters return every row.
Annotations the server declares
- title: Social video specs 2026
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
transcribe_videoTranscribe the speech of a public video, Reel, TikTok or Short with Whisper on the server.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Transcribe the speech of a public video, Reel, TikTok or Short with Whisper on the server. Returns the plain text plus segments with start and end times; waits up to 4 minutes, otherwise returns job_status_url to poll. Use it for captions, quotes, summaries or hooks; use get_video_info if you only need the written caption. Up to 20 minutes of audio per run, one transcription at a time server-wide, so cut long videos with start/end.
Annotations the server declares
- title: Transcribe video
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
Only reads 3Claude Code: allow
get_video_infoRead the metadata of a public Instagram, YouTube, TikTok, X, Facebook or Pinterest post without downloading it.No findings
Why it is in this group
- The name "get_video_info" says "get": a word for reading.
Description, as the server wrote it Read the metadata of a public Instagram, YouTube, TikTok, X, Facebook or Pinterest post without downloading it. Returns platform, title, uploader, duration in seconds, available video heights, whether it has video/audio, gallery size, caption, hashtags and thumbnail URL. Use it first to check a link or pick a quality; use download_media to get the file and transcribe_video for the spoken words. Shares the website's limit of 30 requests per minute.
Annotations the server declares
- title: Read video info
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
youtube_channel_idResolve a YouTube channel to its permanent channel ID (UC...).No findings
Why it is in this group
- The description's first verb is "resolve": a word for reading.
Description, as the server wrote it Resolve a YouTube channel to its permanent channel ID (UC...). Returns channel ID, name, handle, channel URL and the RSS feed URL. Use it when an API, embed, RSS reader or analytics tool needs the UC ID; any video link of the channel works too. Not for statistics like subscriber counts.
Annotations the server declares
- title: Find YouTube channel ID
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
youtube_thumbnail_trendsGet this week's measured thumbnail trends of the most-viewed new YouTube videos in 10 niches: share of thumbnails with faces, text and big text, brightness, dominant colours, title…No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get this week's measured thumbnail trends of the most-viewed new YouTube videos in 10 niches: share of thumbnails with faces, text and big text, brightness, dominant colours, title length, plus top example videos. Without a niche it returns the overall stats and the list of niches. Use it when designing or reviewing a thumbnail; the data refreshes weekly.
Annotations the server declares
- title: YouTube thumbnail trends
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.1. Values in angle brackets are yours to fill in.
claude mcp add --transport http shortformkit https://shortformkit.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__shortformkit__get_video_info",
"mcp__shortformkit__youtube_channel_id",
"mcp__shortformkit__youtube_thumbnail_trends"
],
"ask": [
"mcp__shortformkit__download_media",
"mcp__shortformkit__transcribe_video",
"mcp__shortformkit__social_video_specs",
"mcp__shortformkit__creator_monetization",
"mcp__shortformkit__loudness_and_subtitles",
"mcp__shortformkit__estimate_youtube_earnings"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as shortformkit. Review it before you use it.
