
TweetBinder by Audiense MCP Server
TweetBinder MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your TweetBinder by Audiense account
What is TweetBinder by Audiense MCP Server?
TweetBinder MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your TweetBinder by Audiense account, providing access to Twitter analytics data.
How to use TweetBinder?
To use TweetBinder, install it via Smithery or manually configure it with your Claude Desktop App and TweetBinder API credentials. You can create reports, analyze Twitter data, and retrieve detailed statistics.
Key features of TweetBinder?
- Access TweetBinder analytics directly from Claude
- Analyze hashtags, users, and conversations on Twitter/X
- Get engagement metrics, sentiment analysis, and more
- Create Twitter reports with custom search queries
- Check report generation status and retrieve detailed report statistics
- Manage your TweetBinder reports and account balance
Use cases of TweetBinder?
- Analyzing social media campaigns and their effectiveness.
- Monitoring brand mentions and sentiment on Twitter.
- Generating detailed reports for marketing strategies.
FAQ from TweetBinder?
- Can I use TweetBinder without a TweetBinder account?
No, you need a valid TweetBinder account with API credentials to use this service.
- Is there a limit to the number of reports I can create?
Yes, your account has a quota that limits the number of reports you can generate.
- How do I troubleshoot issues with the server?
Check the Claude Desktop logs and ensure your environment variables are set correctly.
TweetBinder by Audiense MCP Server
This is a Model Context Protocol (MCP) server for the TweetBinder by Audiense API, allowing Claude and other MCP-compatible AI models to access TweetBinder by Audiense analytics data.
Features
- Access TweetBinder analytics directly from Claude
- Analyze hashtags, users, and conversations on Twitter/X
- Get engagement metrics, sentiment analysis, and more
- Create Twitter reports with custom search queries
- Check report generation status
- Retrieve detailed report statistics
- Get account balance and quota information
- Count tweets matching specific queries
- List and manage your TweetBinder reports
- Access tweet content and user information from reports
Installation
Installing via Smithery
To install mcp-tweetbinder for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @AudienseCo/mcp-tweetbinder --client claude
Manual Configuration
Prerequisites
- Node.js (v18 or higher)
- Claude Desktop App
- TweetBinder by Audiense account with API credentials
- Clone this repository
- Install dependencies:
npm install
- Build the project:
npm run build
You need a valid TweetBinder API Bearer Token to use this service. Set it in your environment:
export TWEETBINDER_API_TOKEN='your-bearer-token-here'
Usage with Claude Desktop
-
Edit your Claude Desktop configuration file:
- MacOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Windows:
code %AppData%\Claude\claude_desktop_config.json
- MacOS:
-
Add this configuration:
"mcpServers": {
"tweetbinder": {
"command": "node",
"args": [
"/absolute/path/to/build/index.js"
],
"env": {
"TWEETBINDER_API_TOKEN": "your-bearer-token-here"
}
}
}
- Restart Claude Desktop
Available Tools
create-twitter-report
Creates a new report that analyzes Twitter/X data based on a search query.
-
Parameters:
query
(string): The search query for Twitter data. Can include operators like AND, OR, hashtags, mentions, etc.limit
(number, optional): Maximum number of tweets to retrieve (up to 50,000).startDate
(number, optional): Start date as Unix timestamp (seconds since epoch).endDate
(number, optional): End date as Unix timestamp (seconds since epoch).reportType
(enum, optional): Type of report to create: "7-day" for last week or "historical" for all time. Default: "7-day".
-
Response:
- Report ID and status information for the created report.
- Instructions for checking report status and retrieving statistics.
create-twitter-count
Creates a new report that counts tweets matching a search query.
-
Parameters:
query
(string): The search query for Twitter data. Can include operators like AND, OR, hashtags, mentions, etc.reportType
(enum, optional): Type of report to create: "7-day" for last week or "historical" for all time. Default: "7-day".
-
Response:
- Raw JSON response containing:
status
: The status of the report creationresourceId
: The ID of the created reporterror
/message
: Any error or status messages
- Raw JSON response containing:
list-reports
Retrieves a list of all your TweetBinder reports with sorting capabilities.
-
Parameters:
order
(string, optional): Sorting parameter in the format 'field|direction'. Example: 'createdAt|-1' for newest first, 'createdAt|1' for oldest first.
-
Response:
- Raw JSON response containing an array of reports with details for each:
id
: Report IDname
: Report namestatus
: Current status (Generated, Waiting, etc.)createdAt
: Creation timestampupdatedAt
: Last update timestamptype
: Report typesource
: Report sourcequery
: Original search query
- Raw JSON response containing an array of reports with details for each:
get-report-content
Retrieves the actual tweets or users from a generated report with advanced filtering and pagination.
-
Parameters:
reportId
(string): The ID of the report to retrieve content for.contentType
(enum): The type of content to retrieve: 'tweets' for tweet data or 'users' for user data.page
(number, optional): Page number for pagination. Starts at 1.perPage
(number, optional): Number of items per page.sortBy
(string, optional): Field to sort by (e.g., 'createdAt', 'counts.favorites').sortDirection
(enum, optional): Sort direction: '1' for ascending, '-1' for descending.filter
(string, optional): JSON string with filter criteria. Example: '{"counts.favorites":{"$gt":10}}'
-
Response:
- Raw JSON response containing:
items
: Array of tweet or user objectspagination
: Information about total items and pages
When requesting tweets, detailed information is returned, including:
- Tweet ID, text, creation date, language
- Author details (name, username, followers, etc.)
- Engagement metrics (retweets, likes, replies, etc.)
- Media content (hashtags, images, links)
- Sentiment analysis
When requesting users, information includes:
- User ID, name, username
- Profile picture URL
- Follower and following counts
- Verification status
- User value and other metrics
- Raw JSON response containing:
Note: Report must be in 'Generated' status to access content. Use the get-report-status
tool to check if a report is ready.
Query Syntax Examples:
#apple
: Tweets containing the hashtag #appleapple lang:en
: English tweets containing "apple"(#apple OR #iphone) -#android
: Tweets with #apple or #iphone but not #android@apple
: Tweets mentioning @applefrom:apple
: Tweets posted by user "apple"
Note: After creating the count report, use the get-report-status
tool to check when it's ready, then use get-report-stats
to get the actual count.
get-report-status
Checks the current status of a TweetBinder report.
-
Parameters:
reportId
(string): The ID of the report to check.
-
Response:
- The current status of the report, which can be one of:
- Generated: The report is complete and ready to use.
- Waiting: The report is still being generated or waiting for tweets to be collected.
- Outdated: The report is being updated with new data and will be available soon.
- Deleted: The report has been deleted and is no longer available.
- Archived: The report has been archived and may be deleted soon.
- An explanation of what the status means and what actions are available.
- The current status of the report, which can be one of:
Note: You must first create a report using the create-twitter-report
or create-twitter-count
tool to get a report ID.
get-report-stats
Retrieves comprehensive statistics and analytics for a TweetBinder report.
-
Parameters:
reportId
(string): The ID of the report to retrieve statistics for.
-
Response:
- A formatted summary of the report statistics including:
- Overview: Total tweets, date range, contributors, engagement, media, and links.
- Engagement Metrics: Potential reach, impressions, retweets, and likes.
- Sentiment Analysis: Overall sentiment score and interpretation.
- Top Contributors: Most active users and their tweet counts.
- Popular Content: Most retweeted posts.
- Frequently Used Hashtags: Common hashtags used in the conversation.
- A formatted summary of the report statistics including:
Note: The report must have "Generated" status before statistics can be retrieved. Use the get-report-status
tool to check if a report is ready.
get-account-balances
Retrieves information about your account's credit balance, usage, and remaining quota.
-
Parameters:
- None
-
Returns:
- Raw JSON response containing:
total
: Total credits availableused
: Credits usedavailable
: Credits currently availablediscount
: Any applicable discountremainingReports
: Number of reports remainingquota
: Quota information including:startedAt
: Quota period start datefinishedAt
: Quota period end dateremaining
: Remaining quotaused
: Used quotatotal
: Total quota
- Any error or status messages
- Raw JSON response containing:
Troubleshooting
Tools Not Appearing in Claude
- Check Claude Desktop logs:
tail -f ~/Library/Logs/Claude/mcp*.log
- Verify environment variables are set correctly.
- Ensure the absolute path to index.js is correct.
Authentication Issues
- Double-check credentials.
- Ensure the refresh token is still valid.
- Verify that the required API scopes are enabled and that you have enough credits.
Viewing Logs
To check server logs:
For MacOS/Linux:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
For Windows:
Get-Content -Path "$env:AppData\Claude\Logs\mcp*.log" -Wait -Tail 20
Security Considerations
- Keep API credentials secure – never expose them in public repositories.
- Use environment variables to manage sensitive data.
📄 License
This project is licensed under the Apache 2.0 License. See the LICENSE file for more details.