{"name":"twexapi","description":"TwexAPI MCP server for public X/Twitter data. explore and twexapi_request reach the read-only REST endpoints listed under endpoints; twexapi_write calls write endpoints. Connect to /mcp with an API key or OAuth sign-in; use /mcp/pay for anonymous MPP pay-per-call.","version":"1.0.0","transport":{"type":"streamable-http","url":"https://api.twexapi.io/mcp"},"payment_transport":{"type":"streamable-http","url":"https://api.twexapi.io/mcp/pay"},"authentication":{"type":"api_key","headers":["x-api-key","Authorization: Bearer <token>"],"oauth":{"authorization_server":"https://api.twexapi.io","protected_resource_metadata":"https://api.twexapi.io/.well-known/oauth-protected-resource/mcp"}},"endpoint_count":54,"endpoints":[{"name":"list_global_trending_countries","method":"GET","path":"/twitter/global-trending/countries","category":"trending","description":"List supported country filters for global trending tweets.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/global-trending/countries","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/global-trending/countries"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/global-trending/countries"},"mpp_page_size_field":null},{"name":"list_global_trending_topics","method":"GET","path":"/twitter/global-trending/topics","category":"trending","description":"List supported topic filters for global trending tweets.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/global-trending/topics","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/global-trending/topics"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/global-trending/topics"},"mpp_page_size_field":null},{"name":"list_global_trending_contents","method":"GET","path":"/twitter/global-trending/contents","category":"trending","description":"List content tags for a country and topic.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/global-trending/contents","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/global-trending/contents"]},"query":{"type":"object","properties":{"country":{"type":"string","description":"Country name or slug returned by list_global_trending_countries.","examples":["united-states"]},"topic":{"type":"string","description":"Topic name or slug returned by list_global_trending_topics.","examples":["technology"]}},"required":["country","topic"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/global-trending/contents","query":{"country":"united-states","topic":"technology"}},"mpp_page_size_field":null},{"name":"get_global_trending_tweets","method":"GET","path":"/twitter/global-trending/tweets","category":"trending","description":"Fetch trending tweets for a country with optional topic and content filters.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/global-trending/tweets","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/global-trending/tweets"]},"query":{"type":"object","properties":{"country":{"type":"string","description":"Country name or slug returned by list_global_trending_countries.","examples":["united-states"]},"topic":{"type":"string","description":"Optional topic name or slug.","examples":["technology"]},"content":{"type":"string","description":"Optional content tag returned by list_global_trending_contents.","examples":["AI"]},"count":{"type":"integer","description":"Maximum number of tweets to return.","examples":[20],"minimum":1,"maximum":100}},"required":["country"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/global-trending/tweets","query":{"country":"united-states","topic":"technology","content":"AI","count":20}},"mpp_page_size_field":null},{"name":"advanced_search","method":"POST","path":"/twitter/advanced_search","category":"search","description":"Search tweets with searchTerms, maxItems, and sortBy.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/advanced_search","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/advanced_search"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"searchTerms":{"type":"array","description":"Search terms.","items":{"type":"string","description":"Twitter/X search term."},"examples":[["from:elonmusk AI"]]},"maxItems":{"type":"integer","description":"Maximum number of tweets to return.","examples":[20],"minimum":1,"maximum":100000},"sortBy":{"type":"string","enum":["Latest","Top"],"description":"Sort order.","examples":["Latest"]}},"required":["searchTerms"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/advanced_search","body":{"searchTerms":["from:elonmusk AI"],"maxItems":20,"sortBy":"Latest"}},"mpp_page_size_field":null},{"name":"advanced_search_page","method":"POST","path":"/twitter/advanced_search/page","category":"search","description":"Search tweets one page at a time with cursor pagination.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/advanced_search/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/advanced_search/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"searchTerms":{"type":"array","description":"Search terms.","items":{"type":"string","description":"Twitter/X search term."},"examples":[["from:elonmusk AI"]]},"sortBy":{"type":"string","enum":["Latest","Top"],"description":"Sort order.","examples":["Latest"]},"next_cursor":{"type":"string","description":"Cursor returned by the previous page.","examples":["1234567890"]}},"required":["searchTerms","sortBy"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/advanced_search/page","body":{"searchTerms":["from:elonmusk AI"],"sortBy":"Latest","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"search_cashtags","method":"POST","path":"/twitter/cashtags","category":"search","description":"Search tweets containing one or more cashtags.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/cashtags","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/cashtags"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"cashtags":{"type":"array","description":"Cashtags to search.","items":{"type":"string","description":"Cashtag without or with $ prefix.","examples":["AAPL"]},"examples":[["AAPL","TSLA"]]},"maxItems":{"type":"integer","description":"Maximum number of tweets to return.","examples":[20],"minimum":1,"maximum":1000},"sortBy":{"type":"string","enum":["Latest","Top"],"description":"Sort order.","examples":["Latest"]},"startTime":{"type":"string","description":"Optional start time as Unix timestamp.","examples":["1775726400"]},"endTime":{"type":"string","description":"Optional end time as Unix timestamp.","examples":["1775727300"]},"mininumLikes":{"type":"integer","description":"Minimum likes.","examples":[0],"minimum":0},"mininumRetweets":{"type":"integer","description":"Minimum retweets.","examples":[0],"minimum":0},"mininumReplies":{"type":"integer","description":"Minimum replies.","examples":[0],"minimum":0},"blueVerified":{"type":"boolean","description":"Only blue verified accounts.","examples":[false]},"verified":{"type":"boolean","description":"Only verified accounts.","examples":[false]},"language":{"type":"string","description":"Optional language code.","examples":["en"]},"onlyImage":{"type":"boolean","description":"Only tweets with images.","examples":[false]},"onlyVideo":{"type":"boolean","description":"Only tweets with videos.","examples":[false]},"onlyQuote":{"type":"boolean","description":"Only quote tweets.","examples":[false]},"onlyReply":{"type":"boolean","description":"Only replies.","examples":[false]}},"required":["cashtags"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/cashtags","body":{"cashtags":["AAPL","TSLA"],"maxItems":20,"sortBy":"Latest"}},"mpp_page_size_field":null},{"name":"search_hashtags","method":"POST","path":"/twitter/hashtags","category":"search","description":"Search tweets containing one or more hashtags.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/hashtags","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/hashtags"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"maxItems":{"type":"integer","description":"Maximum number of tweets to return.","examples":[20],"minimum":1,"maximum":1000},"sortBy":{"type":"string","enum":["Latest","Top"],"description":"Sort order.","examples":["Latest"]},"startTime":{"type":"string","description":"Optional start time as Unix timestamp.","examples":["1775726400"]},"endTime":{"type":"string","description":"Optional end time as Unix timestamp.","examples":["1775727300"]},"mininumLikes":{"type":"integer","description":"Minimum likes.","examples":[0],"minimum":0},"mininumRetweets":{"type":"integer","description":"Minimum retweets.","examples":[0],"minimum":0},"mininumReplies":{"type":"integer","description":"Minimum replies.","examples":[0],"minimum":0},"blueVerified":{"type":"boolean","description":"Only blue verified accounts.","examples":[false]},"verified":{"type":"boolean","description":"Only verified accounts.","examples":[false]},"language":{"type":"string","description":"Optional language code.","examples":["en"]},"onlyImage":{"type":"boolean","description":"Only tweets with images.","examples":[false]},"onlyVideo":{"type":"boolean","description":"Only tweets with videos.","examples":[false]},"onlyQuote":{"type":"boolean","description":"Only quote tweets.","examples":[false]},"onlyReply":{"type":"boolean","description":"Only replies.","examples":[false]},"hashtags":{"type":"array","description":"Hashtags to search.","items":{"type":"string","description":"Hashtag without or with # prefix.","examples":["btc"]},"examples":[["btc","eth"]]}},"required":["hashtags"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/hashtags","body":{"hashtags":["btc","eth"],"maxItems":20,"sortBy":"Latest"}},"mpp_page_size_field":null},{"name":"get_users_by_ids","method":"POST","path":"/twitter/users/by_ids","category":"users","description":"Retrieve detailed user profile information for multiple user IDs.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/users/by_ids","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/users/by_ids"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"User IDs.","items":{"type":"string","description":"Twitter/X user ID.","examples":["44196397"]},"examples":[["44196397","1696160451770429440"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/users/by_ids","body":["44196397","1696160451770429440"]},"mpp_page_size_field":null},{"name":"verify_account_status","method":"POST","path":"/x/account/verify","category":"users","description":"Check whether accounts are blue verified or organization affiliates.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/x/account/verify","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/x/account/verify"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"User IDs or usernames.","items":{"type":"string","description":"Twitter/X user ID or username.","examples":["elonmusk"]},"examples":[["44196397","elonmusk"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/x/account/verify","body":["44196397","elonmusk"]},"mpp_page_size_field":null},{"name":"get_users_status","method":"POST","path":"/twitter/users/status","category":"users","description":"Check account status for multiple usernames.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/users/status","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/users/status"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"Usernames.","items":{"type":"string","description":"Twitter/X username.","examples":["elonmusk"]},"examples":[["elonmusk","sundarpichai"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/users/status","body":["elonmusk","sundarpichai"]},"mpp_page_size_field":null},{"name":"get_tweet_replies_page","method":"POST","path":"/twitter/tweets/{tweet_id}/replies/page","category":"tweets","description":"Automatically paginate ordinary replies first, then folded/spam replies. Return the top-level next_cursor unchanged until a successful response has has_next_page=false. Pages contain at most 20 unique replies; cursor sessions expire after 30 minutes. Omitted sort_by on continuation inherits the original ranking.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/{tweet_id}/replies/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/1803006263529541838/replies/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor returned by the previous page.","examples":["1234567890"]},"sort_by":{"type":"string","enum":["Relevance","Recency","Likes"],"description":"Reply sort order.","examples":["Recency"]}},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]}},"required":["tweet_id"],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/1803006263529541838/replies/page","body":{"next_cursor":null,"sort_by":"Recency"}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_tweet_replies_v2","method":"GET","path":"/twitter/tweets/{tweet_id}/replies/{count}","category":"tweets","description":"Retrieve tweet replies with automatic expansion of discovered folded branches such as Show probable spam. The ordinary count target retains complete pages; folded replies are added within the remaining credit cap. Recency and Likes use a bounded Relevance probe when needed.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/{tweet_id}/replies/{count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/1803006263529541838/replies/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"count":{"type":"integer","description":"Maximum number of items to return.","examples":[20],"minimum":1}},"required":["tweet_id","count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/tweets/1803006263529541838/replies/20"},"mpp_page_size_field":null},{"name":"get_tweet_thread_by_id","method":"POST","path":"/twitter/tweets/thread_by_id","category":"tweets","description":"Fetch the tweets that belong to a thread by root tweet ID.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/thread_by_id","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/thread_by_id"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Root tweet ID.","examples":["1803006263529541838"]},"max_items":{"type":"integer","description":"Maximum thread tweets to return.","examples":[40],"minimum":1,"maximum":200},"fields":{"type":"array","description":"Optional fields to include.","items":{"type":"string","description":"Tweet field name.","examples":["id"]},"examples":[["id","text","created_at"]]}},"required":["tweet_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/thread_by_id","body":{"tweet_id":"1803006263529541838","max_items":40}},"mpp_page_size_field":null},{"name":"get_tweets_lookup","method":"POST","path":"/twitter/tweets/lookup","category":"tweets","description":"Batch lookup tweets by ID.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/lookup","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/lookup"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"Tweet IDs.","items":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"examples":[["1803006263529541838","1803006263529541839"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/lookup","body":["1803006263529541838","1803006263529541839"]},"mpp_page_size_field":null},{"name":"get_similar_tweets","method":"GET","path":"/twitter/tweets/{tweet_id}/similar","category":"tweets","description":"Get tweets similar to a given tweet.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/{tweet_id}/similar","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/1803006263529541838/similar"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]}},"required":["tweet_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/tweets/1803006263529541838/similar"},"mpp_page_size_field":null},{"name":"search_user","method":"GET","path":"/twitter/search-user/{keyword}/{target_count}","category":"users","description":"Search X users by keyword.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/search-user/{keyword}/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/search-user/openai/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"keyword":{"type":"string","description":"Search keyword.","examples":["openai"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["keyword","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/search-user/openai/20"},"mpp_page_size_field":null},{"name":"get_latest_followers","method":"GET","path":"/twitter/latest-followers/{screen_name}","category":"followers","description":"Get the latest followers for a user.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/latest-followers/{screen_name}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/latest-followers/elonmusk"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/latest-followers/elonmusk"},"mpp_page_size_field":null},{"name":"get_latest_following","method":"GET","path":"/twitter/latest-following/{screen_name}","category":"followers","description":"Get the latest accounts followed by a user.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/latest-following/{screen_name}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/latest-following/elonmusk"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/latest-following/elonmusk"},"mpp_page_size_field":null},{"name":"get_followers","method":"GET","path":"/twitter/followers/{screen_name}/{count}","category":"followers","description":"Get followers for a user. Large counts may return an async task handle.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/followers/{screen_name}/{count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/followers/elonmusk/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]},"count":{"type":"integer","description":"Maximum number of items to return.","examples":[20],"minimum":1}},"required":["screen_name","count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/followers/elonmusk/20"},"mpp_page_size_field":null},{"name":"get_followers_page","method":"POST","path":"/twitter/followers/page","category":"followers","description":"Get one cursor-paginated followers page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/followers/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/followers/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"screen_name":{"type":"string","description":"Twitter/X screen name.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/followers/page","body":{"screen_name":"elonmusk","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_followers_task_status","method":"GET","path":"/twitter/followers/task/{task_id}/status","category":"followers","description":"Check status for a large followers task.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/followers/task/{task_id}/status","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/followers/task/task-123/status"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"task_id":{"type":"string","description":"Async task ID returned by the matching task endpoint.","examples":["task-123"]}},"required":["task_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/followers/task/task-123/status"},"mpp_page_size_field":null},{"name":"get_followers_task_next_page","method":"GET","path":"/twitter/followers/task/{task_id}/next","category":"followers","description":"Consume the next page from a large followers task.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/followers/task/{task_id}/next","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/followers/task/task-123/next"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"task_id":{"type":"string","description":"Async task ID returned by the matching task endpoint.","examples":["task-123"]}},"required":["task_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/followers/task/task-123/next"},"mpp_page_size_field":null},{"name":"get_following","method":"GET","path":"/twitter/following/{screen_name}/{count}","category":"followers","description":"Get accounts followed by a user. Large counts may return an async task handle.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/following/{screen_name}/{count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/following/elonmusk/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]},"count":{"type":"integer","description":"Maximum number of items to return.","examples":[20],"minimum":1}},"required":["screen_name","count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/following/elonmusk/20"},"mpp_page_size_field":null},{"name":"get_following_page","method":"POST","path":"/twitter/following/page","category":"followers","description":"Get one cursor-paginated following page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/following/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/following/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"screen_name":{"type":"string","description":"Twitter/X screen name.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/following/page","body":{"screen_name":"elonmusk","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_following_task_status","method":"GET","path":"/twitter/following/task/{task_id}/status","category":"followers","description":"Check status for a large following task.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/following/task/{task_id}/status","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/following/task/task-123/status"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"task_id":{"type":"string","description":"Async task ID returned by the matching task endpoint.","examples":["task-123"]}},"required":["task_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/following/task/task-123/status"},"mpp_page_size_field":null},{"name":"get_following_task_next_page","method":"GET","path":"/twitter/following/task/{task_id}/next","category":"followers","description":"Consume the next page from a large following task.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/following/task/{task_id}/next","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/following/task/task-123/next"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"task_id":{"type":"string","description":"Async task ID returned by the matching task endpoint.","examples":["task-123"]}},"required":["task_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/following/task/task-123/next"},"mpp_page_size_field":null},{"name":"get_retweeters","method":"GET","path":"/twitter/tweets/{tweet_id}/retweeters/{target_count}","category":"engagement","description":"Get retweeters for a tweet.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/{tweet_id}/retweeters/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/1803006263529541838/retweeters/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["tweet_id","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/tweets/1803006263529541838/retweeters/20"},"mpp_page_size_field":null},{"name":"get_retweeters_page","method":"POST","path":"/twitter/tweets/retweeters/page","category":"engagement","description":"Get one cursor-paginated retweeters page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/retweeters/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/retweeters/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]}},"required":["tweet_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/retweeters/page","body":{"tweet_id":"1803006263529541838","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_favoriters","method":"POST","path":"/twitter/tweets-favoriters","category":"engagement","description":"Get favoriters for a tweet. Requires a cookie or auth_token in the request body.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets-favoriters","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets-favoriters"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"target_count":{"type":"integer","description":"Number of favoriters to return.","examples":[20],"minimum":1},"cookie":{"type":"string","description":"Twitter cookie or auth_token.","examples":["ct0=abc123; auth_token=def456"]}},"required":["tweet_id","target_count","cookie"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets-favoriters","body":{"tweet_id":"1803006263529541838","target_count":20,"cookie":"ct0=abc123; auth_token=def456"}},"mpp_page_size_field":null},{"name":"get_quote_tweets","method":"POST","path":"/twitter/tweets/quotes","category":"engagement","description":"Get quote tweets for a tweet.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/quotes","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/quotes"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"count":{"type":"integer","description":"Number of quote tweets to return.","examples":[20],"minimum":1,"maximum":5000},"sort_by":{"type":"string","enum":["Top","Latest"],"description":"Sort order.","examples":["Top"]}},"required":["tweet_id","count"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/quotes","body":{"tweet_id":"1803006263529541838","count":20,"sort_by":"Top"}},"mpp_page_size_field":null},{"name":"get_quote_tweets_page","method":"POST","path":"/twitter/tweets/quotes/page","category":"engagement","description":"Get one cursor-paginated quote tweets page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets/quotes/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets/quotes/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]},"sort_by":{"type":"string","enum":["Top","Latest"],"description":"Sort order.","examples":["Top"]}},"required":["tweet_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets/quotes/page","body":{"tweet_id":"1803006263529541838","sort_by":"Top","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_community","method":"GET","path":"/twitter/community/{community_id}","category":"communities","description":"Get community metadata by ID.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/{community_id}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/1234567890123456789"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"community_id":{"type":"string","description":"Twitter/X community ID.","examples":["1234567890123456789"]}},"required":["community_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/community/1234567890123456789"},"mpp_page_size_field":null},{"name":"search_community","method":"POST","path":"/twitter/community/search","category":"communities","description":"Search communities by query.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/search","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/search"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"query":{"type":"string","description":"Community search query.","examples":["ai"]},"target_count":{"type":"integer","description":"Number of communities to return.","examples":[10],"minimum":1}},"required":["query","target_count"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/community/search","body":{"query":"ai","target_count":10}},"mpp_page_size_field":null},{"name":"get_community_members","method":"GET","path":"/twitter/community/{community_id}/members/{target_count}","category":"communities","description":"Get community members.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/{community_id}/members/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/1234567890123456789/members/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"community_id":{"type":"string","description":"Twitter/X community ID.","examples":["1234567890123456789"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["community_id","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/community/1234567890123456789/members/20"},"mpp_page_size_field":null},{"name":"get_community_members_page","method":"POST","path":"/twitter/community/members/page","category":"communities","description":"Get one cursor-paginated community members page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/members/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/members/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"community_id":{"type":"string","description":"Community ID.","examples":["1234567890123456789"]}},"required":["community_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/community/members/page","body":{"community_id":"1234567890123456789","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_community_tweets","method":"GET","path":"/twitter/community/{community_id}/tweets/{tweet_type}/{target_count}","category":"communities","description":"Get community tweets by type: Top, Latest, or Media.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/{community_id}/tweets/{tweet_type}/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/1234567890123456789/tweets/Latest/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"community_id":{"type":"string","description":"Twitter/X community ID.","examples":["1234567890123456789"]},"tweet_type":{"type":"string","enum":["Top","Latest","Media"],"description":"Community tweet type.","examples":["Latest"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["community_id","tweet_type","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/community/1234567890123456789/tweets/Latest/20"},"mpp_page_size_field":null},{"name":"get_community_tweets_page","method":"POST","path":"/twitter/community/tweets/page","category":"communities","description":"Get one cursor-paginated community tweets page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/community/tweets/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/community/tweets/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"community_id":{"type":"string","description":"Community ID.","examples":["1234567890123456789"]},"tweet_type":{"type":"string","enum":["Top","Latest","Media"],"description":"Community tweet type.","examples":["Latest"]}},"required":["community_id","tweet_type"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/community/tweets/page","body":{"community_id":"1234567890123456789","tweet_type":"Latest","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_list_tweets","method":"GET","path":"/twitter/list/{list_id}/tweets/{target_count}","category":"lists","description":"Get tweets from a list.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/{list_id}/tweets/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/987654321098765432/tweets/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"list_id":{"type":"string","description":"Twitter/X list ID.","examples":["987654321098765432"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["list_id","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/list/987654321098765432/tweets/20"},"mpp_page_size_field":null},{"name":"get_list_tweets_page","method":"POST","path":"/twitter/list/tweets/page","category":"lists","description":"Get one cursor-paginated list tweets page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/tweets/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/tweets/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"list_id":{"type":"string","description":"List ID.","examples":["987654321098765432"]}},"required":["list_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/list/tweets/page","body":{"list_id":"987654321098765432","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_list_subscribers","method":"GET","path":"/twitter/list/{list_id}/subscribers/{target_count}","category":"lists","description":"Get subscribers for a list.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/{list_id}/subscribers/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/987654321098765432/subscribers/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"list_id":{"type":"string","description":"Twitter/X list ID.","examples":["987654321098765432"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["list_id","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/list/987654321098765432/subscribers/20"},"mpp_page_size_field":null},{"name":"get_list_members","method":"GET","path":"/twitter/list/{list_id}/members/{target_count}","category":"lists","description":"Get members for a list.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/{list_id}/members/{target_count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/987654321098765432/members/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"list_id":{"type":"string","description":"Twitter/X list ID.","examples":["987654321098765432"]},"target_count":{"type":"integer","description":"Target number of items to return.","examples":[20],"minimum":1}},"required":["list_id","target_count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/list/987654321098765432/members/20"},"mpp_page_size_field":null},{"name":"get_list_members_page","method":"POST","path":"/twitter/list/members/page","category":"lists","description":"Get one cursor-paginated list members page.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/members/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/members/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"list_id":{"type":"string","description":"List ID.","examples":["987654321098765432"]}},"required":["list_id"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/list/members/page","body":{"list_id":"987654321098765432","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"search_list","method":"POST","path":"/twitter/list/search","category":"lists","description":"Search lists by query.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/list/search","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/list/search"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"query":{"type":"string","description":"List search query.","examples":["ai founders"]},"target_count":{"type":"integer","description":"Number of lists to return.","examples":[10],"minimum":1}},"required":["query","target_count"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/list/search","body":{"query":"ai founders","target_count":10}},"mpp_page_size_field":null},{"name":"get_dm_status_v2","method":"POST","path":"/v2/dm/status","category":"dm","description":"Check DM reachability and verification metadata for users. Accept a legacy array of user IDs/usernames or an object with users and an optional sender cookie/auth_token. With a cookie, username lookup and permission queries use that sender session; otherwise they use service-managed accounts. A supplied invalid session never falls back to the pool. Existing quota/plan item limits and response fields are unchanged; XChat flags are not a universal ordinary-DM sendability guarantee.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/v2/dm/status","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/v2/dm/status"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"anyOf":[{"type":"array","items":{"type":"string"},"description":"Legacy user IDs or usernames; queries use service-managed accounts."},{"type":"object","required":["users"],"properties":{"users":{"type":"array","items":{"type":"string"},"description":"User IDs or usernames to check."},"cookie":{"type":"string","pattern":"\\S","description":"Optional actual sender's X Cookie header or auth_token. Omit to use the service-managed pool. Supplied empty or invalid credentials do not fall back to pooled accounts."}},"description":"Check from a particular sender session when cookie is supplied."}]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/v2/dm/status","body":["44196397","elonmusk"]},"mpp_page_size_field":null},{"name":"get_x_articles","method":"POST","path":"/x/article","category":"articles","description":"Fetch detailed X article content for one or more tweet IDs.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/x/article","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/x/article"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"Tweet/article IDs.","items":{"type":"string","description":"Tweet/article ID.","examples":["1803006263529541838"]},"examples":[["1803006263529541838"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/x/article","body":["1803006263529541838"]},"mpp_page_size_field":null},{"name":"get_x_article_markdown","method":"GET","path":"/x/article/{tweet_id}/markdown","category":"articles","description":"Fetch an X article as Markdown by tweet ID.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/x/article/{tweet_id}/markdown","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/x/article/1803006263529541838/markdown"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"tweet_id":{"type":"string","description":"Tweet ID.","examples":["1803006263529541838"]}},"required":["tweet_id"],"additionalProperties":false}},"example":{"method":"GET","path":"/x/article/1803006263529541838/markdown"},"mpp_page_size_field":null},{"name":"get_trending_topics","method":"GET","path":"/twitter/{country}/trending","category":"trending","description":"Get X Explore trending topics for a country slug or worldwide.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/{country}/trending","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/worldwide/trending"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"country":{"type":"string","description":"Trending country slug or worldwide.","examples":["worldwide"]}},"required":["country"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/worldwide/trending"},"mpp_page_size_field":null},{"name":"get_user_tweets_replies","method":"GET","path":"/twitter/{screen_name}/tweets-replies/{count}","category":"timeline","description":"Get a user's tweets and replies with a bounded count.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/{screen_name}/tweets-replies/{count}","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/elonmusk/tweets-replies/20"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]},"count":{"type":"integer","description":"Maximum number of items to return.","examples":[20],"minimum":1}},"required":["screen_name","count"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/elonmusk/tweets-replies/20"},"mpp_page_size_field":null},{"name":"get_user_timeline_page","method":"POST","path":"/twitter/{screen_name}/timeline/page","category":"timeline","description":"Get one cursor-paginated page from a user's timeline.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/{screen_name}/timeline/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/elonmusk/timeline/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor returned by the previous page.","examples":["1234567890"]},"count":{"type":"integer","description":"Maximum tweets to return for this page.","examples":[20],"minimum":1,"maximum":100}},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/elonmusk/timeline/page","body":{"count":20,"next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":"count"},{"name":"get_user_timeline","method":"POST","path":"/twitter/{screen_name}/timeline","category":"timeline","description":"Fetch a user's timeline across pages up to the requested count.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/{screen_name}/timeline","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/elonmusk/timeline"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"count":{"type":"integer","description":"Maximum tweets to return across pages.","examples":[20],"minimum":1,"maximum":1000}},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/elonmusk/timeline","body":{"count":20}},"mpp_page_size_field":null},{"name":"get_user_tweets_replies_page","method":"POST","path":"/twitter/tweets-replies/page","category":"timeline","description":"Get one cursor-paginated page of a user's tweets and replies.","read_only":true,"cursor_paginated":true,"mpp_eligible":true,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/tweets-replies/page","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/tweets-replies/page"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"next_cursor":{"type":"string","description":"Cursor from previous page. Omit or null for the first page.","examples":["1234567890"]},"screen_name":{"type":"string","description":"Twitter/X screen name.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/tweets-replies/page","body":{"screen_name":"elonmusk","next_cursor":null}},"mpp_page_size":20,"mpp_page_size_field":null},{"name":"get_account_based","method":"POST","path":"/twitter/account/based","category":"accounts","description":"Get account-based-in/about metadata for multiple screen names.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"POST","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/account/based","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/account/based"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false},"body":{"type":"array","description":"Screen names.","items":{"type":"string","description":"Twitter/X screen name.","examples":["elonmusk"]},"examples":[["elonmusk","sundarpichai"]]}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"example":{"method":"POST","path":"/twitter/account/based","body":["elonmusk","sundarpichai"]},"mpp_page_size_field":null},{"name":"get_user_about","method":"GET","path":"/twitter/{screen_name}/about","category":"accounts","description":"Get account-based-in/about metadata for a screen name.","read_only":true,"cursor_paginated":false,"mpp_eligible":false,"parameters_schema":{"type":"object","description":"Arguments for the MCP twexapi_request tool.","properties":{"method":{"type":"string","const":"GET","description":"HTTP method to pass to twexapi_request."},"path":{"type":"string","const":"/twitter/{screen_name}/about","description":"Endpoint path template. Replace path params before calling twexapi_request.","examples":["/twitter/elonmusk/about"]},"query":{"type":"object","properties":{},"required":[],"additionalProperties":false}},"required":["method","path"],"additionalProperties":false,"path_params":{"type":"object","properties":{"screen_name":{"type":"string","description":"Twitter/X screen name without @.","examples":["elonmusk"]}},"required":["screen_name"],"additionalProperties":false}},"example":{"method":"GET","path":"/twitter/elonmusk/about"},"mpp_page_size_field":null}],"tools":[{"name":"explore","title":"Search TwexAPI endpoints","description":"Search allowed TwexAPI endpoints. Each result names the tool that calls it.","inputSchema":{"type":"object","properties":{"query":{"type":"string"},"category":{"type":"string"},"include_writes":{"type":"boolean"}},"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"twexapi_request","title":"Read X/Twitter data","description":"Call an allowed read-only TwexAPI REST endpoint.","inputSchema":{"type":"object","properties":{"method":{"type":"string"},"path":{"type":"string"},"query":{"type":"object","additionalProperties":true},"body":{}},"required":["method","path"],"additionalProperties":false},"annotations":{"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}},{"name":"twexapi_write","title":"Write to X/Twitter","description":"Call an allowed TwexAPI REST endpoint that changes data, such as posting, liking or sending a message.","inputSchema":{"type":"object","properties":{"method":{"type":"string"},"path":{"type":"string"},"query":{"type":"object","additionalProperties":true},"body":{}},"required":["method","path"],"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":true}}]}