{"name":"io.github.nsozturk/tweetkit-x","slug":"nsozturk-tweetkit-x","title":null,"description":"Post, delete & read on X (Twitter) using your own logged-in web session — no paid API.","url":"https://mcp.market/server/nsozturk-tweetkit-x","rating":null,"grade":"B","score":78,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":31,"stars":10,"forks":2,"downloads_week":149,"last_push_at":"2026-07-07T22:35:18.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/nsozturk/tweetkit-x","website":null,"version":"0.3.0","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"tweetkit-x","version":"0.3.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"macOS Keychain service name holding your X session cookie string (must contain auth_token + ct0). Alternatively set TWEETKIT_COOKIE (the raw cookie string) or TWEETKIT_COOKIE_FILE (a file path).","format":"string","name":"TWEETKIT_COOKIE_KEYCHAIN"},{"description":"Your X (Twitter) session cookie string — the Cookie header from a logged-in x.com request. Must contain auth_token and ct0.","format":"string","isSecret":true,"name":"TWEETKIT_COOKIE"}]}],"tools":[{"name":"auth_status","description":"Check whether tweetkit has a valid X session cookie loaded.","write_action":false,"price_micros":0,"input_schema":null},{"name":"block_user","description":"Block @username. Confirm first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"bookmark_tweet","description":"Bookmark a tweet (private — invisible to others).","write_action":false,"price_micros":0,"input_schema":null},{"name":"delete_tweet","description":"Delete one of the authenticated user's tweets by id. Irreversible — confirm first.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_tweets","description":"Delete several tweets by id. Irreversible — confirm the exact list with the user first.","write_action":true,"price_micros":0,"input_schema":null},{"name":"follow_user","description":"Follow @username. (Reversible with unfollow_user.)","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_bookmarks","description":"Your bookmarked tweets.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_followers","description":"A user's followers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_following","description":"Accounts a user follows.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_home_timeline","description":"Your home feed. following=True → 'Following' (chronological); else 'For You'.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_likers","description":"Users who liked a tweet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_my_tweets","description":"List the authenticated user's own recent tweets (newest first).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_notifications","description":"Your notifications timeline (mentions / engagement).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_replies","description":"Fetch a tweet's conversation (its replies).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_retweeters","description":"Users who retweeted a tweet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_tweet","description":"Fetch a single tweet by id (text, author, counts, url).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_likes","description":"Tweets a user has liked.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_profile","description":"A user's full profile: name, bio, follower/following/tweet counts, verified, created_at.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_tweets","description":"List a given @username's recent tweets (newest first).","write_action":false,"price_micros":0,"input_schema":null},{"name":"import_cookie_from_file","description":"Set the X session cookie from a file on disk: HAR, storage-dump .zip, or cookie JSON.","write_action":false,"price_micros":0,"input_schema":null},{"name":"like_tweet","description":"Like a tweet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mute_user","description":"Mute @username (silent — they aren't notified).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pin_tweet","description":"Pin one of your tweets to your profile.","write_action":false,"price_micros":0,"input_schema":null},{"name":"post_note","description":"Post a long-form (note) tweet — beyond the 280-char limit. Confirm the text first.","write_action":true,"price_micros":0,"input_schema":null},{"name":"post_thread","description":"Post a thread: a list of tweet texts, each auto-replying to the previous one.","write_action":true,"price_micros":0,"input_schema":null},{"name":"post_tweet","description":"Post a tweet. Optionally attach one image (local path) and/or reply to a tweet id.","write_action":true,"price_micros":0,"input_schema":null},{"name":"quote_tweet","description":"Quote-tweet an existing tweet (embed it with your own commentary). Optional image.","write_action":false,"price_micros":0,"input_schema":null},{"name":"retweet","description":"Repost (retweet) a tweet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"schedule_tweet","description":"Schedule a tweet for a future unix timestamp (seconds since epoch).","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_my_tweets","description":"Find the authenticated user's own tweets matching `query`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_x","description":"Search ALL of X — the real search engine, not a local filter.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_session_cookie","description":"Set the X session cookie from a pasted `Cookie:` header — the easiest setup.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unblock_user","description":"Unblock @username.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unbookmark_tweet","description":"Remove a bookmark.","write_action":true,"price_micros":0,"input_schema":null},{"name":"unfollow_user","description":"Unfollow @username.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unlike_tweet","description":"Remove a like from a tweet.","write_action":true,"price_micros":0,"input_schema":null},{"name":"unmute_user","description":"Unmute @username.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unpin_tweet","description":"Unpin your pinned tweet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unretweet","description":"Undo a repost. Pass the id of the ORIGINAL tweet that was retweeted.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unschedule_tweet","description":"Cancel a previously scheduled tweet.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":78,"grade":"B","scanned_at":"2026-09-26T05:16:15.322Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T05:16:15.296Z","components":{"code":{"score":25,"max":25,"notes":["8 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 80 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"tweetkit-x","version":"0.3.0","found":true,"weeklyDownloads":149,"license":"MIT","dependencyCount":5,"publishedAt":"2026-07-07T23:12:10.642548Z","repositoryUrl":"https://github.com/nsozturk/tweetkit-x"}],"repo":{"found":true,"owner":"nsozturk","repo":"tweetkit-x","archived":false,"pushedAt":"2026-07-07T22:35:18Z","stars":10,"forks":2,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/122411944?v=4","ownerCreatedAt":"2023-01-10T23:34:25Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/122411944?v=4&s=128","source":"github"},"presence":{"stars":10,"forks":2,"downloadsWeek":149,"license":"MIT","lastPushAt":"2026-07-07T22:35:18.000Z","score":31}}}},"grade_history":[],"reviews":[]}