Skip to main content
Glama
Xquik-dev

X Twitter Scraper

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
exploreA

Search and browse the Xquik X (Twitter) API specification to discover endpoints before making live API calls with the 'xquik' tool.

When to use

  • Use 'explore' FIRST to find the right endpoint path, parameters, and response shape before calling 'xquik'.

  • Use when the user asks what capabilities are available or how to accomplish a task on X/Twitter.

  • Use to check whether an endpoint is free or requires a subscription.

When NOT to use

  • Do NOT use 'explore' to fetch live data from X - use 'xquik' instead.

  • Do NOT use if you already know the endpoint path and parameters.

Behavior

  • Read-only, idempotent. No network calls - runs against an in-memory catalog of 100+ endpoints.

  • Always free, no authentication or credits required.

  • Returns the result of your filter function (e.g., empty array if no endpoints match).

  • Returns a validation error if the request function is invalid.

  • Timeout: 60 seconds.

  • Each EndpointInfo contains: method, path, summary, category (account | composition | credits | extraction | media | monitoring | support | twitter | x-accounts | x-write), free (boolean), parameters (array), and responseShape (string).

Input format

Provide a bounded request function. The server exposes spec.endpoints (EndpointInfo[]). Filter, search, or return them.

Examples

Find all free endpoints: async () => spec.endpoints.filter(e => e.free) Find by category: async () => spec.endpoints.filter(e => e.category === 'composition') Search by keyword: async () => spec.endpoints.filter(e => e.summary.toLowerCase().includes('tweet')) Get full details: async () => spec.endpoints.find(e => e.path === '/api/v1/x/tweets/search')

xquikA

Send confirmed Xquik API requests across 100+ REST endpoints.

When to use

  • Use after calling 'explore' to discover the endpoint path and parameters.

  • Use for live X/Twitter operations such as tweet search, user lookup, giveaway draws, extraction jobs, composition, private reads, persistent monitors, webhooks, and confirmation-gated writes.

  • Confirm private reads, persistent resources, billing flows, and writes before using endpoints that require user approval.

When NOT to use

  • Do NOT use to discover endpoints - use 'explore' first.

  • Do NOT pass API keys or auth headers - authentication is injected automatically.

Behavior

  • Processes the provided request function with xquik.request(path, options?) and spec.endpoints available.

  • No filesystem or arbitrary network access - only xquik.request() is available. Console calls are silently ignored.

  • Timeout: 60 seconds per invocation, 60 seconds per individual API request.

  • Read operations (GET) return JSON objects with the requested data. Mutating operations (POST/PATCH/DELETE) require prior user confirmation and return { success: true } or { success: true, warning: '...' }.

  • Pagination: responses include has_next_page (boolean) and next_cursor (string). Pass cursor as a query param for the next page.

  • Some operations modify X or Xquik resources. Show the exact payload, target, and cost before calling them.

Error handling

  • 402: Subscription required or insufficient credits. Explain the billing issue and ask before any checkout or top-up action.

  • 429: Rate limited. Retry after backoff.

  • 404: Resource not found (user, tweet, or monitor does not exist).

  • 200 with warning field: Probable success - do NOT retry.

Costs

  • Free: compose, styles, drafts, radar, account info, support, credit balance, and webhook management.

  • 1 credit/read ($0.00015): tweet search, timeline, bookmarks, favoriters.

  • 10 credits/write ($0.0015): tweet, like, retweet, follow, DM.

Input format

Provide a bounded request function using xquik.request(path, { method?, body?, query? }). Auth is automatic.

Examples

Search tweets: async () => xquik.request('/api/v1/x/tweets/search', { query: { q: 'AI agents', limit: '50' } }) Get user: async () => xquik.request('/api/v1/x/users/elonmusk') After explicit user confirmation, post tweet: async () => xquik.request('/api/v1/x/tweets', { method: 'POST', body: { account: '<confirmed_account>', text: '<confirmed_text>' } })

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Xquik-dev/x-twitter-scraper'

If you have feedback or need assistance with the MCP directory API, please join our Discord server