Skip to main content
Glama
Bob-lance

Instagram Engagement MCP

by Bob-lance

MCP de participación en Instagram

versión npm Licencia: MIT insignia de herrería

Un servidor MCP que proporciona herramientas para analizar métricas de participación en Instagram, extraer información demográfica e identificar clientes potenciales a partir de publicaciones y cuentas de Instagram.

Características

  • Analizar comentarios de publicaciones : extraiga sentimientos, temas y clientes potenciales de los comentarios en publicaciones de Instagram.

  • Comparar cuentas : compara las métricas de participación en diferentes cuentas de Instagram

  • Extraer datos demográficos : obtenga información demográfica de los usuarios que interactúan con una publicación o cuenta

  • Identificar clientes potenciales : encuentre clientes potenciales según patrones y criterios de interacción

  • Generar informes de participación : cree informes completos con información útil

Related MCP server: Instagram MCP Server

Instalación

Instalación mediante herrería

Para instalar Instagram Engagement Analysis para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install @Bob-lance/instagram-engagement-mcp --client claude

Opción 1: Instalar desde npm

npm install -g instagram-engagement-mcp

Opción 2: Clonar desde GitHub

git clone https://github.com/Bob-lance/instagram-engagement-mcp.git
cd instagram-engagement-mcp
npm install

Configuración

  1. Copia el archivo .env.example a .env y agrega tus credenciales de Instagram:

    cp .env.example .env
  2. Edita el archivo .env con tu nombre de usuario y contraseña de Instagram

Construyendo desde la fuente

Si clonó el repositorio, compile el proyecto:

npm run build

Configuración

Agregue el servidor a su archivo de configuración MCP:

