twitr.sh
Server Details
X/Twitter reads, search, monitors and posting. Pay-per-call in USDC — no signup, no API keys.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- lnvestor/twitr-skills
- GitHub Stars
- 1
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 14 of 14 tools scored.
Most tools have clearly distinct purposes (write, read, search, monitor, compose, etc.), but some overlaps exist: x_read includes trending topics while x_radar is dedicated to trends, and x_timeline provides engagement lists that overlap with x_extract's extractors. Descriptions help differentiate them, but an agent might initially confuse the boundary between x_read, x_search, and x_timeline for tweet retrieval.
All tool names share the x_ prefix and are single words, but mix verb forms (read, search, write, compose, extract, monitor) with noun forms (draws, radar, inbox, lists, profile, timeline). The convention is predictable and uniformly lowercase, but a fully consistent verb_noun or noun-only pattern would be clearer. Minor deviation: x_communities vs x_community are nearly identical and refer to reading vs managing.
14 tools is well within the ideal 3-15 range and each tool covers a distinct functional area of X/Twitter: reading, writing, searching, monitoring, extracting, composing, community management, etc. The count feels appropriate for the broad scope of the server, neither bloated nor thin.
The tool surface covers the major X/Twitter interactions comprehensively: fully capable read (x_read, x_search, x_timeline), write (x_write, x_profile), community and list operations, real-time monitoring, bulk extraction, direct messaging, media, trends, and even AI-assisted composition and giveaways. Obvious gaps are minimal, such as no list creation/management commands, but the core lifecycle of tweets, users, communities, and accounts is well covered.
Available Tools
14 toolsx_communitiesAInspect
Read an X/Twitter Community: profile info, member and moderator rosters, the community's tweets, or keyword search inside the community. Fixed price for info; billed per item for rosters, tweets, and search.
Guidance: kind=info (fixed price) or members|moderators|tweets|search (per-item — resultsLimit MANDATORY). id = community ID. search additionally requires q.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | search: query within the community. | |
| id | Yes | Community ID. | |
| kind | Yes | What to read. | |
| resultsLimit | No | Mandatory for members/moderators/tweets/search: max items, billed per item. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses read-only nature, pricing model, and mandatory constraints. It does not cover auth requirements or rate limits, but the pricing context is valuable behavioral insight.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences plus a guidance line), front-loaded with the main action, and every sentence adds value. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description fully covers input parameters and their constraints. However, given no output schema, mentioning the variable output format by kind would improve completeness. Still, it is largely sufficient for a read tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the description adds significant meaning beyond the schema: it explains fixed vs per-item billing, the mandatory resultsLimit for some kinds, and the conditional requirement for 'q'. This enhances parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads an X/Twitter Community with specific actions (profile info, rosters, tweets, search). It uses specific verb 'Read' and resource 'X/Twitter Community', distinguishing it from siblings like x_community by covering multiple operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use each 'kind', pricing implications (fixed vs per-item), mandatory parameter (resultsLimit), and additional requirement (q for search). This fully informs selection within the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_communityAInspect
Manage X/Twitter Communities as a connected account: create a new community, join or leave an existing one, or delete a community you own.
Guidance: PREREQUISITE: connect an X account. Acts as a handle THIS wallet owns. action=create (name, optional description) | join|leave (community_id) | delete (community_id + community_name confirmation). account required. Payment settles before the action; Idempotency-Key required.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | create: the community name. | |
| action | Yes | Which community action. | |
| account | Yes | A connected X handle owned by this wallet (no @). | |
| description | No | create: optional community description. | |
| community_id | No | join|leave|delete: the community ID. | |
| community_name | No | delete: the community name, as confirmation. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses payment settlement and idempotency-key requirement, and that the tool acts on a connected handle. However, no safety warnings about deletion irreversibility or error behaviors, and no discussion of rate limits or authorization beyond account requirement. With no annotations, more behavioral context would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two paragraphs: purpose statement then guidance. Front-loaded with main functionality. Efficient but could be slightly more structured (e.g., bullet points). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers action mapping, prerequisites, and key constraints (payment, idempotency). Missing details on how to obtain community IDs, error handling, or post-action outcomes. Adequate but not fully complete given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds value by mapping actions to parameters (e.g., create requires name, delete requires community_id and community_name) and noting optional fields. This explains conditional usage beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it manages X/Twitter communities with four specific actions (create, join, leave, delete). Distinguishes from sibling tools like x_communities (likely for listing) and other X tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit prerequisite (connected X account), action-to-parameter mapping, and required fields. Lacks explicit when-not-to-use or alternatives, but the action-specific guidance is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_composeAInspect
Draft tweets with AI: generate variants from a topic and goal, refine an existing draft, or score a draft for likely engagement — with tone, call-to-action, and style-matching options. Flat sub-cent price per step.
Guidance: step=generate (topic + goal required; optional tone/styleUsername/additionalContext/callToAction/mediaType/hasLink/hasMedia), refine (draft required), or score (draft required). Returns text variants with scores and suggestions. Flat floor price per call.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | ||
| step | Yes | Composer step. | |
| tone | No | ||
| draft | No | ||
| topic | No | ||
| hasLink | No | ||
| hasMedia | No | ||
| mediaType | No | ||
| callToAction | No | ||
| styleUsername | No | ||
| additionalContext | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry full weight. It discloses that the tool returns text variants with scores and suggestions, and mentions the flat price. It does not mention side effects like account interaction or draft persistence, which would be beneficial but not critical for a composition tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a concise guidance block. It front-loads the action, groups related information, and avoids redundancy. Every sentence adds value, from the overview to the step-specific requirements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters, no output schema, and no annotations, the description covers the tool's functionality well. It explains the three modes, required vs optional parameters, and return values. Minor gaps: it doesn't clarify whether drafts are saved or if the tool interacts with the account, but the core use is fully specified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has only 9% description coverage (just 'step' has a short note). The description compensates fully by listing all parameters grouped by step (topic, goal, tone, etc.) and explaining their roles. It adds meaning beyond the schema, making the parameter intent clear despite minimal schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a Twitter compose assistant with three distinct steps (generate, refine, score), each with specific inputs. It differentiates from siblings like x_write and x_read by focusing on draft creation, refinement, and scoring rather than posting or reading tweets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use each step and which parameters are required or optional. It mentions pricing but does not explicitly state when not to use the tool or contrast with alternatives. However, the step-based instructions are clear enough for an agent to pick the correct mode.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_drawsAInspect
Run a provably fair giveaway on X/Twitter: pick crypto-random winners from a tweet's replies, with retweet, follow, hashtag, keyword, minimum-follower, and account-age conditions. Fixed price set upfront from your estimated entry count.
Guidance: tweetUrl required. Optional: winnerCount (default 1), backupCount, uniqueAuthorsOnly, mustRetweet, mustFollowUsername, filterMinFollowers, filterAccountAgeDays, filterLanguage, requiredHashtags/Keywords/Mentions. Pricing is fixed upfront from the estimatedEntries you set (default 1000, max 10000) — set it near the tweet's reply count; that number is enforced as a hard cap. Payment settles before the draw runs, so pay only when you intend to run it; a failed draw does not auto-refund (contact support). Idempotency-Key header required — retries with the same key replay the original result instead of re-charging.
| Name | Required | Description | Default |
|---|---|---|---|
| tweetUrl | Yes | Full tweet URL (https://x.com/user/status/ID). | |
| backupCount | No | ||
| mustRetweet | No | ||
| winnerCount | No | ||
| filterLanguage | No | ||
| estimatedEntries | No | Expected replies inspected — drives the fixed price (default 1000). | |
| requiredHashtags | No | ||
| requiredKeywords | No | ||
| requiredMentions | No | ||
| uniqueAuthorsOnly | No | ||
| filterMinFollowers | No | ||
| mustFollowUsername | No | ||
| filterAccountAgeDays | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses provably fair randomness, crypto-random selection, fixed pricing, hard cap on estimatedEntries, payment settlement, no auto-refund, and idempotency key behavior. This is thorough but could mention error handling or validation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise, front-loading the purpose and then systematically covering parameters, pricing, and idempotency. Each sentence adds value, though it could be slightly tighter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and 13 parameters, the description covers most aspects but omits what the tool returns (e.g., confirmation, draw ID). It explains pricing and idempotency fully, but the lack of return value information leaves a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only 15% of parameters have schema descriptions, so description must compensate. It does so by listing all optional parameters (backupCount, mustRetweet, etc.) and explaining estimatedEntries (default 1000, max 10000) and pricing. This adds meaningful context beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Run a provably fair giveaway on X/Twitter: pick crypto-random winners from a tweet's replies' with specific conditions. This distinguishes it from sibling tools like x_compose or x_read, which have different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: requires tweetUrl, lists optional parameters, explains pricing model (fixed upfront, hard cap), and warns about payment and refund policy. It implicitly suggests when to use (for giveaways) but does not explicitly compare to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_extractAInspect
Bulk-export X/Twitter data as downloadable datasets: followers, following, repliers, quoters, reposters, likers, mentions, full threads, list and community members, spaces, or people/tweet search results — 23 extractors. Runs async: you get a claim check immediately and poll a free status URL for the download link. Billed per result.
Guidance: tool selects the extractor (23 options). Provide the matching target: targetTweetId (reply/repost/quote/thread/article/favoriters extractors), targetUsername (follower/following/verified/post/mention/likes/media), targetCommunityId, targetListId, targetSpaceId, or searchQuery (people_search, tweet_search_extractor). resultsLimit is MANDATORY — billed per result (article_extractor bills 5× per result). Runs ASYNC: the response is a claim check {snapshot_id, status_url}; poll status_url (free, SIWX) until status=ready for the download link. Idempotency-Key header is required so retries reuse the same job.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | Yes | Which extractor to run. | |
| language | No | ||
| minFaves | No | ||
| mediaType | No | ||
| sinceDate | No | ||
| untilDate | No | ||
| searchQuery | No | ||
| resultsLimit | Yes | MANDATORY: max results extracted, billed per result. | |
| targetListId | No | ||
| verifiedOnly | No | ||
| targetSpaceId | No | ||
| targetTweetId | No | ||
| targetUsername | No | ||
| targetCommunityId | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses async behavior (claim check, polling status_url), billing per result, and idempotency requirement. However, it does not detail error conditions, rate limits, or what happens on failure, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat long but well-structured with a clear first sentence summarizing the tool, followed by bullet-point-like guidance. It front-loads the core purpose. A slightly more concise presentation of the extractor mappings could improve readability, but overall it earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (14 parameters, 23 extractors, async execution, billing, idempotency), the description covers key aspects: extractor selection, target parameters, mandatory limit, async flow with polling, and idempotency. It lacks output schema details but describes the response shape. Error handling is not addressed, which is a minor gap for a complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 14%, so the description must compensate. It adds significant value by mapping each extractor to the appropriate target parameter (e.g., targetUsername for follower/following extractors), clarifying resultsLimit as mandatory and billed, and explaining the async response structure. While not all 14 parameters are individually described, the mapping covers the critical ones.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it bulk-exports X/Twitter data as downloadable datasets, listing 23 specific extractors. This verb+resource specification differentiates it from sibling tools like x_read or x_write, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on selecting extractors based on target parameters (e.g., targetTweetId for reply/repost/quote extractors), notes that resultsLimit is mandatory and billed, and explains the async workflow. It also mentions the Idempotency-Key header for retries, offering clear when-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_inboxAInspect
Read a connected X/Twitter account's private surfaces: bookmarks and bookmark folders, notifications, and DM history. Billed per item returned; readable only for handles this wallet connected.
Guidance: PREREQUISITE: connect an X account (see /api/x-accounts/start). Reads act AS that account, so you can only read the inbox of a handle THIS wallet connected. action=bookmarks (optional folderId) | bookmark_folders | notifications (optional type) | dm_history (target_user_id required). bookmarks/notifications/dm_history are billed per item — set resultsLimit (1–10000). account (the connected handle) is required.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | notifications: optional filter (e.g. mentions). | |
| maxId | No | dm_history: paginate before this message id. | |
| action | Yes | Which inbox read to run. | |
| account | Yes | A connected X handle owned by this wallet (no @). | |
| folderId | No | bookmarks: optional folder to read. | |
| resultsLimit | No | Max items to return (billed per item); ignored for bookmark_folders. | |
| target_user_id | No | dm_history: the other party's user id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses critical traits: billing per item returned, the ownership restriction (only for handles this wallet connected), and the 'acts AS that account' behavior. These are non-obvious, significant behaviors that an agent must know before invoking the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact yet comprehensive, front-loading the purpose and organizing guidance into a clear block. Every sentence adds value, with no filler. The slight repetition of 'billed per item' is acceptable given the need to emphasize the cost implication. The structure supports quick scanning by an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers prerequisites, scoping, action selection, billing, and parameter requirements very well. However, it does not describe the return format or pagination behavior beyond the maxId parameter in the schema. Since there is no output schema, a brief note on what each action returns would make it fully complete. Overall, it is highly complete for a complex multi-action tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Even though schema coverage is 100%, the description adds cross-parameter semantics that the schema lacks. It maps actions to their relevant parameters (e.g., 'action=bookmarks (optional folderId)' and 'dm_history (target_user_id required)') and clarifies the purpose of resultsLimit as a billing control. This enhances understanding beyond the individual parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Read' a specific resource: 'a connected X/Twitter account's private surfaces' and enumerates the exact surfaces (bookmarks, bookmark folders, notifications, DM history). This specific verb+resource combination distinguishes it from sibling tools like x_timeline or x_profile, which target public or different data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit prerequisites (connect an X account), explains that reads act as the connected account, and gives conditional parameter guidance (e.g., 'dm_history (target_user_id required)' and 'bookmarks/notifications/dm_history are billed per item — set resultsLimit'). This goes beyond a simple when-to-use by specifying exact usage scenarios and exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_listsAInspect
Read an X/Twitter List: its combined tweet timeline, its member roster, or its followers. Billed per item returned. Useful for following a curated set of accounts as one feed.
Guidance: kind=tweets|members|followers; id = list ID. resultsLimit is MANDATORY — billed per item returned. tweets supports sinceTime/untilTime and includeReplies.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | List ID. | |
| kind | Yes | What to read from the list. | |
| sinceTime | No | ||
| untilTime | No | ||
| resultsLimit | Yes | MANDATORY: max items returned, billed per item. | |
| includeReplies | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly states the tool is for reading, but does not disclose any rate limits, authentication requirements, error behavior, or pagination details. The billing mention adds some transparency, but more behavioral context would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured, with two clear paragraphs: the first states the tool's purpose, the second provides usage guidance. Every sentence adds value without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters (3 required), no output schema, and moderate complexity, the description covers the essential aspects: what it reads, how to specify kind and ID, mandatory resultsLimit, and optional time filters for tweets. It does not explain return format or error conditions, but for a read tool with no output schema, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant meaning beyond the input schema. It explains the possible values for 'kind' (tweets, members, followers), clarifies that 'id' is a list ID, emphasizes that 'resultsLimit' is mandatory and billed per item, and notes that 'sinceTime', 'untilTime', and 'includeReplies' are supported only when kind=tweets. Schema coverage is 50%, and the description compensates well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Read' and specifies the resource (an X/Twitter List) along with the three things that can be read: combined tweet timeline, member roster, or followers. This specificity differentiates it from sibling tools like x_timeline or x_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on how to use the tool: it explains the 'kind', 'id', and mandatory 'resultsLimit' parameters, and notes that for 'tweets', optional 'sinceTime', 'untilTime', and 'includeReplies' are available. It also mentions billing per item. However, it does not explicitly state when not to use this tool or suggest alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_monitorAInspect
Watch an X/Twitter account or keyword query in real time: new tweets, replies, quotes, mentions, hashtags, and profile changes, delivered to your agent by free polling or HMAC-signed webhooks. Prepaid by the hour with a hard stop at expiry — no open-ended billing. The way to track a brand, competitor, or topic without re-polling paid reads.
Guidance: action=create needs username (account monitor, e.g. "vercel") OR query (keyword monitor, X search syntax, ≤512 chars), optional eventTypes — 21 available: post events (tweet.new, .reply, .retweet, .quote, .media, .link, .poll, .mention, .hashtag, .longform) for any monitor, plus profile-change events (profile.avatar/banner/name/username/bio/location/url/verified/protected/pinned_tweet/unavailable.changed) for ACCOUNT monitors only; default all applicable — and hours (1–168, default 1). action=extend needs monitorId + hours; hours append to the current expiry (total prepaid window ≤ 720h). Extend at least 5 minutes BEFORE expiry — extends inside the final 5 minutes are refused (unpaid) to keep settlement from racing the expiry teardown. PREPAID: the monitor stops and is removed at expires_at unless extended — no open-ended billing; early deletion does not refund remaining hours. Idempotency-Key header REQUIRED — retries replay the original monitor instead of re-charging (on the MCP door, retries are protected by single-use payment credentials instead). Pay with USDC on Base (x402) or Tempo (MPP); Solana is not offered for monitors (stateful resources need a recoverable owner wallet). After creation: poll events at /api/monitors/{id}/events (free — SIWX sign-in with the paying wallet; do NOT poll in a tight loop) or register an HTTPS webhook once at /api/webhooks to push signed events straight to your AI agent (Claude, OpenClaw, Hermes, or any endpoint) in real time. Manage monitors at /api/monitors (SIWX).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Monitor kind (create). Inferred from username/query when omitted. | |
| hours | No | Prepaid hours to purchase (default 1). | |
| query | No | X search query to monitor (create, type=keyword). | |
| action | Yes | Create a new monitor or extend an existing one. | |
| username | No | X handle to monitor, without @ (create, type=account). | |
| monitorId | No | Monitor to extend (extend only). | |
| eventTypes | No | Event types to receive (default: all applicable). Post events (tweet.*) work for any monitor; profile-change events (profile.*.changed) apply to ACCOUNT monitors only. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses behavioral traits: prepaid billing with hard stop at expiry, no refunds, extension refusal within 5 minutes, event type restrictions per monitor type, and payment options. It also explains how to poll or set up webhooks, making agent behavior predictable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with sections for purpose, guidance, and payment, but it is quite lengthy and contains some repetition (e.g., mentioning prepaid nature multiple times). It is front-loaded with the most important information, but could be slightly more concise without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, two actions, payment, polling/webhooks, event types), the description covers all necessary aspects for agent usage: creation, extension, event filtering, billing, error conditions, and output delivery mechanisms. No output schema is provided, but the description explains how events are retrieved (polling or webhook), making it complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, the description adds significant context beyond the schema: it explains the purpose of each parameter (e.g., 'username' for account monitor, 'query' for keyword with max length), lists all 21 event types with their applicability, and clarifies default behavior (default event types, default hours). This helps agents choose correct values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool monitors X/Twitter accounts or keyword queries in real time, listing specific event types. It distinguishes itself from sibling tools like x_radar (monitoring) by emphasizing real-time delivery via webhooks and polling, and from x_read/x_search by focusing on continuous monitoring rather than one-time reads.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance for when to use create vs extend, including prerequisites (Idempotency-Key header, payment methods). It warns against re-polling paid reads and advises using webhooks for agent integration. The section on prepaid hours and expiry clarifies usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_profileAInspect
Edit a connected X/Twitter account's profile: display name, bio, location, website link, avatar image, and banner image. Acts only on handles this wallet connected.
Guidance: PREREQUISITE: connect an X account. Acts as a handle THIS wallet owns. action=update_profile (any of name, description, location, url) | set_avatar (media_url) | set_banner (media_url). account required. Payment settles before the change; Idempotency-Key required.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | update_profile: new website URL. | |
| name | No | update_profile: new display name. | |
| action | Yes | Which profile edit to make. | |
| account | Yes | A connected X handle owned by this wallet (no @). | |
| location | No | update_profile: new location. | |
| media_url | No | set_avatar|set_banner: public image URL. | |
| description | No | update_profile: new bio. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. Discloses payment settlement before change, idempotency-key requirement, and how actions (update_profile, set_avatar, set_banner) work. No mention of side effects or destructive behavior beyond editing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three clear sentences with a guidance block. Front-loaded purpose and essential details. No redundancy, but could be slightly more compact without losing completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no output schema, and no annotations, the description covers prerequisites, actions, payment, and idempotency. Missing details on return values or error conditions, but acceptable for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (baseline 3). Description adds value by grouping parameters per action, e.g., 'action=update_profile (any of name, description, location, url)' which clarifies conditional parameter usage beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Edit' and specific resource 'connected X/Twitter account's profile' with explicit fields (display name, bio, location, etc.). Distinguishes from sibling tools like x_compose or x_write.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit prerequisite stated ('PREREQUISITE: connect an X account') and constraint ('Acts only on handles this wallet connected'). Guidance on action parameter usage provided, but no explicit when-not-to-use or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_radarAInspect
Trending topics and breaking stories across tech, dev, science, business, culture, politics, and entertainment — aggregated from multiple public sources with regional and time-window filters. Flat sub-cent price per call; the cheap first stop for what is happening right now.
Guidance: Optional filters: category, region, hours (lookback), limit, source. Use report.next_cursor via after for the next page. Flat floor price per call.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Pagination cursor. | |
| hours | No | ||
| limit | No | ||
| region | No | ||
| source | No | Trend source filter. | |
| category | No | Topic category filter. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description adds cost info ('flat sub-cent price') and pagination behavior ('use report.next_cursor'). It does not mention auth needs, rate limits, or whether the tool is read-only. For a read tool, this is adequate but could include more about data freshness or limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short paragraphs: the first states purpose and cost, the second gives parameter and pagination guidance. It is mostly concise, but the price mention could be integrated more smoothly. No redundant sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 optional params, no output schema, and no annotations, the description covers the main behavioral aspects (cost, filtering, pagination). It could be improved by mentioning the structure of returned items or typical response format, but it is fairly complete for its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 6 params with 50% description coverage. The description adds value by indicating all filters are optional and grouping them, and explaining the 'after' parameter for pagination. This compensates for the missing schema descriptions on hours, limit, and region.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'trending topics and breaking stories' across multiple categories, with specific sources and filters. This distinguishes it from sibling tools like x_read (reading content) or x_search (searching). The verb 'aggregates' and resource 'topics/stories' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description frames it as 'the cheap first stop for what is happening right now', implying it's for quick trend overviews. It lists optional filters and pagination. However, it does not explicitly say when not to use it or compare to alternatives like x_search or x_monitor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_readAInspect
Read live X/Twitter data: look up a single tweet or user profile, batch-read up to 100 tweets or users at once, check whether one account follows another, fetch trending topics by region, extract a long-form article, or download tweet media. Pay per call in USDC — no API key, no signup; failed calls are never charged.
Guidance: resource=get-tweet|get-user (id), batch-tweets|batch-users (ids array, ≤100), check-follower (source+target usernames), trends (optional woeid/count), article (tweet id), followers-you-know (id + mandatory resultsLimit), download-media (id or ids ≤50 — returns media file URLs on THIS origin; links live 7 days). Fixed-price per call/id except followers-you-know which is per-result.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Tweet ID, user ID, or username (depends on resource). | |
| ids | No | batch-tweets|batch-users: up to 100 tweet IDs or user IDs/usernames. | |
| count | No | trends: number of trends to return. | |
| woeid | No | trends: region WOEID (default 1 = worldwide). | |
| source | No | check-follower: source username. | |
| target | No | check-follower: target username. | |
| resource | Yes | Which read operation to run. | |
| resultsLimit | No | Mandatory for followers-you-know: max results, billed per result. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description fully discloses behavior: all operations are read-only (no side effects), pricing is per-call (per-result for followers-you-know), failed calls are not charged, and download-media links expire in 7 days. No hidden surprises.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two paragraphs: the first gives a high-level overview; the second is a dense, structured guidance list. Every sentence adds necessary detail with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters and no output schema, the description covers all resources, their parameters, pricing, and side effects (no authentication, link expiry). It is complete enough for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds critical context: batch limits, download-media limit ≤50, default WOEID, and the fact that resultsLimit is mandatory and billed per result. This is far beyond the schema's basic type constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear verb ('Read') and lists specific resources (tweet, user, batch, trends, etc.), immediately distinguishing it from sibling tools like x_write or x_compose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'Guidance:' section explicitly maps each resource to its parameters, constraints (e.g., batch ≤100, followers-you-know requires resultsLimit), and pricing model. This tells the agent exactly when to use each variant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_searchAInspect
Search X/Twitter tweets with the full operator set — keyword, exact phrase, from-user, language, date range, media type, minimum likes/retweets, verified-only — or search user profiles by keyword. Billed per tweet returned against your resultsLimit cap. Built for tracking what people say about a topic, brand, or ticker in real time.
Guidance: type=search-tweets (default): q required, resultsLimit MANDATORY (billed per tweet returned). Supports the full filter set: fromUser, language, sinceDate/untilDate, mediaType, minFaves, verifiedOnly, exactPhrase, excludeWords, advancedQuery, and more. type=search-users: q required; returns one results page per call — follow report.next_cursor for the next page (each page is a separate paid call).
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query (X operator syntax supported for tweets). | |
| type | No | Search tweets (default) or users. | |
| cursor | No | search-users: pagination cursor from a previous call's report.next_cursor. | |
| fromUser | No | ||
| language | No | ||
| minFaves | No | ||
| mediaType | No | ||
| sinceDate | No | YYYY-MM-DD | |
| untilDate | No | YYYY-MM-DD | |
| minReplies | No | ||
| exactPhrase | No | ||
| minRetweets | No | ||
| excludeWords | No | ||
| resultsLimit | No | search-tweets: MANDATORY max tweets returned, billed per tweet. | |
| verifiedOnly | No | ||
| advancedQuery | No | Raw X search operator string appended to q. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses billing per tweet, mandatory resultsLimit, and pagination for users. Does not mention any destructive behavior, but search is inherently non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with a guidance section and front-loaded purpose. While it could be slightly more concise, every part adds value and aids understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 16 parameters, no output schema, and no annotations, the description provides a comprehensive overview of search functionality, including pagination for users. Lacks details on return format, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 44%, but the description adds meaning for many parameters beyond the schema, such as explaining operator syntax, billing, and pagination. Compensates well for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches X/Twitter tweets or user profiles with a full operator set. It distinguishes from siblings like x_timeline and x_monitor by focusing on search with advanced filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance on when to use search-tweets vs search-users, mandatory resultsLimit for tweets, and billing per tweet. However, it does not mention when not to use this tool or list specific alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_timelineAInspect
Fetch a user's X/Twitter timeline — their tweets, replies, likes, media posts, or mentions — plus follower and following lists, and per-tweet engagement lists (who replied, quoted, retweeted, or favorited). Billed per item returned. The building block for monitoring what an account posts or ranking accounts by activity.
Guidance: kind selects the timeline: user-tweets|user-replies|user-likes|user-media|user-mentions|followers|following|verified-followers (id = user) or tweet-replies|tweet-quotes|tweet-thread|tweet-favoriters|tweet-retweeters (id = tweet). resultsLimit is MANDATORY — billed per item returned. Search-operator filters (fromUser, language, mediaType, minFaves, …) apply to tweet timelines.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | User ID/username or tweet ID (depends on kind). | |
| kind | Yes | Which timeline to fetch. | |
| language | No | ||
| minFaves | No | ||
| mediaType | No | ||
| resultsLimit | Yes | MANDATORY: max items returned, billed per item. | |
| verifiedOnly | No | ||
| includeReplies | No | ||
| includeParentTweet | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must disclose behavioral traits. It states that results are billed per item and that resultsLimit is mandatory, implying a cost-aware read operation. It does not mention idempotency, rate limits, or authentication requirements. Since it is a read tool, no destructive behavior is expected, but more context would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with two paragraphs: the first states the main purpose and scope, the second provides usage guidance. Sentences are concise and avoid redundancy. It is slightly long but every sentence adds value, and the critical information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters and no output schema, the description covers the core usage: timeline types, mandatory resultsLimit, and optional filters. It explains what is returned (tweets, lists, engagement data) but does not detail the response format or pagination. For a complex tool, this is mostly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 33%, so the description adds significant value. It lists all 'kind' enum values, explains their mapping to user/tweet IDs, and describes optional filters as 'search-operator filters.' The 'resultsLimit' parameter is reemphasized as mandatory and billed. This goes beyond the schema, though some parameters (e.g., 'language') are not detailed individually.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches a user's X/Twitter timeline and enumerates specific sub-timelines (tweets, replies, likes, media, mentions), follower/following lists, and engagement lists. The verb 'fetch' and resource 'timeline' are specific, and the scope is well-defined, distinguishing it from sibling tools that likely handle other X operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on how to use the 'kind' parameter with all enum values and emphasizes that 'resultsLimit' is mandatory and billed per item. It also mentions search-operator filters. However, it does not explicitly state when to use this tool vs. alternatives (e.g., x_search) or when not to use it, which slightly reduces clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_writeAInspect
Act on X/Twitter through an account you connect: post a tweet, reply, like, retweet, follow or unfollow, send a DM, delete a tweet, remove a follower, or upload media. Ownership is checked server-side — an agent can only write as a handle its own wallet connected.
Guidance: PREREQUISITE: connect an X account first — POST /api/x-accounts/start (free, SIWX) with {username} only; it returns a one-time connect_url the USER opens in their own browser to sign in there. Never ask the user for their X password, email, or 2FA secret. Poll GET /api/x-accounts until the handle shows linked, then reference it in account. Actions: post (text) | reply (text + reply_to_tweet_id) | like|unlike|retweet|unretweet|delete_tweet (target_tweet_id) | follow|unfollow (target_user_id — the NUMERIC user id, get it from x_read get-user) | remove_follower (target_user_id of the follower) | send_dm (target_user_id + text) | upload_media (media_url → returns media_id). You can only write as a handle THIS wallet connected (checked server-side; the input account is not trusted). Payment settles before the action runs and is non-refundable; a write may return status=pending_confirmation with an actionId to poll — do NOT resend. Idempotency-Key header is required so a retry replays the original result instead of acting twice.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | post|reply|send_dm: the message body. | |
| action | Yes | Which write to perform. | |
| account | Yes | A connected X handle owned by this wallet (no @). | |
| media_ids | No | send_dm: optional uploaded media ids to attach. | |
| media_url | No | upload_media: public URL of the file to upload; returns a media_id. | |
| community_id | No | post: optional community to post into. | |
| is_note_tweet | No | post: long-form note tweet. | |
| target_user_id | No | follow|unfollow|send_dm|remove_follower: the numeric X user id of the target (not the @handle). Get it from x_read get-user. | |
| target_tweet_id | No | like|unlike|retweet|unretweet|delete_tweet: the target tweet ID. | |
| reply_to_tweet_id | No | reply: the tweet being replied to. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does a stellar job: it discloses server-side ownership checks, non-refundable payment before execution, the possibility of pending_confirmation with actionId, and the mandatory Idempotency-Key for safe retries. This is far beyond basic mutation disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but exceptionally well-structured: a one-sentence overview, a clear 'Guidance:' section, and a compact action-to-parameter map. Every sentence carries operational weight, and the formatting makes dense information scannable, though it is not 'short'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (12 actions, 10 params) and no output schema, the description covers prerequisites, auth flow, payment behavior, pending-confirmation handling, idempotency, and parameter relationships. It stops short of describing a full success response for every action, but the essential runtime context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already has 100% parameter coverage, but the description adds valuable semantics: it maps each action to its required parameters, clarifies that target_user_id is the numeric ID (not the @handle) and how to obtain it, and notes the 'no @' convention for account. This elevates it beyond a simple schema repetition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description immediately states the tool's purpose with a specific verb and resource: 'Act on X/Twitter through an account you connect' and lists all concrete actions (post, reply, like, retweet, follow, etc.). This clearly distinguishes it from read-only siblings like x_read and x_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit prerequisites (connect an X account first), references x_read for obtaining numeric user IDs, and warns against asking for sensitive credentials. It explains when to poll for pending_confirmation and the requirement for an Idempotency-Key, giving clear practical guidance, though it does not explicitly contrast with x_compose or other write siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenanceLive X/Twitter search and AI trend digests without an API key, charging per call in USDC via x402. Enables real-time tweet search and AI summaries inside MCP clients.MIT
- AlicenseBqualityAmaintenanceEnables AI agents to search, read user profiles, timelines, media, follow threads, track trends, and manage accounts on X/Twitter via GraphQL, without browser automation or paid API keys.1009MIT
- AlicenseAqualityDmaintenanceEnables interaction with Twitter/X data to retrieve user profiles, search tweets, and track engagement metrics. It provides advanced capabilities for monitoring follower events, KOL activity, and accessing deleted tweets.121,444MIT
- AlicenseAqualityBmaintenancePay-per-use clean web reader for AI agents. URL in, markdown plus metadata out, in milliseconds. Settled per-call in USDC over x402 — no signup, no API keys.21912MIT