Server data from the Official MCP Registry
Transcribe social videos, selected comments, URL batches and Instagram channels.
About
Transcribe social videos, selected comments, URL batches and Instagram channels.
Remote endpoints: streamable-http: https://reelscribe.app/api/mcp
Security Report
Valid MCP server (3 strong, 3 medium validity signals). No known CVEs in dependencies. Imported from the Official MCP Registry.
Endpoint verified · Requires authentication · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Found in Source Code
Found by scanning the linked source code. This listing connects to a hosted endpoint, so none of this runs on your machine: it describes what the server software does where it is hosted.
How to Connect
Remote Plugin
No local installation needed. Your AI client connects to the remote endpoint directly.
Add this to your MCP configuration to connect:
{
"mcpServers": {
"io-github-rara-cyber-reelscribe": {
"url": "https://reelscribe.app/api/mcp"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
ReelScribe MCP Server
An MCP (Model Context Protocol) server that connects AI assistants to ReelScribe — transcribe Instagram Reels, TikTok videos, and YouTube videos directly from Claude, Cursor, Windsurf, and other MCP-compatible clients.
Setup
Hosted connector (Cloudflare Workers)
The endpoint is https://reelscribe.app/api/mcp. Add it as a remote
connector in Claude or as an MCP connection in ChatGPT developer mode, then
sign in to your ReelScribe account and approve access. Directory publication is
a separate review process.
Hosted transcription returns a requestId immediately. Use get_transcription
with that ID to retrieve the transcript after processing; submitting a duplicate
returns the existing transcript. Account administration is available on the website.
Deploying
- Deploy the accompanying ReelScribe API OAuth change, including the Convex
includeRetentionresponse on/admin/get-user-by-clerk-id. - In the production Clerk instance, create and advertise the custom scope
reelscribe:mcp, with consent text explaining permission to read transcripts and credit balance, and submit transcriptions that spend credits. Enable CIMD client onboarding, require S256 PKCE, and set the default scopes toreelscribe:mcp. For expanded workflows register an optional separatereelscribe:managescope, retained under its existing name for compatibility. Its consent text must explain only batch/channel submissions that spend credits. Default scopes arereelscribe:mcp reelscribe:manage; a single-video client may request onlyreelscribe:mcp. Existing connections must explicitly approve the extra transcription permission on reconnect. Keep opaque access tokens enabled. Allow the intended clients to request the custom scope; enable DCR only for clients needing it. - Authenticate Wrangler with permission to deploy Workers in the SIÁN account.
If Wrangler lists multiple accounts, set
CLOUDFLARE_ACCOUNT_IDto that account. - Run
bun run typecheck,bun test,bun run worker:build, thenbun run worker:deploy. - Verify
/health, the public OAuth metadata, an unauthenticated/mcp401 challenge, and the complete sign-in and transcription flow in both clients.
The branded URL is forwarded by the ReelScribe website to the existing Cloudflare
Worker with branded=1, which selects matching OAuth resource metadata.
The original https://reelscribe-mcp.sian-agency.workers.dev/mcp endpoint and its
OAuth discovery remain available for existing connections. The domain is managed
outside Cloudflare, so a direct Worker custom subdomain would require DNS changes.
The Worker holds no shared user API key or Clerk secret. It forwards each
caller's token to ReelScribe's API, which verifies it with Clerk and resolves
only that token's user. The base OAuth scope permits transcript, credit and job reads and single-video
submission. Batch/channel submissions require separately granted reelscribe:manage
consent. Despite its legacy name, this scope grants only transcription submission.
Even existing management grants cannot access downloads, deletion, analytics or settings.
Local stdio setup remains available below.
1. Get an API Key
Sign up at reelscribe.app (25 free credits) and generate an API key from your API settings.
2. Configure Your MCP Client
Add to your MCP client configuration:
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"reelscribe": {
"command": "npx",
"args": ["-y", "reelscribe-mcp-server"],
"env": {
"REELSCRIBE_API_KEY": "rs_your_api_key_here"
}
}
}
}
Claude Code (~/.claude.json or project .mcp.json):
{
"mcpServers": {
"reelscribe": {
"command": "npx",
"args": ["-y", "reelscribe-mcp-server"],
"env": {
"REELSCRIBE_API_KEY": "rs_your_api_key_here"
}
}
}
}
Cursor (Settings > MCP):
{
"mcpServers": {
"reelscribe": {
"command": "npx",
"args": ["-y", "reelscribe-mcp-server"],
"env": {
"REELSCRIBE_API_KEY": "rs_your_api_key_here"
}
}
}
}
Available Tools
| Tool | Description |
|---|---|
transcribe_video | Submit a video URL (1 credit). Optional includeComments for Instagram, TikTok and YouTube. Hosted server returns a job ID; local server waits for the result. |
get_transcription | Get a transcription by ID or requestId. Returns full transcript text. |
list_transcriptions | List one page of your transcriptions (default 20, max 200), newest first. Status, platform, creator, date, job and request filters. |
search_transcriptions | Find transcriptions by the original video URL, within a bounded recent window. |
get_credits | Check credit balance, subscription tier, stored transcription count, and retention. |
validate_url | Check if a URL is supported without submitting. |
| transcribe_bulk | Submit a URL list (including URLs read from CSV); tier limits and 1 credit per new video apply. |
| transcribe_instagram_channel | Paid Instagram channel scraping, 1–50 reels and optional date filter. |
| list_jobs | Read progress and page through owned batch/channel jobs. |
The nine tools focus on transcription. Downloads, library management, retries,
cancellation, analytics, settings and billing are available in the web app.
Batch and channel submissions require an API key or explicit additional
reelscribe:manage transcription consent; legacy base-only OAuth tokens cannot
perform them. Facebook comments remain unsupported. The hosted 2.2.1 release
does not publish the deferred npm release.
Comment extraction
Set includeComments: true on transcribe_video to request a selection of top
comments alongside a new Instagram, TikTok or YouTube transcription. It is off
by default and the total cost remains 1 credit. Pinned and creator comments are
prioritized where available; YouTube does not expose a pinned flag. Facebook
comment extraction is unsupported. This is not a full comment-thread export.
Completed results include a comments array with text, author, likes,
isPinned and isCreator; it is null when no comments were returned.
stats.comments is the video's total comment count, separate from those rows.
Existing matching transcripts are reused as-is, without adding new comments.
{ "url": "https://www.youtube.com/watch?v=vXUPEow4Itw", "includeComments": true }
Pagination
list_transcriptions returns a page, never a whole library. Pass nextCursor
back as cursor while hasMore is true to walk the rest.
The API does not report a library total, so this server does not invent one:
libraryTotal is a number only when a response provably covers the entire
result set (first page, no further pages), and null otherwise. For a
library-wide figure, get_credits reports library.completedTranscriptions —
itself a bounded count, flagged with library.isCapped when the real number is
higher.
Transcripts in list results are 500-character previews with the full length in
transcriptChars; call get_transcription with an id to read one in full.
Storage and retention
There is no storage quota. Per-tier count limits were retired on 2026-07-31 —
a library is bounded by time instead, and get_credits reports the retention
that applies to the account (unlimited while subscribed, a rolling window
otherwise). Transcriptions created before the policy date are never
auto-deleted.
Supported Platforms
- Instagram — Reels, Posts (
/p/), IGTV (/tv/) - TikTok — Videos, short links (
vm.tiktok.com,vt.tiktok.com) - YouTube — Videos, Shorts, short links (
youtu.be) - Facebook — Videos (
/watch?v=,/videos/), Reels, short links (fb.watch)
Example Usage
"Transcribe this TikTok video: https://www.tiktok.com/@user/video/123456"
"Check my credit balance"
"List my completed transcriptions"
"Did I already transcribe this video? https://www.instagram.com/reel/ABC123/"
Pricing
- Free: 25 credits on signup
- Creator: $9.99/mo — 1,000 credits
- Agency: $24.99/mo — 3,000 credits
- Enterprise: $59.99/mo — 10,000 credits
Each transcription costs 1 credit. View pricing
Changelog
2.1.0
- Optional
includeCommentsontranscribe_videofor Instagram, TikTok and YouTube, forwarded through the existing API without an extra credit charge. - Typed comment rows in retrieved transcripts; unsupported Facebook requests are rejected before creating a job.
2.0.0
Compatibility with the ReelScribe /v1 API changes of 2026-07-31. 1.0.5 and
earlier report wrong numbers against the current API and should be upgraded.
Breaking:
list_transcriptionsno longer reportstotal. That field became the length of the page when the endpoint went cursor-paginated, so 1.0.5 answered "how many transcriptions do I have?" with the page size — 100 for a library of 2,000 — and nothing in the response revealed it. Replaced byreturned(this page),libraryTotal(a number only when the response covers everything, otherwisenull),hasMoreandnextCursor.list_transcriptionsreturns 500-character transcript previews plustranscriptChars, not full transcript text. Useget_transcriptionfor the full text.get_creditsno longer reportsstorage.limit. Per-tier storage caps were retired; the API now returns-1("no limit") for every tier, which rendered as "unlimited" and hid a real 30-day retention window. Replaced bylibrary.completedTranscriptions/library.isCappedand aretentionblock.
Added:
cursorandlimitparameters onlist_transcriptions(default 20, max 200).- Facebook video and Reel URLs are validated locally, which the API has accepted
all along —
validate_urlandtranscribe_videoused to reject them before a request was made. search_transcriptionsreportsmatchesReturnedand states that its window is bounded, sofound: falseis no longer readable as "never transcribed".
Links
License
MIT
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
FinAgent
Freeby mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.
