Captivate MCP by usefulapi
Read shows, episodes, media and download analytics; update episode text in Captivate.
使うべきか
品質と安全性
検出事項(7)
- LOWcaptivate_list_scheduled_episodes 内
- LOWcaptivate_get_overview_analytics 内
- LOWcaptivate_get_episode_overview_analytics 内
- LOWcaptivate_get_average_analytics 内
- LOWcaptivate_get_episode_total_analytics 内
- LOWcaptivate_get_monthly_analytics 内
- LOWcaptivate_get_episode_monthly_analytics 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"captivate": {
"url": "https://captivate.usefulapi.io/mcp"
}
}
}リモートエンドポイント
https://captivate.usefulapi.io/mcpstreamable-httpできること
ツール一覧
ツール(17)
🟢captivate_get_user(user_id)
Get a Captivate user profile by user id (the id shown in the dashboard API section). Captivate API: GET /users/{id}.
入力スキーマ
{
"type": "object",
"properties": {
"user_id": {
"type": "string",
"description": "The Captivate user id."
}
},
"required": [
"user_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_list_user_shows(user_id)
List the podcasts (shows) a user can access in any role. Good first call to find show ids. Captivate API: GET /users/{id}/shows.
入力スキーマ
{
"type": "object",
"properties": {
"user_id": {
"type": "string",
"description": "The Captivate user id."
}
},
"required": [
"user_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_show(show_id)
Get a podcast show by id: title, description, categories, artwork, status and settings. Captivate API: GET /shows/{id}.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_show_feed(show_id)
Get the public RSS feed URL of a show. Captivate API: GET /shows/{id}/feed.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_list_episodes(show_id)
List the episodes of a show with their status, publish date, titles and shownotes, plus a total count. Captivate API: GET /shows/{id}/episodes.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_list_scheduled_episodes(show_id)
List the episodes of a show that are scheduled for a future publish date. Captivate API: GET /shows/{id}/episodes/scheduled.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_episode(episode_id)
Get the full record of one episode by id. Captivate API: GET /episodes/{id}.
入力スキーマ
{
"type": "object",
"properties": {
"episode_id": {
"type": "string",
"description": "The episode id (from captivate_list_episodes)."
}
},
"required": [
"episode_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_media(media_id)
Get the record of one uploaded media (audio) file by id. Captivate API: GET /media/{id}.
入力スキーマ
{
"type": "object",
"properties": {
"media_id": {
"type": "string",
"description": "The media id."
}
},
"required": [
"media_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_list_show_media(show_id, offset, order, sort)
List the uploaded media files of a show (20 per page) with totalCount. Captivate API: GET /shows/{id}/media.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"offset": {
"description": "Number of items to skip (default 0). The page size is 20.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"order": {
"description": "Sort column, for example created_at.",
"type": "string"
},
"sort": {
"description": "Sort direction.",
"type": "string",
"enum": [
"ASC",
"DESC"
]
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_overview_analytics(show_id, start, end, include_top_episodes)
Download analytics overview of a show for a date range, optionally with top episodes. Captivate API: GET /insights/{show}/overview.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"start": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date, yyyy-mm-dd."
},
"end": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date, yyyy-mm-dd."
},
"include_top_episodes": {
"description": "Include the top episodes.",
"type": "boolean"
}
},
"required": [
"show_id",
"start",
"end"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_episode_overview_analytics(show_id, episode_id, start, end)
Download analytics overview of one episode for a date range. Captivate API: GET /insights/{show}/overview/{episode}.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"episode_id": {
"type": "string",
"description": "The episode id (from captivate_list_episodes)."
},
"start": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Start date, yyyy-mm-dd."
},
"end": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "End date, yyyy-mm-dd."
}
},
"required": [
"show_id",
"episode_id",
"start",
"end"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_average_analytics(show_id, interval_days)
Average downloads per interval of a show (default 28-day intervals). Captivate API: GET /insights/{show}/averages.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"interval_days": {
"description": "Interval length in days (default 28).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_total_analytics(show_id)
All-time download total of a show. Captivate API: GET /insights/{show}/total.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_episode_total_analytics(show_id, episode_id)
All-time download total of one episode. Captivate API: GET /insights/{show}/total/{episode}.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"episode_id": {
"type": "string",
"description": "The episode id (from captivate_list_episodes)."
}
},
"required": [
"show_id",
"episode_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_monthly_analytics(show_id)
Month-by-month downloads of a show for the past 12 months. Captivate API: GET /insights/{show}/monthly.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
}
},
"required": [
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢captivate_get_episode_monthly_analytics(show_id, episode_id)
Month-by-month downloads of one episode. Captivate API: GET /insights/{show}/monthly/{episode}.
入力スキーマ
{
"type": "object",
"properties": {
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"episode_id": {
"type": "string",
"description": "The episode id (from captivate_list_episodes)."
}
},
"required": [
"show_id",
"episode_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴captivate_update_episode(episode_id, show_id, title, shownotes, summary, ...)
WRITE. Change the text fields of an existing episode (title, shownotes, summary, subtitle). Only the fields you pass are sent. It does not publish, delete or change media. Captivate API: PUT /episodes/{id}.
入力スキーマ
{
"type": "object",
"properties": {
"episode_id": {
"type": "string",
"description": "The episode id (from captivate_list_episodes)."
},
"show_id": {
"type": "string",
"description": "The show id (from captivate_list_user_shows)."
},
"title": {
"description": "New episode title.",
"type": "string",
"maxLength": 255
},
"shownotes": {
"description": "New shownotes (HTML allowed, max 4,000 characters).",
"type": "string",
"maxLength": 4000
},
"summary": {
"description": "New Apple Podcasts summary (max 4,000 characters).",
"type": "string",
"maxLength": 4000
},
"itunes_subtitle": {
"description": "New subtitle (max 255 characters).",
"type": "string",
"maxLength": 255
}
},
"required": [
"episode_id",
"show_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}コミュニティ
エビデンス