A side-by-side look at the HasData TikTok and TwittrAPI MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose HasData TikTok for social media work as a local process; choose TwittrAPI for social media as a local process. You can also run both side by side in one mcpServers block.
HASDATA_API_KEY.hasdata_tiktok_comments_getTikTokComments, hasdata_tiktok_posts_getTikTokPosts, hasdata_tiktok_profile_getTikTokProfile.TWITTRAPI_API_KEY, RAPIDAPI_KEY, RAPIDAPI_HOST, TWITTRAPI_BASE_URL, TWITTRAPI_RESPONSE_FORMAT, TWITTRAPI_X_COOKIE, TWITTRAPI_X_PROXY, TWITTRAPI_X_CHAT_PASSCODE.get_user_by_username, get_user_by_id, username_to_id.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Social Media | Social Media |
| Quality signal | 63/100 · Good | 56/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Not declared | BYOK (pay the provider) |
| Required env vars | HASDATA_API_KEY | TWITTRAPI_API_KEYRAPIDAPI_KEYRAPIDAPI_HOSTTWITTRAPI_BASE_URLTWITTRAPI_RESPONSE_FORMATTWITTRAPI_X_COOKIETWITTRAPI_X_PROXYTWITTRAPI_X_CHAT_PASSCODE |
| Verified owner | Community listing | Community listing |
| GitHub stars | 10 | 0 |
| Directory activity | 1 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 4 | 37 |
| Full listing | View HasData TikTok | View TwittrAPI |
hasdata_tiktok_comments_getTikTokCommentsGet TikTok Comments
Fetches the comments on a public TikTok video by its numeric video id, or the replies to a specific comment when commentId is given. Each comment returns text, like count, timestamp, reply count, and author (username, nickname, avatar, plus hasdataLink to the profile endpoint and hasdataPostsLink to the posts endpoint). The first page of top-level comments also returns `post` with the video's description, author, music, cover and video URLs, duration, hashtags, and its like, comment, share, play, and save counts. Supports token-based pagination via nextPageToken. Use for sentiment analysis, engagement research, or building comment datasets from a video discovered via the posts or search APIs.hasdata_tiktok_posts_getTikTokPostsGet TikTok Posts
Fetches a page of videos for a public TikTok account by username (handle) and returns each video with description, hashtags, mentions, like/comment/share/play/collect counts, cover and playable video URLs, music, duration, and timestamp. Returns a page of ~30 videos plus a `nextPageToken`; pass that token back to walk the account history one page at a time. Use to monitor competitor content, track engagement of creator videos, or build datasets of account content for vetting and analytics.hasdata_tiktok_profile_getTikTokProfileGet TikTok Profile
Fetches a public TikTok profile by username (handle) and returns nickname, biography, bio link, avatar URLs, verified/private flags, account creation time, and followers, follows, likes, videos, and friends counts. Use to enrich CRM/lead records, verify influencer reach before outreach, monitor competitor accounts, or build datasets of creator metadata for vetting and analytics.hasdata_tiktok_search_getTikTokSearchSearch TikTok
Searches TikTok by keyword and returns either videos (with description, hashtags, mentions, like/comment/share/play counts, cover and playable video URLs, music, and author) or users (nickname, bio, avatar, verified flag, follower count). Each author and each user carries a hasdataLink to their profile endpoint and a hasdataPostsLink to their posts endpoint. Supports token-based pagination via nextPageToken. Use for content discovery, trend research, influencer discovery, or building datasets from a keyword.get_user_by_usernameProfile by handle, including the numeric user IDget_user_by_idProfile by numeric user IDusername_to_idResolve a handle to its user IDusers_by_idsProfiles for up to 500 user IDs at onceget_user_tweetsA user's tweetsget_user_tweets_and_repliesA user's tweets and repliesget_user_mediaA user's tweets with photos or videosget_followersA user's followersget_followingAccounts a user followsget_verified_followersA user's verified followersget_user_affiliatesAccounts affiliated with an organizationget_friendships_batchWhether one account follows up to 50 others, and backPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"hasdata-tiktok": {
"command": "npx",
"args": [
"-y",
"@hasdata/tiktok-mcp"
],
"env": {
"HASDATA_API_KEY": "YOUR_HASDATA_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"twittrapi": {
"command": "npx",
"args": [
"-y",
"twittrapi-mcp"
],
"env": {
"TWITTRAPI_API_KEY": "YOUR_TWITTRAPI_API_KEY_HERE",
"RAPIDAPI_KEY": "YOUR_RAPIDAPI_KEY_HERE",
"RAPIDAPI_HOST": "YOUR_RAPIDAPI_HOST_HERE",
"TWITTRAPI_BASE_URL": "YOUR_TWITTRAPI_BASE_URL_HERE",
"TWITTRAPI_RESPONSE_FORMAT": "YOUR_TWITTRAPI_RESPONSE_FORMAT_HERE",
"TWITTRAPI_X_COOKIE": "YOUR_TWITTRAPI_X_COOKIE_HERE",
"TWITTRAPI_X_PROXY": "YOUR_TWITTRAPI_X_PROXY_HERE",
"TWITTRAPI_X_CHAT_PASSCODE": "YOUR_TWITTRAPI_X_CHAT_PASSCODE_HERE"
}
}
}
}