Skip to main content
Glama

AIsa X / Twitter

Get User TimeLine

get_twitter_user_tweet_timeline
Read-onlyIdempotent

Retrieve a user's own tweets by numeric userId, newest first, matching the order shown on their profile in the X app. Up to 20 tweets per page; pass the returned cursor for more. Optionally include replies and the parent tweet of each reply. Use this to read what an account publishes over time. Time-range filtering is NOT supported here — if you need tweets within a specific time window, use get_twitter_user_mentions (which accepts sinceTime/untilTime) or get_twitter_tweet_advanced_search with date operators in the query. If you only have a @handle, get_twitter_user_last_tweets accepts either handle or ID.

Usage-based billing; Default request estimate: $0.0057 USD (not a fixed price). Account-specific pricing and final settlement may differ.

Input Schema

NameRequiredDescriptionDefault
cursorNoCursor for paginating through results. Leave empty for the first page.
userIdNoUser ID of the user whose timeline to retrieve.
userNameNo
includeRepliesNoWhether to include replies in the results. Defaults to false. Provider reference (supplier schema): `{"default":false,"type":"boolean"}`.
includeParentTweetNoWhether to include the parent tweet when a tweet is a reply. Defaults to false. Provider reference (supplier schema): `{"default":false,"type":"boolean"}`.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / cursor / description
      Added value: +"Cursor for paginating through results. Leave empty for the first page."
    • addedInput schema / properties / includeParentTweet / description
      Added value: +"Whether to include the parent tweet when a tweet is a reply. Defaults to false.\n\nProvider reference (supplier schema): `{\"default\":false,\"type\":\"boolean\"}`."
    • addedInput schema / properties / includeReplies / description
      Added value: +"Whether to include replies in the results. Defaults to false.\n\nProvider reference (supplier schema): `{\"default\":false,\"type\":\"boolean\"}`."
    • addedInput schema / properties / userId / description
      Added value: +"User ID of the user whose timeline to retrieve."
  2. Changed9 schema fields changed
    • removedInput schema / properties / cursor / description
      Removed value: -"Cursor for paginating through results. Leave empty for the first page."
    • removedInput schema / properties / includeParentTweet / default
      Removed value: -false
    • removedInput schema / properties / includeParentTweet / description
      Removed value: -"Whether to include the parent tweet when a tweet is a reply. Defaults to false."
    • changedInput schema / properties / includeParentTweet / type
      Previous value: -"boolean"New value: +"string"
    • removedInput schema / properties / includeReplies / default
      Removed value: -false
    • removedInput schema / properties / includeReplies / description
      Removed value: -"Whether to include replies in the results. Defaults to false."
    • changedInput schema / properties / includeReplies / type
      Previous value: -"boolean"New value: +"string"
    • removedInput schema / properties / userId / description
      Removed value: -"User ID of the user whose timeline to retrieve."
    • addedInput schema / properties / userName
      Added value: +{
      +  "type": "string"
      +}
  3. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, non-destructive, open-world behavior, so the description's job is to add context beyond that. It does: pagination ceiling ('Up to 20 tweets per page; pass the returned cursor for more'), result ordering, and the absence of time-range filtering. It stops short of permission/auth requirements, but the added operational detail is substantial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and each sentence carries routing information rather than filler. It runs five sentences and is somewhat dense, but the alternative-routing and pagination content justify the length; only the injected pricing block is pure noise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be described, and the description still covers pagination, ordering, reply handling, and the filtering limitation with concrete alternatives. Nothing an agent needs to invoke this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 80%, so baseline is 3, and the description adds real value: it clarifies cursor usage across pages, notes userId must be numeric, and explains includeParentTweet's meaning ('the parent tweet of each reply'). The one gap is the undocumented userName parameter, which the description never addresses.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Retrieve a user's own tweets by numeric userId') plus scope and ordering ('newest first, matching the order shown on their profile'). It also implicitly separates itself from siblings like get_twitter_user_last_tweets and get_twitter_user_mentions by naming them as alternatives, so an agent can pick correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use it ('read what an account publishes over time'), when not to ('Time-range filtering is NOT supported here'), and which alternatives to use instead (get_twitter_user_mentions for sinceTime/untilTime, get_twitter_tweet_advanced_search for date operators). It even handles the handle-vs-ID case by pointing to get_twitter_user_last_tweets.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources