Public social media data: profiles, posts, comments, transcripts and ad libraries, 30+ platforms.
Connect Remote server
claude mcp add --transport http captapi https://api.captapi.com/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
{
"mcpServers": {
"captapi": {
"url": "https://api.captapi.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
{
"servers": {
"captapi": {
"type": "http",
"url": "https://api.captapi.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
Settings > Connectors > Add custom connector
URL: https://api.captapi.com/mcp
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools 80 found in our last check
youtube_transcriptYouTube's published captions with timestamps — not speech-to-text. Flat 1 credit; 404 is free. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_audio_transcriptSpeech-to-text for YouTube audio. Use it when a video has no captions — or when you want a transcript of what was actually spoken rather than YouTube's published captions. Priced per started minute of audio. Costs 2 credits/min of audio. Empty results and failures are never char…
youtube_summarizeAI summary from YouTube's published captions — same source as /transcript. Flat 3 credits; caption-miss 404 is free. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_video_detailsYouTube video metadata + stats. Always includes degraded / degradedReason — retry when degraded is true. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_commentsGet comments on any YouTube video — text, author, likes, and truncated publishedTimeApprox from the relative label, with cursor pagination (nextCursor + hasMore). Flat 2 credits per call; 0 when the video has comments turned off (commentsDisabled: true). Costs 2 credits. Empty r…
youtube_channel_detailsYouTube channel stats — ISO country, createdAt date-only, real banner or null, quote-aware SEO tags, absolute links. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_searchYouTube search with cursor pagination — typed hits, ids, canonical URLs, filters (2 credits/page, 0 when a page finds nothing). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_channel_videosChannel uploads with cursor pagination — exact publishedAt from reel_item_watch (same as channel-shorts). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_playlist_videosPaginated playlist contents — cursor/nextCursor/hasMore, same row shape as channel-videos. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_playlistPlaylist metadata only — title, channel{}, totalVideos, thumbnailUrl. No videos[]. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_shorts_transcriptTranscript for a YouTube Short — rejects long-form videos (≤3 min only). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_shorts_summarizeAI summary of a YouTube Short — rejects long-form videos (≤3 min only). Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_shorts_detailsYouTube Short metadata — same schema as Video Details, with isShort:true; long-form videos get HTTP 422. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_shorts_commentsComments on a YouTube Short — rejects long-form videos (≤3 min only). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_channel_shortsChannel Shorts with cursor pagination — same row shape as channel-videos (exact publishedAt). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_trending_shortsYouTube Shorts recommendation sequence — fixed window per call (no cursor), not a global chart. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_channel_streamsChannel Live tab only — liveStatus per row; 0 credits when hasLiveTab is false. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_hashtag_searchDefault ~10 credits (limit 10; 1/result). Videos from youtube.com/hashtag/{name} — nested channel{}, viewCountIsApproximate. Not keyword search. Costs ~10 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always f…
youtube_comment_repliesReplies under a top-level comment — parentReplyCount + cursor. Nested reply ids return 404. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_channel_playlistsChannel playlists with cursor pagination — id, title, totalVideos, thumbnailUrl. Flat 2 credits/page. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_community_postsCommunity posts — channel{}, publishedTimeApprox, likeCountIsApproximate, linkedVideos[], cursor (1 credit). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_community_post_detailsOne community post — list schema + commentCount trio + isEdited. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
youtube_video_sponsorsSponsorBlock community segments — free while the CC BY-NC-SA commercial-use exception is pending. Costs 0 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_transcriptTranscript Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_summarizeSummarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_video_detailsGet everything about one TikTok video from its URL — caption, view/like/comment/share/save counts, creator, sound, hashtags, and thumbnail. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_commentsTikTok comments — clean schema plus authorName, stable authorId/authorSecUid and commentLanguage for listening loops. Unresolvable videos are 404 at 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always…
tiktok_channel_detailsResolve a TikTok @handle to id + secUid — createTime, ttSeller, bioLink, decoded privacy flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_profile_regionFind out where a TikTok creator is likely based and what language they use — country, language, stable ids, and core profile stats. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_audience_demographicsAudience country + language mix for a TikTok creator — engagement sample, not a follower census. Costs 3 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_search_suggestionsGet the autocomplete terms TikTok suggests in its search bar for a keyword — the real phrases people search, ranked, so you can find trending queries and long-tail keyword ideas. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache…
tiktok_channel_postsLatest videos from a TikTok profile, cursor-paginated, with isPinned, caption mention text and brand signals (promoCodes, brandMentions). Flat 2 credits; failures are 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache h…
tiktok_comment_repliesReplies under a TikTok comment — same authorId/authorSecUid/commentLanguage shape as comments. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_user_followersList a TikTok user's followers — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_user_followingsList who a TikTok user follows — id, secUid, createTime, region, language, cursor pagination. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_music_postsList TikTok videos that use a specific sound — caption, author, exact engagement, canonical hashtags, and mentions, with cursor pagination. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_top_searchTikTok Top/General search — videos and photo carousels when TikTok includes them, with contentType + images[]. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_search_by_hashtagDefault ~7 credits (limit 10; 0.7/result). Videos from TikTok's /tag/{name} challenge feed — not keyword or username search. Cursor + hasMore. Costs ~7 credits (0.7/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fr…
tiktok_search_usersFind TikTok creators by keyword — distinct authors ranking for the query, id + secUid, per-counter isApproximate flags, cursor pagination. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_song_detailsTikTok sound metadata — usageCount, artists[{id,secUid,handle}], audio{bpm,loudness,beats}, commerce rights (1 credit; 2 via the fallback path). Costs 1 credit (2 via fallback path). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default…
tiktok_trending_feedFor You by default; pass orderBy/period/page for Creative Center popular videos (like/hot/comment/repost) with totalCount. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_popular_hashtagsRelated TikTok hashtags — Creative Center chart when it answers (asOf = the chart's data date, stale when over 3 days old), otherwise a disclosed niche fallback. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache h…
tiktok_liveCheck whether a TikTok creator is live right now and get the stream URLs (CMAF/DASH + FLV, HLS when TikTok exposes it) — one GET with an @handle, 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fres…
tiktok_live_infoIdentical to TikTok Live (isLive, creator.id/secUid, streamQualities hls/cmaf). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
tiktok_popular_creatorsCreative Center creators + createTime / bioLinkRisk / ttSeller hydrate for partnership vetting. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_transcriptTurn any Instagram Reel's speech into text — the full transcript plus timestamped segments, ready for search, subtitles, or AI pipelines. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_summarizeGet an AI summary of any Instagram Reel — a short paragraph plus key points, without watching the video. Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_detailsGet an Instagram post, Reel or carousel — caption, publish date, likes, comments, views, media URLs, author, per-slide children, and promo codes / disclosure words from the caption. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cach…
instagram_commentsDefault ~9 credits (limit 10; 0.9/result). Session-paged Instagram comments — a logged-out 2-row preview of a larger thread is 503 SESSION_UNAVAILABLE at 0 credits. Costs ~9 credits (0.9/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache…
instagram_channel_detailsInstagram profile stats — fixed key set (null fillers), fbid, bioLinks, isBusinessAccount, approx flags. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_channel_postsDefault ~3 credits (limit 10; 0.3/result). Latest posts from a public Instagram profile — carousel children[], mediaCount, isPinned, caption promo codes, user{} in one call. Costs ~3 credits (0.3/result). Empty results and failures are never charged. Pass cache=true for a free 2…
instagram_channel_reelsDefault ~3 credits (limit 10; 0.3/result). Latest Reels from a public Instagram profile — isPinned, optional since date filter, pass userId to skip resolve; ceil(n×0.3) credits; nextCursor + hasMore. Costs ~3 credits (0.3/result). Empty results and failures are never charged. Pa…
instagram_reels_searchNative tag feed first, slower fallback paths on a miss. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_trending_reelsCache-first trending Reels. Feed outage → labelled country hashtag-clips stand-in (listing field), never a silent swap. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Successful calls bill even on cache hits.
instagram_tagged_postsPosts that tag an Instagram account — author verified/avatar when available, staleFeed when Instagram only exposes an archive. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_reels_by_audio_idDefault ~14 credits (limit 10; 1.4/result). Is this Instagram sound trending? Reels that use it + isTrendingInClips / trendRank / rich music{}. Costs ~14 credits (1.4/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always…
instagram_hashtag_searchHashtag Explore: native grid first, fallback path only on miss. Max 50. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_profile_searchResolve a brand or @handle to one public Instagram profile — or search accounts by free text (mode=search). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_embedClassic Instagram embed snippet — blockquote.instagram-media + embed.js. Drop html into your page. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_highlightsPersistent Story Highlight albums for a public profile — id, title, cover, owner. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_highlights_detailsItems inside one Instagram Story Highlight album — media URLs, type, takenAt. Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
instagram_basic_profileInstagram profile by user ID or @handle — camelCase schema aligned with Channel Details (followers, externalUrl, businessAddress). Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_detailsFacebook post or Reel — caption, engagement, author id, video{} playback, and music when Facebook exposes them. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_summarizeSummarizer Costs 4 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_commentsFacebook post comments with reactionCount, reactions.like when mixed, author.id (pfbid), and replyCount. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_page_detailsFacebook page profile — likes vs followers (distinct), talkingAbout, category, website, and public email. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_profile_postsLatest posts and Reels from a Facebook page — listingHits / timings.phase; 60s deadline, failures 0 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_profile_reelsLatest Facebook page Reels — views, likes, comments, shares; newest-first without archive padding. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_group_postsDefault ~10 credits (limit 10; 1/result). Newest posts from a public Facebook group — caption, author, engagement, sortBy; 1 credit per post. Costs ~10 credits (1/result). Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fres…
facebook_comment_repliesComment Replies Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
facebook_profile_photosPhoto grid from a Facebook Page — full image URL plus accessibilityCaption (alt-text, not a post caption). Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_tweet_detailsOne tweet as JSON — text, author (followers), likes/replies/retweets/quotes, media, ISO publishedAt. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_transcriptTweet text as a transcript — timingSource none (not speech-to-text). Flat 1 credit. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_profileX profile: verified + blue/legacy/identity, displayName, avatar/banner, tipjar→contact{}, expanded website. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_user_tweetsMost popular public tweets from a Twitter/X profile (~100 cap) — not chronological. Text, author, engagement, hashtags, media. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_communityX Community metadata — ISO createdAt, flat creator handle, isNsfw + bannerImage, rules[]. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
twitter_community_tweetsPosts in an X Community — same 6-metric tweet shape as search. Flat 2 credits. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
reddit_subreddit_postsList posts from a subreddit with sort, timeframe, and cursor pagination — title, score, upvote ratio, flair, and more. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
reddit_post_detailsGet a Reddit post — title, body, score, comments count, subreddit, and author as structured JSON. Costs 1 credit. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
reddit_post_commentsFlat Reddit comment threads with depth/parentId and the parent post in one call. Costs 2 credits. Empty results and failures are never charged. Pass cache=true for a free 24h cache hit (default always fresh).
Headers
| Name | Description |
|---|---|
AuthorizationRequired, secret | Captapi API key as a Bearer token. Create one at https://captapi.com/dashboard/api-keys. |
Details
| Endpoint | https://api.captapi.com/mcp (Streamable HTTP) |
| Package | @captapi/[email protected] (NPM, stdio) |
| First published | 7 Nov 2026 |
| Last updated | 7 Nov 2026 |
| Registry name | io.github.CDCStream/captapi |
More marketing and seo servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
