Skip to Content
MCPToolsScrape X Profile Posts

X Profile Posts

Give it an X profile, get back what that account has been posting.

Tool
x_profile_posts
Cost
0.3 credits per post
Category
Social Signals
Required input
profile_urlusername
Returns
Recent posts with content, engagement and timestamps

What it does

  • Returns recent posts authored by an X profile — post content, engagement and timestamps.
  • Takes either profile_url or username. Pass at least one. The handle goes in without the @.
  • Cost is per post returned — 0.3 credits each — so max_posts is what you pay for: 10 posts is 3 credits, 100 is 30.

It returns what the account published. It does not return the accounts that engaged with those posts — that is x_post_commenters.


Use cases

  • Personalise from what a prospect published. A recent post is a current, specific opener.
  • Track announcements from target accounts. Launches and hiring news often land on X before anywhere else.
  • Vet a creator or partner. Post history and engagement together show whether the reach is real.
  • Monitor a competitor’s narrative. What a rival keeps posting is the positioning they are betting on.

How to use it

Connect the MCP server

Follow the setup guide for your client. Browser sign-in, no API key.

Pull one profile

Get the last 20 posts from the X profile @stripe.

Read the account before you write

Pull the last 30 posts from @janedoe and summarise the three themes she posts about most. Quote the exact wording of her two most-engaged posts.

Do the same across a list

For each of these 15 X handles, pull the last 10 posts and flag anyone who mentioned hiring, funding, or a product launch.

Example prompts

Ask your clientWhat you get back
”Last 20 posts from @janedoe”20 posts with content and engagement
”What has @stripe posted about this month?”Recent posts, summarised by theme
”Pull posts from these 15 handles and flag launch announcements”One post set per handle, filtered
”Who commented on this X post?”Not this tool — use x_post_commenters

Best prompting practices

  • Give the handle without the @ if you are passing username. Pass the full URL instead when you have it.
  • Name the tool when your client hesitates. “Use x_profile_posts” stops it reaching for a web search — and an answer that arrives with no credits charged did not read the timeline.
  • Set max_posts deliberately. The default is 10, and you pay per post returned — raise it when you actually want the history, not by reflex.
  • Ask for a summary, not a dump. “Summarise the themes and quote the top two posts” gives you something usable in outreach; a raw list of 100 posts does not.
  • Keep the URL and date on every quote. A theme without a link back is not checkable, and reposts get blurred into original posts when a client is summarizing.
  • Say what an empty timeline means. Protected accounts, and accounts that only repost, return nothing. “Mark it no original posts and move on — do not describe them from memory.”
  • Check the handle before you retry. A misspelled handle and a private account look identical in the response, and the second call costs the same as the first.
  • Cap the batch. “Stop after 25 profiles and report credits used” keeps a long list predictable.

Output

{ "username": "janedoe", "posts": [ { "text": "We just shipped self-serve onboarding.", "posted_at": "2026-07-28T09:12:00Z", "likes": 214, "reposts": 31 } ] }

Credits and limits

0.3 credits per post returned. max_posts accepts 1–100 and defaults to 10, so a default call costs up to 3 credits and a full 100-post call up to 30. A quiet profile that returns fewer posts costs less. Run check_credits (free) before a large batch.

Private and protected accounts return nothing. An empty result also happens on accounts that only repost and never author. Check the handle is spelled correctly before spending a second call on it.


Parameters

ParameterTypeRequiredNotes
profile_urlstringOne of the twoFull X profile URL
usernamestringOne of the twoHandle without @
max_postsnumberNo1–100, default 10

ToolUse it instead when
x_profile_reactionsYou want per-post reaction totals with date and sort filters — 0.3 credits per post
x_post_commentersYou want the accounts that commented, not the posts
linkedin_profile_postsThe prospect is more active on LinkedIn
instagram_profile_postsYou need Instagram content instead

Next steps


Keep learning

Two courses take these tools past the reference page — clustered by GTM job, then chained into workflows.