返回 MCP 目录
public公开dns本地运行

Transistor-MCP

Transistor MCP服务器提供与Transistor.fm API交互的工具,用于管理播客、剧集和查看分析数据。

article

README

🚀 Transistor API 中文文档

Transistor 提供了一系列 RESTful API,用于管理您的播客内容。借助这些 API,您能够轻松地创建、更新、删除节目,获取分析数据,管理订阅者,以及上传音频文件。

🚀 快速开始

使用 Transistor API 前,请牢记以下两点:

  • 所有 API 请求都需要有效的 API 密钥。
  • 音频文件必须通过 authorize_UPLOAD API 获取上传权限后才能使用。

📚 详细文档

🔍 创建剧集

  • 请求地址POST /v1/episodes
  • 请求参数: | 参数 | 详情 | | ---- | ---- | | show_id | 节目 ID,必填字符串 | | title | 剧集标题,必填字符串 | | description | 剧集描述,可选字符串 | | episode_number | 剧集编号,可选整数 | | season_number | 季节数,可选整数 | | audio_url | 音频文件的 URL,必须通过 authorize_UPLOAD API 获取 |
  • 响应示例
{
  "data": {
    "id": "123456",
    "title": "我的新剧集",
    "description": "这是一个关于播客的新剧集。",
    "episode_number": 1,
    "season_number": 1,
    "audio_url": "https://example.com/episode.mp3"
  }
}

🔍 获取剧集

  • 请求地址GET /v1/episodes/{episode_id}
  • 路径参数: | 参数 | 详情 | | ---- | ---- | | episode_id | 剧集 ID,必填字符串 |
  • 响应参数: | 参数 | 详情 | | ---- | ---- | | id | 剧集 ID,字符串 | | title | 剧集标题,字符串 | | description | 剧集描述,字符串 | | episode_number | 剧集编号,整数 | | season_number | 季节数,整数 | | audio_url | 音频文件的 URL,字符串 |

🔍 更新剧集

  • 请求地址PATCH /v1/episodes/{episode_id}
  • 路径参数: | 参数 | 详情 | | ---- | ---- | | episode_id | 剧集 ID,必填字符串 |
  • 请求参数: | 参数 | 详情 | | ---- | ---- | | title | 新的剧集标题,字符串 | | description | 新的剧集描述,字符串 | | episode_number | 新的剧集编号,整数 | | season_number | 新的季节数,整数 |
  • 响应示例
{
  "data": {
    "id": "123456",
    "title": "更新后的标题",
    "description": "新的描述。",
    "episode_number": 1,
    "season_number": 1
  }
}

🔍 删除剧集

  • 请求地址DELETE /v1/episodes/{episode_id}
  • 路径参数: | 参数 | 详情 | | ---- | ---- | | episode_id | 剧集 ID,必填字符串 |
  • 响应示例
{
  "message": "剧集删除成功。"
}

🔍 获取分析数据

  • 请求地址GET /v1/analytics/episodes/{episode_id}
  • 路径参数: | 参数 | 详情 | | ---- | ---- | | episode_id | 剧集 ID,必填字符串 |
  • 响应参数: | 参数 | 详情 | | ---- | ---- | | plays | 播放次数,整数 | | unique_plays | 独特播放次数,整数 | | average_rating | 平均评分,可选数值 | | total_ratings | 总评分数量,整数 |

🔍 获取所有剧集的分析数据

  • 请求地址GET /v1/analytics/episodes
  • 响应参数: | 参数 | 详情 | | ---- | ---- | | data | 数组,包含各个剧集的分析数据,每个对象包含以下字段: | | data.episode_id | 剧集 ID,字符串 | | data.title | 剧集标题,字符串 | | data.plays | 播放次数,整数 | | data.unique_plays | 独特播放次数,整数 |

🔍 管理订阅者

⚠️ 重要提示

此功能尚未实现,敬请期待。

🔍 授权上传音频文件

  • 请求地址POST /v1/uploads
  • 请求参数: | 参数 | 详情 | | ---- | ---- | | episode_title | 剧集标题,必填字符串 | | episode_description | 剧集描述,可选字符串 |
  • 响应参数: | 参数 | 详情 | | ---- | ---- | | upload_url | 音频文件的上传 URL,字符串 | | audio_url | 成功上传后返回的音频 URL,字符串 |
  • 示例代码
import requests

# 获取预签名URL
response = requests.post('https://api.transistor.fm/v1/uploads', json={
    'episode_title': '我的新剧集',
    'episode_description': '这是一个关于播客的新剧集。'
})
data = response.json()
upload_url = data['upload_url']

# 上传音频文件
with open('episode.mp3', 'rb') as file:
    response = requests.put(upload_url, data=file)

🔍 获取已认证用户信息

  • 请求地址GET /v1/users
  • 响应参数: | 参数 | 详情 | | ---- | ---- | | user_id | 用户 ID,字符串 | | email | 用户邮箱,字符串 |

🔍 尚未实现的功能

  • 获取订阅者列表GET /v1/subscribers
  • 创建订阅者POST /v1/subscribers
  • 更新订阅者PATCH /v1/subscribers/{subscriber_id}
  • 删除订阅者DELETE /v1/subscribers/{subscriber_id}

💻 使用示例

基础用法

创建剧集

import requests

response = requests.post('https://api.transistor.fm/v1/episodes', json={
    'show_id': '12345',
    'title': '我的新剧集',
    'description': '这是一个关于播客的新剧集。',
    'episode_number': 1,
    'season_number': 1,
    'audio_url': 'https://example.com/episode.mp3'
})
print(response.json())

获取分析数据

import requests

response = requests.get('https://api.transistor.fm/v1/analytics/episodes/12345')
print(response.json())
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端