MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
Description from the maker (original English)
Social media calendar for AI agents: read channels, create drafts, request approval.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
POSTSIDER_API_KEY, POSTSIDER_API_URLValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"postsider": {
"command": "npx",
"args": [
"-y",
"@postsider/mcp"
],
"env": {
"POSTSIDER_API_KEY": "your-value",
"POSTSIDER_API_URL": "your-value"
}
}
}
}Run this in your terminal
claude mcp add postsider --env POSTSIDER_API_KEY=your-value --env POSTSIDER_API_URL=your-value -- npx -y @postsider/mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"postsider": {
"command": "npx",
"args": [
"-y",
"@postsider/mcp"
],
"env": {
"POSTSIDER_API_KEY": "your-value",
"POSTSIDER_API_URL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"postsider": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@postsider/mcp"
],
"env": {
"POSTSIDER_API_KEY": "your-value",
"POSTSIDER_API_URL": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
POSTSIDER_API_URL envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account lumizone, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: POSTSIDER_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 42 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MCP (Model Context Protocol) server that gives AI agents selected access to a PostSider instance through its public API. Works with Claude Code, Claude Desktop, Codex, Cursor, and any MCP-compatible client. Talks to cloud (api.postsider.com) or a self-hosted instance, authenticated with an organization API key.
PostSider is a shared operational calendar: the agent prepares and schedules work, and a human reviews what actually goes live.
In PostSider, open Settings -> API and generate an organization API key.
Claude Code:
claude mcp add postsider -e POSTSIDER_API_KEY=your_api_key -- npx -y @postsider/mcp
Codex CLI and its IDE extension share MCP configuration. Use one of these options for a server named postsider.
Hosted MCP with OAuth (no organization key pasted into a config file):
codex mcp add postsider --url https://mcp.postsider.com/mcp
Complete the PostSider sign-in and permission flow in your client.
Alternatively, run the local MCP package over stdio with an organization API key stored in your environment or secret manager:
codex mcp add postsider --env POSTSIDER_API_KEY=your_api_key -- npx -y @postsider/mcp
The local organization key has broad access to your workspace. Never commit it to a repository or include it in an agent prompt. For a guided walkthrough and a first safe draft, see https://postsider.com/developers/.
Claude Desktop or any generic MCP client:
{
"mcpServers": { "postsider": { "command": "npx", "args": ["-y", "@postsider/mcp"], "env": { "POSTSIDER_API_KEY": "your_api_key" } } } }
Ask your agent, and confirm it answers without changing anything:
List my connected PostSider channels. Do not create or modify anything.
Then:
Show my PostSider calendar for the next 14 days. Do not create or modify anything.
The MCP create-post tool defaults to draft, not schedule or now. posts:write is a powerful permission: it does not inherently require human approval for each publication. An agent must not schedule or publish without explicit authorization for the content, channel and timing. Use postsider_get_post to verify a write before reporting success.
Create one draft only for the selected channel. Show me the exact content first. Do not publish it.
pnpm --filter @postsider/mcp build
Then point your client at the built entrypoint:
{
"mcpServers": { "postsider": { "command": "node", "args": ["/absolute/path/to/apps/mcp/dist/index.js"], "env": { "POSTSIDER_API_KEY": "your_api_key", "POSTSIDER_API_URL": "https://api.postsider.com" } } } }
The package directory is also a Claude Code plugin: .claude-plugin/plugin.json declares the API key as a secret user setting, .mcp.json starts this server at the pinned released version, and skills/ contains focused workflows for calendar review, content publishing, approvals, analytics, and agency operations. The repository root is a plugin marketplace, so the plugin installs from the repository directly:
Skill budget is full (5/5). The remote server advertises the skills it
bundles through OpenAI's skills extension, which supports at most 5. All
five slots are taken, so adding a new skill requires retiring or merging an
existing one (
loadSkillCatalogfails closed above 5).
claude plugin marketplace add lumizone/postsider
claude plugin install postsider@postsider
Installation stores the key outside the plugin: pass it at install time with --config api_key=your_api_key, or set it afterwards with /plugin configure postsider@postsider inside Claude Code. The key is never written into the plugin directory.
40 tools on the hosted server, 41 on the local stdio server, and 42 on the local stdio server when you opt in to approval decisions (see Configuration), all prefixed postsider_.
| Tool | Action |
|---|---|
postsider_list_channels | List connected social channels (ids, names, platforms). Call this first to get channel ids. |
postsider_get_agency_overview | Org-wide overview: clients, channels, queued, drafts, published, errors, pending approvals. |
postsider_get_customer_report | The same report scoped to one customer. |
postsider_list_groups | List channel groups. |
postsider_list_media | Browse the media library (paged, searchable) to reuse files already uploaded. |
postsider_get_channel_rules | Platform rules, max length and required settings schema for one channel. Call before posting to a new channel. |
postsider_get_queue_plan | A channel's recurring posting slots and timezone. |
postsider_get_smart_slots | Best upcoming times to post on a channel, avoiding booked slots. |
postsider_get_content_library | Saved hashtag groups, caption templates and UTM presets. |
postsider_find_slot | Next free queue slot for a channel, in UTC. |
postsider_list_posts | List posts in a date range, filterable by state (e.g. ERROR) and channel, paged. |
postsider_get_post | Full post details, including the publish error if any. |
postsider_get_post_activity | Who did what to a post and when (verified actor, approvals, publish and retry events), newest first. |
postsider_get_post_missing_fields | Per-channel validation problems, so they can be fixed before publishing. |
postsider_get_post_analytics | Analytics for a single post. |
postsider_get_channel_analytics | Account-level analytics for a channel. |
postsider_get_notifications | Recent notifications: publish failures, channels needing reconnection. |
postsider_get_publishing_state | Whether publishing is active or paused for the organization. |
postsider_get_approval_status | Approval status of a draft, including a reviewer note when rejected. |
| Tool | Action | Risk |
|---|---|---|
postsider_create_post | Create a post as a draft, a scheduled post, or an immediate publish across channels. | Creates content and can publish |
postsider_update_post | Edit an existing post in place: text, media, date, settings, first comment. Not for published or pending-approval posts. | Changes content, re-arms a scheduled post |
postsider_update_post_status | Move a post between draft and schedule. | Reversible |
postsider_retry_failed_posts | Re-queue only the failed destinations of a post group; unknown-outcome rows need explicit confirmation. | Re-publishes failed rows |
postsider_request_approval | Send a draft into the human approval queue. | Reversible |
postsider_upload_media_from_url | Import media into the library from a public HTTPS URL. | Creates media |
postsider_upload_media_base64 | Upload an image or MP4 you hold as bytes (base64: 25 MB on the local server, 2.5 MB over the remote connection). No public URL needed. | Creates media |
postsider_upload_media_from_file | Local stdio server only. Upload an image or video (jpg, png, gif, webp, avif, bmp, tiff, mp4, mov, webm, mkv; up to 500 MB) from a file path on your own machine. Other file types are refused before being read. | Creates media |
postsider_decide_approval | Local stdio server only, opt-in. Approve or reject the current stage of a pending approval as the API key. Registered only when POSTSIDER_MCP_ALLOW_APPROVAL_DECISIONS=true; never on the hosted server. Needs the approvals:decide scope on the key, which a key never has by default. A key cannot decide an approval it requested or whose post it created. | Schedules the post on a final approval |
postsider_connect_channel | Get the sign-in link to connect or reconnect a social account (the user approves it on the platform). Needs channels:write. | Starts a connection |
postsider_set_channel_enabled | Switch a channel on or off. Needs channels:write and an admin role. | Reversible |
postsider_disconnect_channel | Disconnect a channel; unpublished posts become drafts. Needs channels:write. | Destructive |
postsider_set_queue_plan | Replace a channel's posting slots ({time, days?}: minutes from midnight, optional weekdays 0-6). Read the plan first, it is replaced whole. Needs channels:write and an admin role. | Replaces settings |
postsider_set_channel_customer | Assign a channel to a client by name. Needs channels:write and an admin role. | Reversible |
postsider_save_library_item | Create or update a hashtag group, caption template or UTM preset. | Creates content |
postsider_delete_library_item | Delete a library item. | Destructive |
postsider_duplicate_post | Copy a post as a new draft, optionally onto another channel. | Creates a draft |
postsider_check_policy | Dry run of the workspace policies for a post you are about to create: effect (ALLOW, REQUIRE_APPROVAL, BLOCK), matched rule names and whether this key may do it. Writes nothing. Needs posts:read. | Read only |
postsider_check_post | AI check of draft text for up to 3 platforms (uses the monthly AI allowance). | Uses AI quota |
postsider_rewrite_post | AI rewrites of a text in a chosen tone (uses the monthly AI allowance). | Uses AI quota |
postsider_delete_media | Delete a media file from the library and storage. | Destructive |
postsider_delete_post | Permanently delete a post and every other channel version of it (one group). Read the post first. | Destructive |
postsider_pause_publishing | Emergency stop for the whole organization. Resuming is human-only. | Destructive |
| Scope | Allows |
|---|---|
posts:read | Every read tool. |
posts:write | Posts, media, library, duplication and AI checks. |
channels:write | Connecting, enabling, disabling, re-timing, re-assigning and disconnecting channels. Granted separately so an agent that may only schedule posts cannot reconfigure the workspace. Connections made before this scope existed need to be reconnected to get it. |
Billing, team and roles, API keys, MFA, account deletion and resuming a paused workspace are deliberately not available to agents; they stay in the dashboard.
Every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint explicitly, so a client can tell a read from a kill switch.
For the exact API endpoint/scope matrix, a no-publication draft → readback → schedule → status test and the Claude/Codex/Cursor verification checklist, see API & MCP trust checklist.
| Variable | Required | Default | Description |
|---|---|---|---|
POSTSIDER_API_KEY | yes | - | Organization API key (Settings -> API) |
POSTSIDER_API_URL | no | https://api.postsider.com | Instance base URL |
POSTSIDER_MCP_ALLOW_APPROVAL_DECISIONS | no | unset (off) | Local stdio server only. Exactly true registers postsider_decide_approval. Anything else leaves it out. |
POSTSIDER_API_URL must be HTTPS. Plain HTTP is accepted only on loopback (localhost, 127.0.0.1, [::1]) for local development.
For a self-hosted instance, point POSTSIDER_API_URL at where the public API is served. Behind the bundled nginx the API lives under /api, so use your domain plus /api, e.g. https://social.example.com/api. The server appends /public/v1 to whatever you set.
POSTSIDER_API_URL are rejected.Only the beginning is shown; read the rest in the repo