Skip to main content
Glama
pedroantonnio

Instagram Public MCP

Instagram Public MCP for Vercel

Un servidor MCP remoto escrito en Python que consulta solo datos públicos de Instagram sin necesidad de iniciar sesión en Instagram, cookies, contraseñas ni sesiones de cuenta guardadas.

Importante: parche de Instaloader para mobile-feed

Esta compilación no utiliza el paquete estándar de Instaloader 4.15.3.

Fija la corrección de perfil/publicaciones anónimas del pull request #2722 de Instaloader en:

3f72b47466cc505b92c6e9b0ca2f5689e93a6a89

Dependencia:

instaloader @ https://github.com/alimony/instaloader/archive/3f72b47466cc505b92c6e9b0ca2f5689e93a6a89.zip

El parche cambia el comportamiento anónimo de modo que:

  • la resolución de perfil puede recurrir de api/v1/users/web_profile_info/ a api/v1/feed/user/{username}/username/;

  • la paginación de publicaciones anónimas utiliza api/v1/feed/user/{id}/;

  • las páginas de publicaciones usan paginación con max_id;

  • los elementos se convierten mediante el modelo de respuesta de iPhone/móvil de Instaloader;

  • los fallos de web_profile_info pueden llegar a la alternativa de feed inmediatamente en lugar de esperar un largo bucle de reintentos/backoff.

No se utiliza ninguna cuenta de Instagram autenticada.

Related MCP server: Instagram Download MCP Server

Arquitectura

MCP Client
    |
    v
Vercel /api/mcp
    |
    v
Patched Instaloader (PR #2722)
    |
    v
Instagram mobile feed endpoint

Herramientas MCP

get_instagram_profile

Devuelve los metadatos públicos de un perfil de Instagram.

{
  "username": "instagram"
}

get_instagram_posts

Devuelve las publicaciones públicas recientes.

{
  "username": "instagram",
  "count": 3
}

debug_instagram_connection

Inspecciona la respuesta HTTP sin procesar del endpoint heredado web_profile_info. Esta herramienta sigue disponible para diagnósticos, pero el Instaloader parcheado puede recurrir al endpoint de feed móvil cuando ese endpoint es rechazado.

{
  "username": "instagram"
}

Recursos MCP

instagram://profile/{username}
instagram://profile/{username}/posts

Caché

Caché en memoria por defecto:

CACHE_TTL_SECONDS=600
DEFAULT_POST_COUNT=12
MAX_POST_COUNT=30

Establece CACHE_TTL_SECONDS=0 para desactivarla.

Las instancias de Vercel son efímeras, por lo que esta caché es por instancia de función activa, no una caché compartida globalmente.

Despliegue en Vercel

npm install -g vercel
vercel --prod

El vercel.json incluido despliega la función en São Paulo:

{
  "$schema": "https://openapi.vercel.sh/vercel.json",
  "regions": ["gru1"]
}

Endpoint MCP:

https://YOUR-PROJECT.vercel.app/api/mcp

Endpoint de salud:

https://YOUR-PROJECT.vercel.app/api/health

Desarrollo local

python -m venv .venv
pip install -r requirements.txt
uvicorn api.index:app --reload

Endpoint MCP:

http://127.0.0.1:8000/api/mcp

Cursor

.cursor/mcp.json:

{
  "mcpServers": {
    "instagram-public": {
      "url": "https://YOUR-PROJECT.vercel.app/api/mcp"
    }
  }
}

Seguridad

Este repositorio no contiene credenciales de cuentas de Instagram.

No contiene ni requiere:

  • credenciales de usuario/contraseña de Instagram

  • sessionid

  • csrftoken

  • fb_dtsg

  • IDs de cuentas autenticadas

  • sesiones guardadas de Instaloader

  • cookies de Instagram

Limitaciones

El servidor solo consulta datos públicos y no intenta eludir perfiles privados.

Instagram puede aplicar límites de velocidad o bloquear el tráfico anónimo según la IP de despliegue. El parche de mobile-feed corrige la ruta anónima rota conocida de web_profile_info/timeline, pero no puede garantizar que Instagram acepte tráfico de cualquier proveedor de hosting o rango de IP.

Corrección de compatibilidad de perfil v2.1.1

La alternativa anónima de mobile-feed puede omitir campos de perfil opcionales que normalmente están presentes en web_profile_info.

La versión 2.1.1 lee las propiedades del perfil de forma defensiva. Los valores ausentes como biography, external_url o los metadatos de cuentas de negocio se devuelven como null en lugar de provocar un fallo en get_instagram_profile.

La ruta de obtención de publicaciones no cambia respecto a v2.1.0.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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.
    80
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables fetching public Instagram profiles, posts, and images without an API key via Instagram's mobile API.
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Public Instagram profiles and post feeds by handle, with hashtags and mentions parsed.

  • Scrape and analyze public LinkedIn posts as structured JSON via the Apify LinkedIn Posts API.

  • Unified social-media data across 10 networks: profiles, posts, search, comments, cross-search.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pedroantonnio/Instagram-Analytics-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server