Skip to main content
Glama
Xquik-dev

X Twitter Scraper

by Xquik-dev

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 included usage or requires account access.

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 118 MCP operations.

  • Included usage and does not require authentication.

  • Returns the result of your filter function, such as an 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, free, parameters, and responseShape fields.

Input format

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

Examples

Find all included-usage 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 118 MCP operations.

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, metered operations, 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.

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

  • Read operations return JSON objects with the requested data.

  • Mutating operations require prior user confirmation and return { success: true } or { success: true, warning: '...' }.

  • Pagination responses include has_next_page and next_cursor. Pass cursor as a query param for the next page.

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

Error handling

  • 402: Account access or usage balance requires dashboard attention. Explain the account state and direct the user to the dashboard before retrying.

  • 429: Rate limited. Retry after backoff.

  • 404: Resource not found, such as a missing user, tweet, or monitor.

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

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