https://github.com/AudienseCo/mcp-audiense-insights
Audiense Insights MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your Audiense Insights account
https://github.com/AudienseCo/mcp-audiense-insights
mcp modelcontextprotocol
Last synced: about 2 months ago
JSON representation
Audiense Insights MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your Audiense Insights account
- Host: GitHub
- URL: https://github.com/AudienseCo/mcp-audiense-insights
- Owner: AudienseCo
- License: apache-2.0
- Created: 2025-01-31T16:14:54.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-03-19T13:17:46.000Z (about 2 months ago)
- Last Synced: 2025-03-19T14:26:30.809Z (about 2 months ago)
- Topics: mcp, modelcontextprotocol
- Language: TypeScript
- Homepage: https://audiense.com
- Size: 95.7 KB
- Stars: 3
- Watchers: 10
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- Awesome-MCP-Servers-directory - Audiense Insights - Marketing insights and audience analysis from Audiense reports, covering demographic, cultural, influencer, and content engagement analysis (Marketing)
- awesome-mcp-servers - Audiense Insights - Audiense Insights MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your Audiense Insights account (Table of Contents / Social Media)
- awesome-mcp-servers - Audiense Insights - Audiense Insights MCP Server is a server based on the Model Context Protocol (MCP) that allows Claude and other MCP-compatible clients to interact with your Audiense Insights account (Table of Contents / Social Media)
- awesome-mcp-servers - Audiense Insights - Marketing insights and audience analysis from [Audiense](https://www.audiense.com/products/audiense-insights) reports, covering demographic, cultural, influencer, and content engagement analysis. (Official Servers)
README
# π Audiense Insights MCP Server
[](https://smithery.ai/server/@AudienseCo/mcp-audiense-insights)This server, based on the [Model Context Protocol (MCP)](https://github.com/modelcontextprotocol), allows **Claude** or any other MCP-compatible client to interact with your [Audiense Insights](https://www.audiense.com/) account. It extracts **marketing insights and audience analysis** from Audiense reports, covering **demographic, cultural, influencer, and content engagement analysis**.
---
## π Prerequisites
Before using this server, ensure you have:
- **Node.js** (v18 or higher)
- **Claude Desktop App**
- **Audiense Insights Account** with API credentials
- **X/Twitter API Bearer Token** _(optional, for enriched influencer data)_---
## Installing via Smithery
To install Audiense Insights Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@AudienseCo/mcp-audiense-insights):
```bash
npx -y @smithery/cli@latest install @AudienseCo/mcp-audiense-insights --client claude
```## βοΈ Configuring Claude Desktop
1. Open the configuration file for Claude Desktop:
- **MacOS:**
```bash
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
```
- **Windows:**
```bash
code %AppData%\Claude\claude_desktop_config.json
```2. Add or update the following configuration:
```json
"mcpServers": {
"audiense-insights": {
"command": "/opt/homebrew/bin/node",
"args": [
"/ABSOLUTE/PATH/TO/YOUR/build/index.js"
],
"env": {
"AUDIENSE_CLIENT_ID": "your_client_id_here",
"AUDIENSE_CLIENT_SECRET": "your_client_secret_here",
"TWITTER_BEARER_TOKEN": "your_token_here"
}
}
}3. Save the file and restart Claude Desktop.
## π οΈ Available Tools
### π `get-reports`
**Description**: Retrieves the list of **Audiense insights reports** owned by the authenticated user.- **Parameters**: _None_
- **Response**:
- List of reports in JSON format.---
### π `get-report-info`
**Description**: Fetches detailed information about a **specific intelligence report**, including:
- Status
- Segmentation type
- Audience size
- Segments
- Access links- **Parameters**:
- `report_id` _(string)_: The ID of the intelligence report.- **Response**:
- Full report details in JSON format.
- If the report is still processing, returns a message indicating the pending status.---
### π `get-audience-insights`
**Description**: Retrieves **aggregated insights** for a given **audience**, including:
- **Demographics**: Gender, age, country.
- **Behavioral traits**: Active hours, platform usage.
- **Psychographics**: Personality traits, interests.
- **Socioeconomic factors**: Income, education status.- **Parameters**:
- `audience_insights_id` _(string)_: The ID of the audience insights.
- `insights` _(array of strings, optional)_: List of specific insight names to filter.- **Response**:
- Insights formatted as a structured text list.---
### π `get-baselines`
**Description**: Retrieves available **baseline audiences**, optionally filtered by **country**.- **Parameters**:
- `country` _(string, optional)_: ISO country code to filter by.- **Response**:
- List of baseline audiences in JSON format.---
### π `get-categories`
**Description**: Retrieves the list of **available affinity categories** that can be used in influencer comparisons.- **Parameters**: _None_
- **Response**:
- List of categories in JSON format.---
### π `compare-audience-influencers`
**Description**: Compares **influencers** of a given audience with a **baseline audience**. The baseline is determined as follows:
- If a **single country** represents more than 50% of the audience, that country is used as the baseline.
- Otherwise, the **global baseline** is used.
- If a **specific segment** is selected, the full audience is used as the baseline.Each influencer comparison includes:
- **Affinity (%)** β How well the influencer aligns with the audience.
- **Baseline Affinity (%)** β The influencerβs affinity within the baseline audience.
- **Uniqueness Score** β How distinct the influencer is compared to the baseline.- **Parameters**:
- `audience_influencers_id` _(string)_: ID of the audience influencers.
- `baseline_audience_influencers_id` _(string)_: ID of the baseline audience influencers.
- `cursor` _(number, optional)_: Pagination cursor.
- `count` _(number, optional)_: Number of items per page (default: 200).
- `bio_keyword` _(string, optional)_: Filter influencers by **bio keyword**.
- `entity_type` _(enum: `person` | `brand`, optional)_: Filter by entity type.
- `followers_min` _(number, optional)_: Minimum number of followers.
- `followers_max` _(number, optional)_: Maximum number of followers.
- `categories` _(array of strings, optional)_: Filter influencers by **categories**.
- `countries` _(array of strings, optional)_: Filter influencers by **country ISO codes**.- **Response**:
- List of influencers with **affinity scores, baseline comparison, and uniqueness scores** in JSON format.---
### π `get-audience-content`
**Description**: Retrieves **audience content engagement details**, including:
- **Liked Content**: Most popular posts, domains, emojis, hashtags, links, media, and a word cloud.
- **Shared Content**: Most shared content categorized similarly.
- **Influential Content**: Content from influential accounts.Each category contains:
- `popularPost`: Most engaged posts.
- `topDomains`: Most mentioned domains.
- `topEmojis`: Most used emojis.
- `topHashtags`: Most used hashtags.
- `topLinks`: Most shared links.
- `topMedia`: Shared media.
- `wordcloud`: Most frequently used words.- **Parameters**:
- `audience_content_id` _(string)_: The ID of the audience content.- **Response**:
- Content engagement data in JSON format.---
### π `report-summary`
**Description**: Generates a **comprehensive summary** of an Audiense report, including:
- Report metadata (title, segmentation type)
- Full audience size
- Detailed segment information
- **Top insights** for each segment (bio keywords, demographics, interests)
- **Top influencers** for each segment with comparison metrics- **Parameters**:
- `report_id` _(string)_: The ID of the intelligence report to summarize.- **Response**:
- Complete report summary in JSON format with structured data for each segment
- For pending reports: Status message indicating the report is still processing
- For reports without segments: Message indicating there are no segments to analyze## π‘ Predefined Prompts
This server includes a preconfigured prompts
- `audiense-demo`: Helps analyze Audiense reports interactively.
- `segment-matching`: A prompt to match and compare audience segments across Audiense reports, identifying similarities, unique traits, and key insights based on demographics, interests, influencers, and engagement patterns.**Usage:**
- Accepts a reportName argument to find the most relevant report.
- If an ID is provided, it searches by report ID instead.Use case: Structured guidance for audience analysis.
## π οΈ Troubleshooting
### Tools Not Appearing in Claude
1. Check Claude Desktop logs:```
tail -f ~/Library/Logs/Claude/mcp*.log
```
2. Verify environment variables are set correctly.
3. Ensure the absolute path to index.js is correct.### Authentication Issues
- Double-check OAuth credentials.
- Ensure the refresh token is still valid.
- Verify that the required API scopes are enabled.## π 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.