SyncGTM now works inside Claude and ChatGPT. Learn more
All GTM agents

X Profile Posts

/x-profile-posts

Pull up to 100 recent posts from any public X profile: post text, timestamp, likes and reposts, for a flat 0.4 credits per profile.

Download Skillx-profile-posts.zip · free

Overview

X Profile Posts is a SyncGTM MCP agent that takes an X handle or a profile URL and returns that account's recent posts with text, posted date, like count and repost count. It calls the x_profile_posts tool, which bills a flat 0.4 credits per profile whether you ask for 10 posts or 100. Use it to read what a founder, competitor or creator is actually saying before you write to them.

What it does

  1. 1

    Takes either username (the handle without the @) or profile_url (the full X profile URL). Pass at least one.

  2. 2

    max_posts sets how many posts come back, from 1 to 100, default 10, and the price does not move with it. There is no date range, sort order or search-terms parameter on this tool — those live on x_profile_reactions.

  3. 3

    Returns each post's text, posted_at timestamp, likes and reposts, plus the username the posts belong to. Those are the only fields in the response.

  4. 4

    Does not return the accounts behind the engagement. For the accounts that commented on one post use x_post_commenters; no tool on the server returns the handles that liked or reposted, and x_profile_reactions gives per-post totals only.

  5. 5

    Returns no emails, phone numbers, follower counts or LinkedIn URLs. You get handles and content only.

  6. 6

    Costs 0.4 credits per call, flat. A private, protected or misspelled handle returns nothing and still bills the call.

How to use it

  1. 1

    Download the skill file — it saves as x-profile-posts.zip.

  2. 2

    In Claude, open Settings → Capabilities → Skills and upload the .zip (or unzip the x-profile-posts/ folder into .claude/skills/ for Claude Code).

  3. 3

    Connect the SyncGTM MCP server in your client — browser sign-in, no API key — then have your X handles or profile URLs ready to paste in.

  4. 4

    Type /x-profile-posts and name the accounts, for example "pull the last 30 posts from janedoe". The skill strips the @, normalizes pasted URLs and calls x_profile_posts once per profile.

  5. 5

    Tune max_posts — it is the one setting worth changing. The default of 10 is a spot check; 100 costs the same 0.4 credits and gives you the full recent history.

Use cases

Founder outreach prep

Read a founder's last 30 posts before writing to them. Open with the problem they described in their own words instead of a generic line about their industry.

Competitor message tracking

Pull 100 posts from each competitor account to see which claims they repeat, how often they post, and when the positioning shifts.

Signal sweep across a handle list

Run a list of target handles and flag anyone who mentioned hiring, funding, a migration or a product launch, with the exact wording and date.

Creator and partner vetting

Check what a creator posts about and which posts actually earn likes and reposts before committing budget to a co-marketing slot or a sponsored thread.

GTM workflow examples

Turn a competitor's launch thread into a warm outbound list

  1. 1`x_post_commenters` — pull the accounts that replied to the competitor's launch post URL with `max_results` 200 (range 1–1000, default 100). One flat 0.4-credit call, returning username, name, bio and comment text.
  2. 2`x_profile_posts` — read the last 25 posts from the 20 best-fit handles at 0.4 credits each, 8 credits total, and extract what each person is building and what they complain about.
  3. 3`find_people` — there is no name filter on this tool, so search `current_company_names` taken from each X bio plus the matching `current_titles` with `limit` 5, then keep the single profile whose name matches. It bills 0.3 credits per result, so the `limit` is the spend control.
  4. 4`find_work_email` — run the 20 matched LinkedIn URLs at 1 credit each to get business inboxes.

Outcome: A 20-row outbound sheet with handle, matched LinkedIn URL, work email and a first line quoting one of their own dated posts.

Pre-call brief for a founder-led deal

  1. 1`x_profile_posts` — pull the founder's last 50 posts with max_posts 50, one 0.4-credit call, and rank them by likes plus reposts to find what they push hardest.
  2. 2`linkedin_profile_posts` — pull the same person's LinkedIn posts at 0.3 credits to see the version they write for buyers, not for peers.
  3. 3`company_product_launch` — 1 credit to confirm what the company actually shipped recently, with dates and summaries, so a hint in a post becomes a fact you can cite.
  4. 4`enrich_organization` — 2 credits on the company domain for industry, size, funding and technologies as account context.

Outcome: A one-page call brief with three talking points, each tied to a dated post or a confirmed release.

Monday competitor content review

  1. 1`check_credits` — free; confirm the balance before the batch. Five accounts at 0.4 credits is 2 credits.
  2. 2`x_profile_posts` — pull 100 posts from each of five competitor handles and group them into message pillars with a post count per pillar.
  3. 3`linkedin_page_posts` — pull the same five companies' page posts at 0.3 credits each to see which pillars they aim at a B2B audience.
  4. 4`b2b_ads_search` — 0.5 credits per company to check which of those messages they are paying to run as ads, with creative and targeting.

Outcome: A weekly one-pager showing each competitor's message pillars, posting cadence, and the claims they are spending money to amplify.

Prompts

Paste any of these into Claude once the skill is installed and the SyncGTM MCP is connected.

Use the SyncGTM MCP tool x_profile_posts to pull the last 30 posts from the X handle stripe. Summarize the three themes they post about most and quote the two posts with the highest likes plus reposts.
Pull the last 100 posts from https://x.com/janedoe with x_profile_posts. Flag every post that mentions hiring, funding or a product launch, and give me the exact wording with its date.
For these 15 X handles, run x_profile_posts with max_posts 20 on each: [paste handles without the @]. Return a table of handle, posts per month, top theme and most recent post date. Stop after 15 profiles and report credits used.
Compare five competitors on X. Run x_profile_posts with max_posts 100 on each of these handles: [handle1], [handle2], [handle3], [handle4], [handle5]. That is 5 calls and 2 credits. Group their posts into message pillars and tell me which pillar each one leans on hardest.
Run x_profile_posts on the handle [founder handle] with max_posts 50, then linkedin_profile_posts on their LinkedIn URL. Write a three-line pre-call brief that quotes one dated post from each platform.

Best practices

  • Cost is flat at 0.4 credits per call, so max_posts 100 prices the same as max_posts 10. Under-pulling loses you context and saves nothing.

  • The multiplier is profile count, not post count. Forty handles is 16 credits, so dedupe the list and cap the batch before you run it.

  • Strip the @ when you pass username. Pass profile_url instead whenever you only have the URL or the handle is ambiguous.

  • Private and protected accounts return nothing, and so do accounts that only repost. Treat an empty result as a handle problem, not proof of inactivity, and confirm the spelling before spending a second call.

  • When you need per-post reaction totals with a date range or a sort order, use x_profile_reactions at 0.2 credits. It is half the price and takes start_date, end_date and sort ("Top", "Latest", "Latest + Top"), but it requires a full profile_url — a bare handle is not accepted there.

  • This tool returns posts, not people. For the accounts that commented on a specific post use x_post_commenters; nothing returns who liked or reposted. For a work inbox, find_people has no name filter, so search current_company_names and current_titles from the bio with a limit, then run find_work_email at 1 credit.

Complementary skills

Explore more

Ready to run /x-profile-posts on your own data?