Audiense Insights

by audienseco

7 stars
Not rated
GitHub

About

Marketing insights and audience analysis from [Audiense](https://www.audiense.com/products/audiense-insights) reports, covering demographic, cultural, influencer, and content engagement analysis.

Details

Author
audienseco
Repository
AudienseCo/mcp-audiense-insights
GitHub stars
7
License
Apache License 2.0
Categories
Productivity, Marketing, Other, Developer Tools, Design, AI, Community, Media, Search, Knowledge Base
Tags
#data-science, #analytics, #integration, #social-media, #research

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Audiense Insights
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 mcp-audiense-insights
    Environment
    • AUDIENSE_CLIENT_ID your_client_id_here
    • TWITTER_BEARER_TOKEN your_token_here
    • AUDIENSE_CLIENT_SECRET your_client_secret_here

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. Open the configuration file for Claude Desktop:

- MacOS:

     code ~/Library/Application\ Support/Claude/claude_desktop_config.json

- Windows:
     code %AppData%\Claude\claude_desktop_config.json

2. Add or update the following configuration:

```json
"mcpServers": {
"audiense-insights": {
"command": "npx",
"args": [
"-y",
"mcp-audiense-insights"
],
"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.

- Double-check OAuth credentials.
- Ensure the refresh token is still valid.
- Verify that the required API scopes are enabled.

get-reports

Retrieves the list of Audiense insights reports owned by the authenticated user. Parameters: None.

get-report-info

Fetches detailed information about a specific intelligence report. Parameters: report_id (string) - The ID of the intelligence report.

get-audience-insights

Retrieves aggregated insights for a given audience, including demographics, behavioral traits, psychographics, and socioeconomic factors. Parameters: audience_insights_id (string) - The ID of the audience insights; insights (array of strings, optional) - List of specific insight names to filter.

get-baselines

Retrieves available baseline audiences, optionally filtered by country. Parameters: country (string, optional) - ISO country code to filter by.

get-categories

Retrieves the list of available affinity categories that can be used in influencer comparisons. Parameters: None.

compare-audience-influencers

Compares influencers of a given audience with a baseline audience. 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.

get-audience-content

Retrieves audience content engagement details, including liked content, shared content, and influential content. Parameters: audience_content_id (string) - The ID of the audience content.

report-summary

Generates a comprehensive summary of an Audiense report, including report metadata, audience size, segment information, top insights, and top influencers. Parameters: report_id (string) - The ID of the intelligence report to summarize.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "audiense insights": {
            "env": {
                "AUDIENSE_CLIENT_ID": "your_client_id_here",
                "TWITTER_BEARER_TOKEN": "your_token_here",
                "AUDIENSE_CLIENT_SECRET": "your_client_secret_here"
            },
            "args": [
                "-y",
                "mcp-audiense-insights"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": {
        "AUDIENSE_CLIENT_ID": "your_client_id_here",
        "TWITTER_BEARER_TOKEN": "your_token_here",
        "AUDIENSE_CLIENT_SECRET": "your_client_secret_here"
    },
    "args": [
        "-y",
        "mcp-audiense-insights"
    ],
    "command": "npx"
}

Macos

{
    "env": {
        "AUDIENSE_CLIENT_ID": "your_client_id_here",
        "TWITTER_BEARER_TOKEN": "your_token_here",
        "AUDIENSE_CLIENT_SECRET": "your_client_secret_here"
    },
    "args": [
        "-y",
        "mcp-audiense-insights"
    ],
    "command": "npx"
}

Windows

{
    "env": {
        "AUDIENSE_CLIENT_ID": "your_client_id_here",
        "TWITTER_BEARER_TOKEN": "your_token_here",
        "AUDIENSE_CLIENT_SECRET": "your_client_secret_here"
    },
    "args": [
        "-y",
        "mcp-audiense-insights"
    ],
    "command": "npx"
}
## ⚠️ **Deprecated** ## 🚫 This repository is no longer maintained. >The Audiense Insights MCP has been migrated to a remote model. For more information on how to use the new remote MCP, please reach us at [support@audiense.com](mailto:support@audiense.com). --- --- ## 🏆 Audiense Insights MCP Server 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)_ --- ## ⚙️ 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": "npx", "args": [ "-y", "mcp-audiense-insights" ], "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.
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.