Skip to main content
Glama

X posts

x_posts
Destructive

Create, read, search, and moderate X posts: publish threads, fetch posts by ID, search archives, count volume, reconstruct conversations, list engagement, hide replies, and delete posts.

Instructions

Create, read, search and moderate posts: publish posts and threads, fetch one or many by id, search recent or full-archive, count volume, reconstruct a conversation, list likers/reposters/quotes, hide replies, delete.

Actions (pass "action" plus that action's parameters):

  • create: Publish a post (tweet), reply or quote on X as the authenticated account. [requires: text]

  • create_thread: Publish a multi-post thread by chaining replies. [requires: posts]

  • delete: Delete a post you authored. [requires: tweet_id]

  • get: Fetch one post with its author, metrics, media, entities and (when present) the quoted or reposted post. [requires: tweet_id]

  • get_many: Fetch up to 100 posts in one request. [requires: tweet_ids]

  • search: Search X posts with the v2 search operators. [requires: query]

  • count: Get post volume for a query without retrieving the posts themselves. [requires: query]

  • thread: Reconstruct a conversation: fetches the root post and finds replies via conversation_id search. [requires: tweet_id]

  • likers: Returns up to 100 users per page who liked the post. [requires: tweet_id]

  • reposters: Returns up to 100 users per page who reposted the post. [requires: tweet_id]

  • quotes: Returns up to 100 posts that quote the given post, with authors and metrics. [requires: tweet_id]

  • hide_reply: Hide a reply to one of your posts, or unhide it. [requires: tweet_id]

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "action": "<action>"
    },
    "name": "x_posts"
  }
}

Input Schema

NameRequiredDescriptionDefault
pollNoPoll configuration: 2-4 options, duration 5-10080 minutes.
textNoPost text. Standard accounts are limited to 280 characters; X enforces it.
postsNoThread posts in order (2-25).
queryNo
actionYesAction to perform. One of: create, create_thread, delete, get, get_many, search, count, thread, likers, reposters, quotes, hide_reply.
hiddenNo
archiveNo
end_timeNoISO 8601 timestamp. Exclusive upper bound.
quote_ofNoPost id to quote. Note: X currently limits quote posting to Enterprise plans.
reply_toNoPost id to reply to.
tweet_idNo
media_idsNoMedia ids from x_upload_media.
tweet_idsNo1-100 post ids.
next_tokenNoCursor from a previous response (meta.next_token).
sort_orderNoResult ordering (recent search only).recency
start_timeNoISO 8601 timestamp (e.g. 2026-01-31T12:00:00Z). Inclusive lower bound.
granularityNohour
max_repliesNoNumber of results to return (10-100).
max_resultsNo
community_idNoCommunity id to post into.
made_with_aiNoDisclose that the post contains AI-generated media.
reply_settingsNoWho may reply: following, mentionedUsers, subscribers or verified.
paid_partnershipNoDisclose a paid partnership.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Beyond the annotations, the description adds useful behavior: create publishes as the authenticated account, delete only removes posts you authored, hide_reply requires authorship of the parent post, search can use the 7-day recent index or full archive, and likers/reposters return up to 100 users per page. It still does not state irreversibility of deletes or rate-limit/error behavior, so it is strong but not exhaustive.

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

Conciseness5/5

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

The definition front-loads the overall purpose, then uses compact action bullets with required parameters. The length is appropriate for a 12-action, 23-parameter aggregated tool, and each bullet contributes actionable routing information.

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

Completeness4/5

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

Given the tool's complexity, the description covers every action and its required inputs, which is substantial. It still omits which optional parameters apply to which actions, detailed return shapes for search/get_many, and destructive-operation cautions, but the core completeness is high.

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?

The description adds significant meaning beyond the schema by mapping each action to its required parameters, such as tweet_ids for get_many and query for search/count. With 74% schema description coverage, this action-to-parameter mapping is valuable, though optional parameters per action and some anyOf distinctions remain unclarified.

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?

The description opens with a precise scope ("Create, read, search and moderate posts") and then lists each specific action with its resource and required parameters, such as create, delete, search, thread, likers, and hide_reply. An agent can distinguish the tool's capabilities from siblings without opening the schema.

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

Usage Guidelines4/5

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

The action list makes the context for each operation clear and states the required parameters per action, for example create requires text and thread requires tweet_id. However, it does not explicitly compare this tool with siblings like x_engagement or x_timelines, nor does it state when not to use it.

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