播客管理服务器

一个通过Podbean API管理播客的MCP服务器,支持播客、剧集和数据分析的自然语言交互管理。

  • by amurshak
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 amurshak/podbeanMCP

使用说明

🎙️ Podbean MCP服务器🎧

MCP服务器,用于通过Podbean API管理您的播客。

🎉 概述

此MCP服务器将任何兼容MCP的AI助手连接到Podbean API。无论您是使用Cline(IDE MCP客户端)、Claude Desktop还是任何其他MCP客户端,您现在都可以通过自然对话来管理您的播客、剧集和分析!

✨ 特性

🔐 认证

  • 用于管理您自己的播客的客户端凭据身份验证
  • 用于第三方访问的OAuth流(需要时)
  • 多个播客的令牌管理-兼顾所有播客!

🎙️ 播客管理

  • 在一个地方列出你所有很棒的播客
  • 了解你的节目的细节
  • 查看你的统计数据和分析(谁在听?)
  • 浏览播客类别以找到您的细分市场

📝 事件管理

  • 浏览播客的所有剧集
  • 深入了解任何一集的细节
  • 轻松发布新剧集(无需更复杂的表单!)
  • 需要调整时更新现有剧集
  • 删除不太符合要求的剧集

📁 文件管理(有限)

  • 获取文件上传到Podbean的授权(预签名URL)
  • 注: 由于STDIO协议的限制,此服务器无法直接上传文件
  • 服务器提供必要的授权和文件密钥,但实际的文件上传必须由外部处理

📊 分析

  • 查看您的播客下载量
  • 跟踪你每天的听众数量(看着他们增长!)
  • 查看用户如何与您的内容交互

🌐 公共播客访问

  • 通过oEmbed访问公共播客数据
  • 获取任何公开事件的独家新闻

🧰 先决条件

  • Python 3.10或更高版本(如果你还没有升级,是时候升级了!)
  • 具有API访问权限的Podbean帐户(免费或付费-欢迎使用)
  • Podbean API证书(客户ID和秘密-王国的神奇钥匙)

🚀 安装

通过Smithery安装

通过以下方式自动安装克劳德桌面版Podbean播客管理器 史密瑟里:

npx -y @smithery/cli install @amurshak/podbeanmcp --client claude
  1. 获取代码:

    git clone <repository-url>
    cd PodbeanMCP
    
  2. 使用超高速设置虚拟环境 uv 工具:

    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    
  3. 安装软件包及其依赖项:

    # Using uv (faster)
    uv pip install -e .
    

    或者,如果你更喜欢传统的pip:

    pip install -e .
    

    这将安装pyproject.toml文件中的所有依赖项,包括:

    • mcp[cli](mcp SDK)
    • httpx(用于API请求)
    • python dotenv(用于环境变量)
    • pydantic(用于数据验证)
  4. 创建一个 .env 使用您的秘密Podbean能力文件:

    PODBEAN_CLIENT_ID=your_client_id
    PODBEAN_CLIENT_SECRET=your_client_secret
    

📝 在cline_mcp_settings.json中配置

建议使用此MCP服务器的方法是直接在cline_MCP_settings.json文件中配置它。这允许Cline IDE MCP客户端在需要时自动启动服务器。

  1. 找到您的cline_mcp_settings.json文件。Cline IDE使用此文件配置MCP服务器。有关此文件在系统上的确切位置,请参阅Cline IDE文档。

  2. 将Podbean MCP服务器配置添加到“mcpServers”对象中:

{
  "mcpServers": {
    "Podbean MCP": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "/full/path/to/PodbeanMCP/server.py"
      ],
      "env": {
        "PODBEAN_CLIENT_ID": "your_client_id",
        "PODBEAN_CLIENT_SECRET": "your_client_secret"
      }
    }
  }
}
  1. 自定义配置:

    • 替换 /full/path/to/PodbeanMCP/server.py 带有server.py文件的绝对路径
    • 替换 your_client_id 和 your_client_secret 使用.env文件中的Podbean API凭据
    • 如果你不使用 uv,相应地调整命令和参数
  2. 保存文件并重新启动Cline IDE

重要提示:您不需要手动运行服务器 python server.py 当使用此配置时。Cline IDE将在需要时自动启动服务器,Claude(AI)将能够访问它。

多服务器示例

如果您的配置中已经有其他MCP服务器,只需将Podbean MCP服务器添加为新条目:

{
  "mcpServers": {
    "Some Other MCP": {
      "command": "...",
      "args": [
        "..."
      ]
    },
    "Podbean MCP": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "mcp[cli]",
        "mcp",
        "run",
        "/full/path/to/PodbeanMCP/server.py"
      ],
      "env": {
        "PODBEAN_CLIENT_ID": "your_client_id",
        "PODBEAN_CLIENT_SECRET": "your_client_secret"
      }
    }
  }
}

🧪 测试您的安装

在cline_MCP_settings.json文件中配置MCP服务器后,您可以通过让Claude使用Podbean MCP工具之一来测试它是否正常工作:

  1. 使用Podbean进行身份验证:

    Can you authenticate with my Podbean account using the Podbean MCP server?
    
  2. 列出您的播客:

    Can you list my podcasts using the Podbean MCP server?
    
  3. 获取特定播客的剧集:

    Can you get the episodes for my podcast with ID "your_podcast_id" using the Podbean MCP server?
    

如果Claude成功执行这些命令并返回预期结果,则您的Podbean MCP服务器工作正常!

🔧 可用工具

🔑 身份验证工具

  • authenticate_with_podbean():获得Podbean的VIP后台通行证
  • get_podcast_tokens():为所有播客(如《口袋妖怪》)收集代币
  • get_podcast_token(podcast_id):只为那个特别的播客拿一个代币

🎙️ 播客工具

  • list_podcasts_tool():浏览一下你的播客帝国
  • get_podcast_info():在播客中获取411
  • get_podcast_stats(podcast_id, start_date, end_date, period, episode_id):数字、图表和吹牛的权利!
  • get_daily_listeners(podcast_id, month):跟踪您日益增长的受众
  • browse_podcast_categories():按类别探索播客世界

🎧 剧集工具

  • get_podcast_episodes_tool(podcast_id):收集你节目中的所有剧集
  • get_episode_details_tool(episode_id):放大特定剧集
  • publish_episode(podcast_id, title, content, ...)向世界发出你的声音!
  • update_episode(episode_id, podcast_id, ...):把那一集调整到完美
  • delete_episode(episode_id, podcast_id, delete_media):哎呀!那一个必须离开。..

💾 文件授权工具(有限)

  • authorize_file_upload(podcast_id, filename, filesize, content_type):获取上传文件的权限
  • upload_file_to_podbean(presigned_url, file_path, content_type, file_key): 注意:这是一个占位符函数,模拟文件上传,但由于STDIO协议的限制,实际上并不传输文件

🌐 公共访问工具

  • get_oembed_data(url):为任何Podbean URL获取可嵌入的好东西
  • get_public_episode_info(episode_url):在任何公开节目中窥探(当然是合法的!)

🔗 OAuth工具(用于第三方访问)

  • generate_oauth_url(redirect_uri, scope, state):创建一个神奇的登录链接
  • exchange_oauth_code(code, redirect_uri):用你的代码换一个闪亮的代币
  • refresh_oauth_token(refresh_token):续订过期的令牌-无需排队等候!

📚 可用资源

  • podbean://auth:您的认证宝箱
  • podbean://podcast/{podcast_id}:播客集
  • podbean://episode/{episode_id}:关于一集的所有有趣的细节
  • podbean://upload/authorize:您的上传许可单(但不是实际上传)
  • podbean://categories:播客类百科全书
  • podbean://public/oembed:为任何Podbean URL嵌入友好数据
  • podbean://oauth/authorize:您的OAuth权限网关

💬 可用提示

  • podcast_summary(podcast_id):“嘿,AI,你能总结一下我的播客吗?”
  • episode_transcript(episode_id):“请把我的漫谈变成可读的文本!”

💬 使用任何MCP客户端的示例

以下是使用此MCP服务器与您的AI助手聊天的一些有趣方法:

  1. 获取VIP通行证:

    Hey, can you authenticate with my Podbean account and show me my podcast collection?
    
  2. 总结这些剧集:

    I'm feeling nostalgic! Show me all the episodes from my "Cooking with Code" podcast.
    
  3. 与世界分享你的才华:

    I'm ready to drop a new episode! It's called "AI in Podcasting" and it's all about how AI is making podcasting easier and more fun. Can you help me publish it?
    
  4. 检查是否有人在听 👂:

    How's my podcast doing? Can you show me the download stats from last week?
    

🛠️ 错误处理

当事情发生意外时,我们会支持你!此服务器具有超级友好的错误处理功能:

  • 身份验证打嗝?我们将指导您修复它们🔧
  • API给你添麻烦?我们会告诉你到底出了什么问题🚨
  • 尝试了一些无法计算的东西?我们会在它坏之前通知你的🤓
  • 对人类有意义的详细错误消息! 😮‍💨

🚧 局限性

  • 文件上传:由于STDIO协议的限制,此服务器无法直接将文件上传到Podbean。它可以获得必要的授权(预签名的URL)和文件密钥,但实际的文件传输必须由外部工具或流程处理。
  • 一些花哨的功能可能需要付费的Podbean订阅💳
  • Podbean有速率限制,所以不要对请求过于疯狂🚀
  • 我们不能让你的播客内容病毒式传播(这仍然取决于你!)🌟

👩‍💻 贡献

你有办法让它变得更好吗?我们很乐意得到你的帮助!分叉、编码,并向我们发送拉取请求。让我们一起让播客管理变得更加棒! 🤝

📃 许可证

[在此处插入您最喜欢的许可证-如果可能的话,请保持其开源!]

👏 致谢

  • Podbean API文档背后的神奇人物📖
  • 创建MCP SDK的向导🧙‍♂️
  • 感谢您使用此工具制作出色的播客! 🎉