Back to MCP directory
publicPublicdnsLocal runtime

NvkAnirudh_YT-to-LinkedIn-MCP-Server

一个基于MCP协议的服务器,能够自动从YouTube视频中提取字幕并生成专业的LinkedIn帖子草稿。

article

README

🚀 YouTube 到 LinkedIn MCP 服务器

本项目是一个模型上下文协议(MCP)服务器,能够自动化地从 YouTube 视频生成 LinkedIn 帖子草稿。它基于 YouTube 视频字幕,为用户提供高质量、可编辑的内容草稿。

🚀 快速开始

本服务器可自动化地从 YouTube 视频生成 LinkedIn 帖子草稿,为用户提供便捷的内容创作体验。

✨ 主要特性

  • YouTube 字幕提取:通过视频链接提取 YouTube 视频的字幕
  • 字幕总结:使用 OpenAI GPT 生成简洁的视频内容摘要
  • LinkedIn 帖子生成:创建语气和风格可定制的职业 LinkedIn 帖子草稿
  • 模块化 API 设计:干净的 FastAPI 实现,定义明确的端点
  • 容器化部署:准备好在 Smithery 上部署

📦 安装指南

先决条件

  • Python 3.8+
  • Docker(用于容器化部署)
  • OpenAI API 密钥
  • YouTube 数据 API 密钥(可选,但推荐以获得更好的元数据)

本地开发

  1. 克隆仓库:
git clone <repository-url>
cd yt-to-linkedin
  1. 创建虚拟环境并安装依赖项:
python -m venv venv
source venv/bin/activate  # Windows 上:venv\Scripts\activate
pip install -r requirements.txt
  1. 在项目根目录中创建一个 .env 文件,添加你的 API 密钥:
OPENAI_API_KEY=your_openai_api_key
YOUTUBE_API_KEY=your_youtube_api_key
  1. 运行应用程序:
uvicorn app.main:app --reload
  1. 访问 API 文档:http://localhost:8000/docs

Docker 部署

  1. 构建镜像:
docker build -t yt-to-linkedin .
  1. 运行容器:
docker run -p 8000:8000 --env OPENAI_API_KEY=your_key --env YOUTUBE_API_KEY=your_key yt-to-linkedin

💻 使用示例

基础用法

本服务器提供了多个 API 端点,以下是一些使用示例。

YouTube 字幕提取

// 请求体
{
  "video_id": "string"
}

// 响应
{
  "subtitles": {
    "content": "string",
    "language": "string"
  }
}

LinkedIn 帖子生成

// 请求体
{
  "title": "string",
  "content": "string",
  "format": "markdown" | "plain"
}

// 响应
{
  "post": {
    "id": "string",
    "content": "string",
    "character_count": integer
  }
}

输出格式化

// 请求体
{
  "post_content": "string",
  "format": "json"
}

// 响应
{
  "content": {
    "post_content": "string",
    "character_count": integer
  },
  "format": "json"
}

📚 详细文档

API 端点

1. YouTube 字幕提取

  • 端点/api/v1/subtitles
  • 方法:POST
  • 请求体
{
  "video_id": "string"
}
  • 响应
{
  "subtitles": {
    "content": "string",
    "language": "string"
  }
}

2. LinkedIn 帖子生成

  • 端点/api/v1/post
  • 方法:POST
  • 请求体
{
  "title": "string",
  "content": "string",
  "format": "markdown" | "plain"
}
  • 响应
{
  "post": {
    "id": "string",
    "content": "string",
    "character_count": integer
  }
}

3. 输出格式化

  • 端点/api/v1/output
  • 方法:POST
  • 请求体
{
  "post_content": "string",
  "format": "json"
}
  • 响应
{
  "content": {
    "post_content": "string",
    "character_count": integer
  },
  "format": "json"
}

环境变量

| 属性 | 详情 | |------|------| | OPENAI_API_KEY | OpenAI API 密钥,用于摘要和帖子生成,可在请求中提供 | | YOUTUBE_API_KEY | YouTube 数据 API 密钥,用于获取视频元数据,可在请求中提供 | | PORT | 服务器运行的端口(默认:8000) |

⚠️ 重要提示

虽然环境变量中的 API 密钥是可选的(因为它们可以在每次请求中提供),但在本地开发和测试时,建议设置它们。当部署到 Smithery 时,用户需要在请求中提供自己的 API 密钥。

📄 许可证

本项目采用 MIT 许可证。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client