Unroll an X thread
xcrap_get_threadUnroll any X/Twitter thread from a single post link, returning the original author's posts in order for easy reading or summarization. Excludes replies to focus on the connected chain.
Instructions
Unroll a whole X/Twitter thread from any post in it, returning every post by the original author in order as one readable document.
This is the tool for "read this thread and summarise it". Give it the link the user pasted — first post, last post or anywhere in the middle — and it reconstructs the run. Replies by other people are excluded: a thread is one author's chain, not the surrounding conversation.
When to use this instead of the alternatives:
Use this when the link is part of a series of connected posts, or when a single post ends mid-thought.
Use xcrap_get_tweet if you only want the one post the URL points at (a thread costs more: 20 calls/minute).
Use xcrap_get_user_tweets to read an account's recent posts generally, rather than one connected chain.
Args:
url (string, required): any post in the thread, as a URL or numeric id.
max_tweets (number, 1-100): how many posts to unroll, default 25. Lower it if a response comes back truncated.
format ('markdown' | 'json'): default 'markdown'.
Returns (markdown): the author heading, then every post in order with its timestamp, text and metrics. Returns (json): { root_id, author{...}, count, truncated, tweets[ ] }. The 'truncated' flag is true when the thread is longer than max_tweets.
Note: threads are reconstructed from X's public data, so a very old thread may come back partial — 'truncated' and the post count tell you when that happened.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Any post in the thread, as a URL or numeric id. | |
| format | No | Output format. 'markdown' (default) is compact, human-readable and costs roughly a tenth of the tokens of the same data as JSON — prefer it for reading and summarising. Use 'json' only when you need exact field access: numeric ids, media URLs, per-metric values, or provenance metadata. | markdown |
| max_tweets | No | Maximum posts to unroll, 1-100 (default 25). Each post costs roughly 200-400 characters of context; lower this if the result is truncated. |