X Intelligence MCP
Pricing
Pay per usage
X Intelligence MCP
Real-time Twitter/X intelligence with AI analysis. Search tweets, monitor brands, detect buying intent, compare competitors. Uses Apify scrapers + OpenAI. TOS-compliant alternative to xAI x_search.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
CQ
Maintained by CommunityActor stats
1
Bookmarked
1
Total users
0
Monthly active users
6 days ago
Last modified
Categories
Share
X Intelligence MCP Server
Twitter/X content discovery via public search sources, exposed as MCP tools for AI agents. Free demo tool for exploring social media mentions, brand sentiment, and buying-intent signals.
Important Limitations
This is a free demo tool with significant limitations.
| Feature | Status |
|---|---|
| Real-time data | No - uses public/indexed sources (may be hours/days old) |
| Engagement metrics | No - likes, retweets, replies are returned as 0 from public sources |
| Full tweet text | Partial - RSS titles and search-engine snippets only |
| Rate limits | Subject to public source rate limits (Nitter / DuckDuckGo) |
| Reliability | Best-effort, may return no results or fall back to sample data |
For production use cases requiring real-time Twitter data with engagement metrics, you need:
- Twitter API Pro - developer.twitter.com
- Or a licensed data provider (Brandwatch, Sprinklr, etc.)
How It Works
The server collects tweet-like content from public sources, in this order:
- Nitter RSS feeds, then Nitter HTML (open-source Twitter frontends; many instances are offline)
- Twitter syndication API (limited availability)
- DuckDuckGo
site:twitter.com/site:x.comsearch snippets - Apify Twitter scraper fallback (
apidojo/twitter-scraper-lite) — only if an Apify token is available and the public sources return nothing - Sample/demo data — if every source above fails, a small set of clearly illustrative placeholder tweets is returned so the tool still responds
Optional OpenAI analysis then runs sentiment/insight extraction on the collected items.
Tools are exposed via Apify's MCP infrastructure (mcp.apify.com); each tool call runs the actor
and returns its result.
Input Parameters
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
apifyToken | string (secret) | See note | — | Apify API token used for the Apify-scraper fallback path. On the Apify platform the platform token (APIFY_TOKEN) is used automatically. Required for every tool except get_stats (the run stops with a graceful missing_apify_token error otherwise). No X/Twitter login is required. |
openaiApiKey | string (secret) | No | — | OpenAI API key for AI sentiment/insight analysis. Without it you get raw results only. Billed to your key. |
openaiModel | string (enum) | No | gpt-4o-mini | Model for analysis. One of gpt-4o-mini, gpt-4o, gpt-4-turbo, gpt-3.5-turbo. |
scraperTimeout | integer | No | 120 | Max seconds to wait for the Apify scraper fallback (30–300). |
toolCall | object | No | x_search demo call | The MCP tool to execute: { "name": <tool>, "arguments": { ... } }. Leave empty to only return server info. |
Tools
Six tools are exposed. Each toolCall.arguments object accepts the parameters below.
x_search
Search Twitter/X content matching a query.
query(string, required)max_tweets(integer, default20)analyze(boolean, defaulttrue) — runs OpenAI sentiment analysis when an OpenAI key is set; otherwise the analysis field reports that no key is configured.
{"name": "x_search","arguments": { "query": "your search term", "max_tweets": 10, "analyze": false }}
x_monitor
Collect brand mentions and run AI sentiment/perception analysis.
brand(string, required)max_tweets(integer, default50)sentiment_filter(string, default"any") — accepted for forward compatibility but not currently applied to filter results.
{"name": "x_monitor","arguments": { "brand": "Brand Name", "max_tweets": 20 }}
x_intent
Find buying-intent signals (recommendations sought, frustration, comparisons, switching).
product_category(string, required)intent_types(array of strings, default["seeking_recommendation", "frustrated", "comparing", "switching"])max_tweets(integer, default30)
{"name": "x_intent","arguments": { "product_category": "CRM software", "max_tweets": 15 }}
x_compete
Compare sentiment and share of voice across 2–5 brands.
brands(array of strings, required, 2–5 entries)tweets_per_brand(integer, default30)
{"name": "x_compete","arguments": { "brands": ["Brand A", "Brand B"], "tweets_per_brand": 10 }}
x_profile
Return recent content for a specific Twitter/X user.
username(string, required, without@)include_tweets(boolean, defaulttrue)max_tweets(integer, default20)
Note: detailed profile metadata (bio, follower/following counts, verified status) is only populated when the Apify scraper path runs; via the free public path those fields are usually empty and the tool returns recent tweets/content only.
{"name": "x_profile","arguments": { "username": "username", "max_tweets": 10 }}
get_stats
Return server version, usage counters, and whether AI analysis is enabled. Takes no arguments and requires no Apify token.
Setup
1. Optional: OpenAI Key for AI Analysis
Without an OpenAI key you get raw collected results only. With a key you get sentiment analysis and insights. Get a key at platform.openai.com/api-keys.
2. Connect to an MCP Client
Claude Desktop (claude_desktop_config.json):
{"mcpServers": {"x-intelligence": {"url": "https://mcp.apify.com?actors=YOUR_USERNAME/x-intelligence-mcp"}}}
3. Use It
Ask Claude: "Search Twitter for mentions of Acme Corp"
Example Output
Results are pushed to the run's dataset. A tool_result record looks like:
{"record_type": "tool_result","tool": "x_search","success": true,"tweet_count": 5,"query": "Acme Corp","tweets": [{"text": "Just tried Acme Corp's new product...","author": "someuser","likes": 0,"retweets": 0,"url": "https://twitter.com/someuser/status/123"}],"result": { "...": "full tool response, incl. AI analysis when enabled" }}
The run also pushes an mcp_server_info record (server name, version, tool definitions,
capabilities) and a final session_stats record. Engagement metrics (likes, retweets) are not
available through the public sources and are returned as 0.
Pricing
- Running the actor over public sources is effectively free (Apify platform compute usage applies).
- Optional OpenAI analysis is billed to your own OpenAI API key (a few cents per analysis).
- The Apify Twitter-scraper fallback (
apidojo/twitter-scraper-lite), if triggered, incurs that third-party actor's own usage costs.
Costs above are indicative; check current provider pricing.
Limitations
- Not real-time. Data comes from public/indexed sources and can be hours to days old.
- No engagement metrics. Likes, retweets, and replies from public sources are
0. - Sample-data fallback. If Nitter, syndication, DuckDuckGo, and the Apify scraper all fail, the tools return a small set of clearly illustrative placeholder tweets — not real data.
- Apify token required for most tools. Every tool except
get_statsneeds an Apify token; on the Apify platform this is provided automatically, but other environments must supplyapifyTokenor the run stops with a gracefulmissing_apify_tokenerror. (No X/Twitter credentials are needed — only public sources are used.) - AI analysis needs an OpenAI key. Without
openaiApiKey, analysis fields report that no key is configured and you receive raw results only. - Rate limits and availability. Public sources (Nitter instances, DuckDuckGo) are frequently offline or rate-limited; results are best-effort and may be empty.
- Limited profile data.
x_profilebio/follower fields are only populated on the Apify-scraper path and are usually empty via the free public path. sentiment_filteris not applied.x_monitoraccepts the argument but does not currently filter results by it.- Standby / MCP mode. The actor is invoked per tool call through Apify's MCP bridge; it is not a persistent long-running server.
Support
This is a free demo tool provided as-is. For production needs, consider official Twitter/X API access or a licensed data provider.