Transcripts from YouTube, TikTok and Instagram videos, inside your Dify agents and workflows.
Author: transcriptfetch · Version: 0.1.0 · Type: tool
Source repository: https://github.com/TranscriptFetch/dify-plugin
| Tool | What it returns | Cost |
|---|---|---|
| Get a transcript | The transcript of one video (YouTube, TikTok, Instagram, or a direct media file URL) as text or timestamped segments, with the title, channel, duration, language and source. Videos without captions are transcribed from their audio. | 1 credit from captions; audio transcription is 1 credit per started 5 minutes |
| Search videos | Videos matching a query on YouTube, TikTok or Instagram, with URLs that Get a transcript accepts. | 1 credit |
| List channel videos | The latest videos of a YouTube channel or a TikTok or Instagram profile, newest first, with a cursor for the next page. | 1 credit |
| Get credits | Your remaining credit balance. | Free |
Failed requests are free.
- Create a free TranscriptFetch account at transcriptfetch.com. The free plan includes 50 credits a month, with no card needed.
- Create an API key at transcriptfetch.com/app/keys.
- In Dify, install the TranscriptFetch plugin from the Marketplace, open Tools > TranscriptFetch > Authorize, and paste the key. The key is checked against the API before it is saved.
- In an agent: add the TranscriptFetch tools and ask, for example, "Summarize the latest video from @lexfridman" or "What does this TikTok say?" followed by the video link. The agent can search, list a channel and fetch transcripts on its own.
- In a workflow: add the Get a transcript node and pass a video URL. With timestamps off it also outputs a
textvariable for the next node (an LLM, a knowledge base, a code node).
When a long video has no captions, transcription can take longer than a tool call may wait. The tool then returns status: "processing" with a job_id. Run it again with the same video a minute or two later: the finished transcript is cached, so it costs credits only once.
- A TranscriptFetch API key (free to create).
- Outbound HTTPS access from your Dify instance to
transcriptfetch.com(port 443). Self-hosted Dify behind a firewall must allow it.
See PRIVACY.md. The plugin sends the video URLs, search queries and channel names you give it to the TranscriptFetch API, and nothing else.
support@transcriptfetch.com · API docs: transcriptfetch.com/docs
python -m venv .venv && .venv/bin/pip install -r requirements.txt
.venv/bin/python -m unittest discover -s tests # mocked HTTP
TRANSCRIPTFETCH_LIVE_KEY=tf_live_... .venv/bin/python -m unittest discover -s tests # plus live API
dify plugin package . -o transcriptfetch.difypkg