{
  "mcpServers": {
    "instagram-engagement": {
      "command": "npx",
      "args": ["instagram-engagement-mcp"],
      "env": {
        "INSTAGRAM_USERNAME": "your_instagram_username",
        "INSTAGRAM_PASSWORD": "your_instagram_password"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Si clonó el repositorio en lugar de instalarlo desde npm, use:

{
  "mcpServers": {
    "instagram-engagement": {
      "command": "node",
      "args": ["/path/to/instagram-engagement-mcp/build/index.js"],
      "env": {
        "INSTAGRAM_USERNAME": "your_instagram_username",
        "INSTAGRAM_PASSWORD": "your_instagram_password"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Herramientas disponibles

analizar_comentarios_de_publicaciones

Analice los comentarios en una publicación de Instagram para identificar sentimientos, temas y clientes potenciales.

Parámetros:

  • postUrl (obligatorio): URL de la publicación de Instagram a analizar

  • maxComments (opcional): Número máximo de comentarios a analizar (predeterminado: 100)

comparar_cuentas

Compare las métricas de participación en diferentes cuentas de Instagram.

Parámetros:

  • accounts (obligatorio): Lista de cuentas de Instagram para comparar

  • metrics (opcional): Métricas para comparar (predeterminado: todas)

extraer_demografía

Extraiga información demográfica de los usuarios que interactuaron con una publicación o cuenta.

Parámetros:

  • accountOrPostUrl (obligatorio): nombre de usuario de la cuenta de Instagram o URL de la publicación que se analizará

  • sampleSize (opcional): Número de usuarios a muestrear para el análisis demográfico (predeterminado: 50)

identificar_clientes potenciales

Identifique clientes potenciales basándose en patrones de interacción.

Parámetros:

  • accountOrPostUrl (obligatorio): nombre de usuario de la cuenta de Instagram o URL de la publicación que se analizará

  • criteria (opcional): Criterios para identificar clientes potenciales

generar_informe_de_compromiso

Genere un informe de participación completo para una cuenta de Instagram.

Parámetros:

  • account (obligatoria): nombre de usuario de la cuenta de Instagram

  • startDate (opcional): Fecha de inicio del informe (AAAA-MM-DD)

  • endDate (opcional): Fecha de finalización del informe (AAAA-MM-DD)

Notas

  • Este servidor utiliza la API privada de Instagram, que no es compatible oficialmente con Instagram.

  • Úselo de forma responsable y de acuerdo con los términos de servicio de Instagram.

  • Ten en cuenta los límites de velocidad para evitar ser bloqueado por Instagram

Available Tools

5 tools
analyze_post_commentsC

Analyze comments on an Instagram post to identify sentiment, themes, and potential leads

ParametersJSON Schema
NameRequiredDescriptionDefault
postUrlYesURL of the Instagram post to analyze
maxCommentsNoMaximum number of comments to analyze (default: 100)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions analysis outputs (sentiment, themes, leads) but doesn't describe how the analysis is performed, what the return format looks like, whether it requires authentication, rate limits, or potential errors. For a tool with no annotations, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the tool's purpose without unnecessary words. It's front-loaded with the core action ('analyze comments') and key outputs. However, it could be slightly more structured by separating the analysis outputs for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (analysis tool with no annotations and no output schema), the description is incomplete. It doesn't explain the return values, error conditions, or how the analysis is conducted. For a tool that performs sentiment and theme analysis, more context on output format and limitations would be necessary for an AI agent to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the input schema already documents both parameters ('postUrl' and 'maxComments') with clear descriptions. The description adds no additional semantic context beyond what the schema provides, such as URL format examples or analysis depth implications. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: analyzing Instagram post comments to identify sentiment, themes, and potential leads. It specifies the resource (Instagram post comments) and the analysis outputs (sentiment, themes, leads). However, it doesn't explicitly differentiate from sibling tools like 'identify_leads' or 'generate_engagement_report', which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over sibling tools like 'identify_leads' (which might focus on lead identification specifically) or 'generate_engagement_report' (which could involve broader metrics). No exclusions or prerequisites are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_accountsC

Compare engagement metrics across different Instagram accounts

ParametersJSON Schema
NameRequiredDescriptionDefault
accountsYesList of Instagram account handles to compare
metricsNoMetrics to compare (default: all)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but lacks details on permissions, rate limits, data freshness, or output format. For a tool that likely accesses external data (Instagram accounts), this omission is significant and leaves behavioral traits unclear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of comparing engagement metrics across accounts, the lack of annotations and output schema means the description is incomplete. It doesn't explain what the comparison outputs (e.g., a table, summary, or raw data), how metrics are calculated, or any limitations, which are crucial for effective tool use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with clear descriptions for both parameters (e.g., 'List of Instagram account handles to compare' and 'Metrics to compare (default: all)'). The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline for adequate but not enhanced coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('compare') and the resource ('engagement metrics across different Instagram accounts'), providing a specific purpose. However, it doesn't explicitly differentiate this tool from its sibling tools (like 'generate_engagement_report' or 'analyze_post_comments'), which might also involve engagement metrics analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for comparison, or how it differs from sibling tools such as 'generate_engagement_report' or 'analyze_post_comments', leaving the agent to infer usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_demographicsC

Extract demographic insights from users engaged with a post or account

ParametersJSON Schema
NameRequiredDescriptionDefault
accountOrPostUrlYesInstagram account handle or post URL to analyze
sampleSizeNoNumber of users to sample for demographic analysis (default: 50)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool extracts insights but doesn't describe how it works (e.g., data sources, processing methods), potential limitations (e.g., accuracy, privacy constraints), or output format. For a tool with 2 parameters and no annotations, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. It avoids redundancy and waste, making it appropriately sized for a tool with 2 parameters. However, it could be slightly more structured by hinting at the tool's scope or limitations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (demographic analysis with 2 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what insights are extracted (e.g., age, location), how results are returned, or any behavioral traits. For a tool that likely involves data processing and user analysis, more context is needed to be fully helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both parameters. The description adds no additional meaning beyond the schema, such as explaining the context of 'accountOrPostUrl' or the implications of 'sampleSize'. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but the description doesn't compensate or enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: extracting demographic insights from users engaged with a post or account. It specifies the verb 'extract' and the resource 'demographic insights', but it doesn't explicitly differentiate from sibling tools like 'analyze_post_comments' or 'generate_engagement_report', which might also involve user analysis. This makes it clear but not fully sibling-distinctive.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It mentions analyzing 'users engaged with a post or account', but doesn't specify scenarios, prerequisites, or exclusions compared to sibling tools like 'identify_leads' or 'compare_accounts'. This lack of explicit when/when-not instructions leaves usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_engagement_reportC

Generate a comprehensive engagement report for an Instagram account

ParametersJSON Schema
NameRequiredDescriptionDefault
accountYesInstagram account handle
startDateNoStart date for the report (YYYY-MM-DD)
endDateNoEnd date for the report (YYYY-MM-DD)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool generates a report but doesn't describe what 'comprehensive' entails, the format of the output, whether it requires authentication, rate limits, or processing time. For a reporting tool with no annotations, this is a significant gap in transparency about how the tool behaves and what to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that gets straight to the point without unnecessary words. It's appropriately sized for a tool with three parameters and clear purpose. However, it could be slightly more front-loaded by specifying the key differentiator (e.g., 'comprehensive' versus other tools) more explicitly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of generating a comprehensive report, no annotations, and no output schema, the description is insufficient. It doesn't explain what 'engagement' metrics are included, the report format, whether it's downloadable or displayed, or any limitations. For a tool that presumably produces rich output, the description leaves too much undefined about what the agent can expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters (account, startDate, endDate) with clear descriptions. The description adds no additional parameter semantics beyond what's in the schema. This meets the baseline expectation when the schema does the heavy lifting, but doesn't provide extra value like explaining how date ranges affect report scope or account format requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('generate') and resource ('engagement report for an Instagram account'). It distinguishes from siblings like 'analyze_post_comments' or 'compare_accounts' by focusing on comprehensive reporting rather than specific analyses. However, it doesn't explicitly differentiate from potential overlap with 'extract_demographics' or 'identify_leads' which might be part of engagement reporting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or exclusions. For example, it doesn't clarify if this should be used for periodic reporting versus ad-hoc analysis, or how it differs from using sibling tools in combination. This leaves the agent without clear decision-making criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

identify_leadsC

Identify potential leads based on engagement patterns

ParametersJSON Schema
NameRequiredDescriptionDefault
accountOrPostUrlYesInstagram account handle or post URL to analyze
criteriaNoCriteria for identifying leads

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'identify potential leads' but does not specify output format, rate limits, authentication needs, or whether it performs read-only or mutative operations. This leaves significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of lead identification with two parameters (including a nested object) and no output schema or annotations, the description is incomplete. It fails to explain what the tool returns, how leads are identified, or any behavioral traits, leaving the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('accountOrPostUrl' and 'criteria') and their sub-properties. The description does not add any meaning beyond this, such as explaining how 'engagement patterns' relate to the parameters or providing usage examples, resulting in a baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the purpose as 'Identify potential leads based on engagement patterns,' which specifies the action (identify) and resource (leads) with a general method (engagement patterns). However, it does not distinguish this tool from sibling tools like 'analyze_post_comments' or 'generate_engagement_report,' which might also involve engagement analysis, making it vague in differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is provided on when to use this tool versus alternatives such as 'analyze_post_comments' or 'extract_demographics.' The description implies usage for lead identification but lacks context on prerequisites, exclusions, or specific scenarios, offering minimal direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • First observedanalyze_post_comments
    • First observedcompare_accounts
    • First observedextract_demographics
    • First observedgenerate_engagement_report
    • First observedidentify_leads

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: analyzing comments, comparing accounts, extracting demographics, generating reports, and identifying leads. The descriptions specify unique actions and targets, making it easy for an agent to select the right tool without confusion.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., analyze_post_comments, compare_accounts, extract_demographics). The naming is uniform, using snake_case throughout, which enhances readability and predictability for agents.

Tool Count5/5

With 5 tools, the server is well-scoped for Instagram engagement analysis. Each tool earns its place by covering distinct aspects of the domain, avoiding bloat or thinness, making it manageable and effective for the intended purpose.

Completeness4/5

The tool set covers key engagement analysis functions like sentiment analysis, comparison, demographics, reporting, and lead identification. A minor gap exists in direct engagement actions (e.g., posting or interacting), but the surface is largely complete for analytical workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Instagram engagement analysis using the unofficial Instagram Private API, including comment sentiment analysis, account comparison, demographic extraction, lead identification, and engagement reporting.
    58 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage Instagram Business accounts by automating content publishing, scheduling posts, and analyzing performance metrics. Supports posts, stories, reels, and carousels with detailed audience insights and hashtag discovery.
    1
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to access Instagram Business account analytics and insights, including follower demographics, post performance, and audience reach.
    -