MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
作者提供的说明(英文原文)
MCP server for SendGrid's v3 API: email marketing, transactional mail, templates, and analytics.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
SENDGRID_API_KEY, READ_ONLY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"sendgrid": {
"command": "npx",
"args": [
"-y",
"sendgrid-mcp"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"READ_ONLY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add sendgrid --env SENDGRID_API_KEY=your-value --env READ_ONLY=your-value -- npx -y sendgrid-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"sendgrid": {
"command": "npx",
"args": [
"-y",
"sendgrid-mcp"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"READ_ONLY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"sendgrid": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"sendgrid-mcp"
],
"env": {
"SENDGRID_API_KEY": "your-value",
"READ_ONLY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
READ_ONLY env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 deyikong 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:SENDGRID_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.4.0)于2个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有: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、图片和脚本已被移除。链接会离开本站。
A Model Context Protocol (MCP) server that provides comprehensive access to SendGrid's API v3 for email marketing, transactional email operations, dynamic template management, and detailed analytics. Features 154 tools covering all aspects of email management and performance analysis.
*Built and maintained by a SendGrid engineer, as an independent project — not an official SendGrid product.*
See RELEASES.md for what's changed in the latest release.
✅ Claude Desktop - Official desktop app ✅ Claude Code - Official CLI tool ✅ Claude custom connectors - via Streamable HTTP (see Install the server) ✅ OpenAI Responses API / Apps SDK - via Streamable HTTP ✅ MCP Market - Hosted, one-click deploy, no install required (see Install the server) ✅ Cline - VS Code extension ✅ Zed Editor - Modern code editor ✅ Continue - VS Code autopilot ✅ Codex CLI - via Streamable HTTP ✅ Any MCP-compatible client
Follow these steps in order — by the end you'll have the server installed (or deployed), your SendGrid API key set, and your MCP client connected.
This is the actual request path, whichever client you end up using — some launch the server locally over stdio, others reach it over the network via Streamable HTTP (MCP Market, self-hosted), which adds a choice of client auth on top:
┌──────────┐
│ Client │ └────┬─────┘ ┌──────────────────────┴───────────────────┐ │ │ stdio (local subprocess) HTTP (network) │ auth: none | token | oauth │ │ │ └──────────────────────┬───────────────────┘ ▼ ┌────────────────────┐ │ MCP Server │ │ (this repo) │ └─────────┬──────────┘ │ SENDGRID_API_KEY │ (always required, any transport) ▼ ┌────────────────────┐ │ SendGrid API │ └────────────────────┘
SENDGRID_API_KEY is required no matter which path you take. READ_ONLY=true (the default) is a further gate *inside* the MCP Server box — it blocks create/update/delete/send tools once a request is already in, regardless of which branch it arrived on. See Environment Variables for the full list of what you can configure.
Install it locally if your client launches it itself, or go remote if it connects over the network instead.
Local (stdio) — for Claude Desktop, Claude Code, Cline, Zed, Continue, or any client that runs the server as a subprocess:
npm install -g sendgrid-mcp
This installs the sendgrid-mcp command globally, which your MCP client will launch as a subprocess. Requires Node.js 20+.
Remote (HTTP) — nothing to install locally; pick one:
MCP Market (hosted, no install required)
MCP Market deploys and hosts this server for you — nothing to install locally and no environment variables to manage on your machine. You still need a SendGrid API key; you'll enter it into MCP Market instead of your own shell/config.
From MCP Market's MCP Servers page, deploy a custom MCP from either source:
https://github.com/deyikong/sendgrid-mcp), and pick a server name.sendgrid-mcp), and pick a server name.Either way, MCP Market builds and runs it for you; it shows up under MCP Servers with a Running status once ready. Continue to Configure your MCP client to set your credentials and connect.
Self-hosted (Streamable HTTP)
Run the server yourself and expose it over Streamable HTTP instead of letting a client launch it locally — for Claude custom connectors, OpenAI's Responses API mcp tool / Apps SDK, or any other remote client.
The MCP endpoint is POST /mcp; GET /health returns a status document for load balancers. Requests are handled statelessly (no session id required), which is what hosted clients expect.
none/token/oauth below are not alternate ways to *connect* — they're three different locks on the one new door (HTTP), as shown in the request-flow diagram above.
export SENDGRID_API_KEY="SG.your_api_key_here"
export MCP_TRANSPORT=http export MCP_AUTH_MODE=token export MCP_AUTH_TOKEN="$(openssl rand -hex 32)"
sendgrid-mcp
Set MCP_AUTH_MODE to one of:
| Mode | Use for | Requires |
|---|---|---|
oauth | Production / remote clients | MCP_OAUTH_ISSUER, MCP_OAUTH_AUDIENCE |
token | Local dev, simple self-hosting | MCP_AUTH_TOKEN (16+ chars) |
none | Loopback development only | — refuses to start on a public bind |
OAuth mode makes this server an OAuth 2.1 resource server. It does not issue or store credentials — it verifies access tokens minted by your existing identity provider (Auth0, Okta, Entra ID, Google, Stytch, …) against that provider's published JWKS.
export MCP_AUTH_MODE=oauth
export MCP_OAUTH_ISSUER="https://your-tenant.auth0.com" export MCP_OAUTH_AUDIENCE="https://mcp.example.com" export MCP_OAUTH_REQUIRED_SCOPES="sendgrid:read" export MCP_PUBLIC_URL="https://mcp.example.com"
SENDGRID_API_KEY (see the diagram in Getting Started) is still required alongside these — OAuth only controls who can reach the server, not what the server uses to talk to SendGrid.
The server publishes RFC 9728 Protected Resource Metadata at /.well-known/oauth-protected-resource, so clients discover your authorization server automatically: an unauthenticated request gets a 401 whose WWW-Authenticate header points at that document, the client reads it, sends the user to your IdP to log in, and retries with the resulting token.
Tokens are rejected (401) if expired, wrongly signed, or issued for a different issuer or audience; a valid token missing a required scope gets 403.
Whichever provider you use, you're configuring the same three things: an issuer URL, an audience (a stable identifier for this API resource), and a scope clients will request. A few concrete walkthroughs:
Auth0
https://mcp.example.com. It doesn't need to resolve to anything; it just needs to be unique.sendgrid:read, sendgrid:write.https://YOUR_TENANT.auth0.com/.export MCP_OAUTH_ISSUER="https://YOUR_TENANT.auth0.com/"
export MCP_OAUTH_AUDIENCE="https://mcp.example.com" export MCP_OAUTH_REQUIRED_SCOPES="sendgrid:read"
Okta
default authorization server, or create a new one. Its Issuer URI, shown at the top of the server's settings page, looks like https://{yourOktaDomain}/oauth2/{authServerId}.api://default) is what you'll use for the audience — set it to something specific to this server, e.g. api://sendgrid-mcp.sendgrid:read.export MCP_OAUTH_ISSUER="https://YOUR_OKTA_DOMAIN/oauth2/YOUR_AUTH_SERVER_ID"
export MCP_OAUTH_AUDIENCE="api://sendgrid-mcp" export MCP_OAUTH_REQUIRED_SCOPES="sendgrid:read"
Microsoft Entra ID (Azure AD)
api:// .sendgrid.read.https://login.microsoftonline.com/{tenant-id}/v2.0, where {tenant-id} is the directory (tenant) ID from the app's Overview page.export MCP_OAUTH_ISSUER="https://login.microsoftonline.com/YOUR_TENANT_ID/v2.0"
export MCP_OAUTH_AUDIENCE="api://YOUR_CLIENT_ID" export MCP_OAUTH_REQUIRED_SCOPES="sendgrid.read"
Other providers (Google Identity Platform, Stytch, …) follow the same shape: find the OpenID Connect issuer (usually published at /.well-known/openid-configuration), define an audience/resource identifier for this server, and create a scope for it.
Whichever provider you use, also set MCP_PUBLIC_URL to the externally-reachable URL of your server (e.g. https://mcp.example.com) — clients use it during OAuth discovery.
Either terminate TLS in-process:
export TLS_KEY_FILE=/etc/ssl/private/mcp.key
export TLS_CERT_FILE=/etc/ssl/certs/mcp.crt export TLS_CA_FILE=/etc/ssl/certs/chain.pem # optional intermediates
…or terminate it at a proxy and tell the server to trust the forwarded headers
只显示了开头部分;其余内容请在仓库中阅读