MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
作者提供的说明(英文原文)
Self-driving LinkedIn prospecting: it sources, warms and invites daily. You approve every message.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
Authorization标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
这个地址需要在请求的 header 中放入密钥,而添加连接器的菜单无法设置。请改用 Claude Code、Cursor 或 VS Code。
在终端中运行这条命令
claude mcp add --transport http linkedin https://agent.gtmotto.com/mcp --header 'Authorization: your-value'运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"linkedin": {
"url": "https://agent.gtmotto.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"linkedin": {
"type": "http",
"url": "https://agent.gtmotto.com/mcp",
"headers": {
"Authorization": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个地址需要在请求的 header 中放入密钥,而添加连接器的菜单无法设置。请改用 Claude Code、Cursor 或 VS Code。
你的选择通过 Cookie 保存在这台设备上,无需账户。
Authorization 机密 HTTP header这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过域名 gtmotto.com 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:Authorization
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(1.2.1)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
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.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Give Claude a LinkedIn seat that works while you sleep.
GTM Otto is self-driving LinkedIn prospecting. From Claude, Cursor or ChatGPT you describe who you want to meet; GTM Otto finds them daily, warms them up from your own LinkedIn account (visit, like, comment), invites them, and opens the conversation. Nothing is said without you.
This repository is the public home of the GTM Otto MCP server: the registry manifest (server.json), the Claude Code plugin with eight skills, the tool reference and the onboarding guide. The server itself runs at https://agent.gtmotto.com/mcp (Streamable HTTP).
Release status (2026-09-22): listed on the official MCP Registry as com.gtmotto/linkedin (manifest 1.2.1). https://agent.gtmotto.com/mcp answers initialize with no credentials; OAuth is served at /.well-known/oauth-protected-resource (authorization server clerk.gtmotto.com); 21 tools are deployed, including gtm_connect_linkedin and the three approval tools.
Every other LinkedIn MCP is a remote control for a tool you still have to operate: lists to upload, sequences to build, seats to rotate. GTM Otto is the only one where the outreach keeps running after the chat ends. A play is an ICP plus up to five sourcing lanes plus an autonomy level. The server exposes 21 tools and, deliberately, no send verb: the agent can set up, size, preview, launch, pause and review a play, and it can approve or reject one drafted message at a time, but it cannot write to a stranger on your behalf.
The endpoint is the same everywhere: https://agent.gtmotto.com/mcp.
Authentication. Add the server with no credentials. The first time the agent calls a protected tool, the client shows a Connect card; sign in (or sign up) in the popup and the call is retried. Scripts and clients that cannot do OAuth can send an API key instead: Authorization: Bearer gtm_sk_..., minted at app.gtmotto.com/connect.
Settings, then Connectors, then Add custom connector. Name it GTM Otto, paste https://agent.gtmotto.com/mcp, save. Start a chat and say what you want; the Connect card appears on the first protected call.
claude mcp add --transport http gtmotto https://agent.gtmotto.com/mcp
Then /mcp inside a session to authenticate in the browser. To use an API key instead:
claude mcp add --transport http gtmotto https://agent.gtmotto.com/mcp \
--header "Authorization: Bearer gtm_sk_..."
The deeplink is cursor://anysphere.cursor-deeplink/mcp/install?name=gtmotto&config=eyJ1cmwiOiJodHRwczovL2FnZW50Lmd0bW90dG8uY29tL21jcCJ9, where the config value is the base64 of {"url":"https://agent.gtmotto.com/mcp"}. By hand, add this to .cursor/mcp.json:
{
"mcpServers": { "gtmotto": { "url": "https://agent.gtmotto.com/mcp" } } }
Settings, then Connectors, then Create (developer mode must be on). Name GTM Otto, URL https://agent.gtmotto.com/mcp, authentication OAuth. Enable the connector in a chat from the tools menu.
Any MCP client that speaks Streamable HTTP works: point it at https://agent.gtmotto.com/mcp, with OAuth or the Authorization header above. n8n, Windsurf, VS Code and the reference mcp-remote shim all fit.
The gtm-otto plugin connects the server and adds eight skills that turn a sentence into a running play:
/plugin marketplace add gtmotto/mcp
/plugin install gtm-otto@gtmotto
| Skill | What it does |
|---|---|
launch-a-play | Estimate the ICP, create a draft play, connect LinkedIn, preview each lane, confirm, activate, explain the next 48 hours. |
icp-to-play | A sentence, a URL or a persona into the seven ICP facets, a company count, and a people_search lane on a new draft or an existing play. |
post-discovery | Turn "people complaining about X on LinkedIn" into a Post discovery lane, with a worked French example. |
hiring-signals | "Companies hiring for X" into a Job offers lane that reaches the buyer inside each hiring company, not the recruiter. |
weekly-play-review | Stats, run history and the approval queue folded into a one-page review with concrete changes. |
instantly-to-linkedin | With the Instantly MCP also connected: companies that opened or replied to a campaign become an account list on LinkedIn. |
heyreach-migration | From an exported HeyReach lead list: companies to an account list, facets to the ICP, and an honest note on what does not carry over. |
linkedin-safety-check | Seat state, daily cap and working hours turned into a plain-English health report. |
Each skill names the exact tools and arguments it calls, what to show you, and where it stops to ask.
Full reference with arguments: docs/tools.md.
| Tool | Scope | One line |
|---|---|---|
gtm_whoami | read | Org, plan, lead meter, and the next step to follow. Start here. |
gtm_list_plays | read | Every play with product, status, seat and pipeline spread. |
gtm_show_play | read | One play in full: ICP, lanes, autonomy ladder, cap, working hours, seat. |
gtm_play_stats | read | The pipeline over four windows, each with its delta versus the window before. |
gtm_linkedin_status | read | The play's seat state and today's headroom against LinkedIn's limits. |
gtm_sources_reference | read | The reference for every sourcing lane. Read before configuring one. |
gtm_show_sources | read | All five lanes of a play: config, switch, blockers, last run, memory. |
gtm_source_runs | read | Run history of one lane, newest first. |
gtm_list_approvals | read | Drafted messages waiting for a human, with their approval ids. |
gtm_estimate_icp | write | "About N companies match" for a candidate ICP. Writes nothing. |
gtm_create_play | write | Create a fully configured play. Draft by default; activate flag. |
gtm_update_icp | write | Change a play's seven ICP facets. Only the ones you name. |
gtm_update_play | write | Name, goal, voice, paused, status active or draft, dailyCap, workingHours. |
gtm_configure_source | write | Write a lane's settings (merge). Can switch it on in the same call. |
gtm_set_source | write | Switch a lane on or off. Refused when there is nothing to run on. |
gtm_preview_source | write | Dry-run one lane: size and a 10-person sample. No side effects. |
gtm_run_source | write | Run one lane now. Real leads, real budget. Only when asked. |
gtm_forget_harvested_posts | write | Clear a post lane's memory so a settings change can be re-tested. Costs. |
gtm_connect_linkedin | write | Returns a browser link to connect the LinkedIn seat; then poll gtm_linkedin_status. |
gtm_approve | write | Approve one drafted message by approval id. The client asks you first. |
gtm_reject | write | Reject one drafted message by approval id. The client asks you first. |
gtm_preview_source is free of side effects; gtm_run_source spends real budget and is only called when you asked.account_list, at most 100) and post URLs, never a CSV of individual LinkedIn profiles.server.json registry manifest (com.gtmotto/linkedin)
.claude-plugin/marketplace.json Claude Code marketplace "gtmotto" plugins/gtm-otto/ the plugin: MCP server + eight skills .claude-plugin/plugin.json skills/ /SKILL.md docs/tools.md the 21 tools with arguments docs/onboarding.md the ideal first conversation CHANGELOG.md
com.gtmotto/linkedinThe playbooks that need nothing but LinkedIn (find buyers in comments, ICP to a Sales Navigator search, hiring-signal prospecting by hand, LinkedIn limits, the comment and invite writer) live in gtmotto/gtm-skills. That repository registers no server and needs no account; each of its skills ends with a pointer to the skill here that runs the same recipe daily.
This repository is mirrored out of the GTM Otto monorepo. Issues and pull requests are welcome here and are read; fixes are applied upstream and land in the next mirror, so a PR may be closed with a "merged upstream" note rather than merged in place. Keep prose free of em dashes, and never describe the product as an automated sales rep of any kind: it is self-driving LinkedIn prospecting.
MIT. See LICENSE.