Skip to main content
Glama
atmosphere-ai

AdvisorPPC X Organic

User post timeline

x_organic_user_posts
Read-only

Fetch a user's organic posts from their X/Twitter profile, optionally excluding replies and retweets, with pagination for full history retrieval.

Instructions

GET /2/users/:id/tweets. Pass user_id from lookup/me. exclude=replies,retweets optional.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
excludeNoComma list: replies,retweets
user_idNoDefaults to the authenticated user
max_resultsNo
pagination_tokenNopagination_token from a previous meta.next_token

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, and the description reinforces this with GET. It adds the useful context that user_id should be sourced from lookup/me, but it does not disclose behavior such as whether replies/retweets are included by default, pagination behavior, or response shape. With annotations covering the safety profile, this is adequate but not rich.

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 description is a single compact line that front-loads the HTTP method and resource, then gives the two most important calling hints. Every word earns its place with no filler.

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?

For a read-only, zero-required-parameter timeline fetch, the description plus schema cover the essential invocation details: endpoint, user_id source, optional exclude, max_results bounds, and pagination token. No output schema exists, so return-shape details are not strictly expected, though noting the default inclusion of replies/retweets would make it slightly more complete.

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

Parameters3/5

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

Schema coverage is 75%, and the schema already documents exclude, user_id, pagination_token, and max_results bounds. The description adds only that user_id comes from lookup/me and that exclude is optional, while max_results and pagination are left to the schema. This is a modest value-add over the schema.

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

Purpose4/5

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

The description names a concrete endpoint (GET /2/users/:id/tweets) and the resource ('User post timeline'), and tells the agent to pass user_id from lookup/me. This clearly identifies the tool as fetching a user's posts, but it does not explicitly differentiate it from siblings like my_timeline or lookup_posts.

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

Usage Guidelines3/5

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

The description gives operational guidance: pass user_id from lookup/me and treats exclude=replies,retweets as optional. However, it never states when to prefer this tool over sibling timeline/search/list tools, so usage context is implied rather than explicit.

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