PIL

oficial

Convierte tus publicaciones guardadas de Instagram en una biblioteca personal de conocimiento buscable: SQLite local, servidor MCP de solo lectura.

¿Qué puedes hacer con PIL MCP?

  • Buscar tus publicaciones guardadas — Usa search_posts para encontrar publicaciones de Instagram guardadas por texto, con filtros opcionales de carpeta o etiqueta.
  • Recuperar detalles completos de la publicación — Obtén un registro completo de cualquier publicación guardada mediante get_post, incluyendo resumen, puntos clave, pasos de instrucciones y enlaces.
  • Explorar tus colecciones — Lista todas las colecciones de Instagram guardadas con list_folders para ver los recuentos indexados de cada carpeta.
  • Explorar tus etiquetas — Usa list_tags para ver qué etiquetas has utilizado y con qué frecuencia en tu biblioteca.
  • Verificar la cobertura de la biblioteca — Obtén totales y estadísticas de cobertura de lectura profunda con library_stats para ver cuánto de tu contenido guardado ha sido procesado.

Documentación

PIL logo

Tus publicaciones guardadas de Instagram — leídas en profundidad por IA, buscables para siempre, en tu máquina.

License: MIT PRs Welcome Stars

Claude Code Cursor Claude Desktop

Empieza · Cómo funciona · Otras herramientas de IA · Qué hay dentro

mcp-name: io.github.pjpoulose/pil


Consigue PIL en 3 pasos

1. Copia y pega esto en Muse:

    Clona https://github.com/pjpoulose/PIL en tu espacio de trabajo y sigue su
    SKILL.md para configurar mi Biblioteca Personal de Instagram. Trabaja paso a
    paso — instala, construye la biblioteca desde mis publicaciones guardadas y
    entrégame la aplicación instalable.

2. Cuando lo pida, vincula tu Instagram (un toque en tu navegador).

3. Descarga el archivo de la aplicación que te envía → descomprime → haz doble clic en Iniciar PIL → haz clic en Instalar.

Eso es todo. Tu Muse hace la configuración, la lectura y la construcción. ¿Lo quieres también en tu teléfono? Solo pídeselo a tu Muse — también se encarga de eso.

¿Prefieres hacerlo tú mismo? Un solo comando configura todo.
  • Mac / Linux: curl -fsSL https://raw.githubusercontent.com/pjpoulose/PIL/master/bootstrap.sh | bash
  • Windows (PowerShell): irm https://raw.githubusercontent.com/pjpoulose/PIL/master/bootstrap.ps1 | iex

Luego construye tu biblioteca con los comandos en Configuración manual.


Todos los días guardas publicaciones que nunca volverás a encontrar. PIL (Biblioteca Personal de Instagram) convierte tu colección guardada de Instagram en una base de conocimiento privada en tu propia máquina: cada publicación leída en profundidad por IA de visión — resúmenes narrativos, puntos clave, pasos de cómo hacerlo, enlaces que menciona, etiquetas automáticas — buscable en segundos y consultable en vivo desde tus herramientas de codificación con IA.

El código se comparte, los datos se quedan en casa. Este repositorio contiene solo código, el esquema de la base de datos, ejemplos de configuración y documentación. Tus publicaciones guardadas, pies de foto y detalles de cuenta nunca salen de tu computadora — la ingesta, extracción, búsqueda y el servidor MCP se ejecutan localmente. Un .gitignore bloquea que las bases de datos, configuraciones y exportaciones se suban jamás.

PIL dashboard concept — gallery of deep-read saved posts with a synthesized answer

Maqueta conceptual con datos de muestra — tu biblioteca se ve así, con tus publicaciones.

¿Quieres que tu Claude, Codex o Cursor accedan a esto?

Conecta el servidor MCP de solo lectura y tus otras herramientas de IA pueden consultar tu biblioteca en vivo — siempre actualizada, sin necesidad de volver a subir nada. Tu Muse puede configurarlo por ti. Cómo conectar →

Cómo funciona

flowchart LR
    A["Instagram saved posts"] -->|"ingest"| B["Local SQLite on your machine"]
    B -->|"vision AI<br/>deep read"| C["Summaries, key points, how-tos, links, tags"]
    C --> D["Query two ways"]
    D --> E["MCP server — Cursor, Claude Code, Desktop"]
    D --> F["Static JSON export — any AI tool"]

Configuración manual (hazlo tú mismo)

Desplegar — solo necesario si te saltas el flujo de 3 pasos con Muse de arriba.

Requisitos previos: python3 (3.11+) y instagram-cli con tu cuenta de Instagram vinculada (ejecuta instagram-cli accounts — debe listar tu cuenta). El instalador de una línea en la parte superior de esta página maneja todo esto por ti.

# 1a. Install from PyPI (recommended — no clone needed)
pip install personal-instagram-library
# gives you: pil-mcp pil-ingest pil-extract pil-tag
#            pil-export-web pil-export-html pil-export-pwa pil-publish-pwa

# 1b. Or get the code
git clone https://github.com/pjpoulose/PIL.git pil && cd pil

# 2. Configure (your data lives in data_dir, default ~/.local/share/pil)
cp pil.config.example.json ~/.config/pil/pil.config.json
# edit it: set account_id to your user_fbid from `instagram-cli accounts`

# 3. MCP server dependency
pip install "mcp<2"

Construye tu biblioteca (cada paso es seguro de reanudar — vuelve a ejecutarlo cuando quieras):

cd bin
python3 ingest_saved.py      # collections + saved posts
python3 extract_content.py   # vision-AI deep read (batches of 25)
python3 tag_all.py           # programmatic tags for untagged posts
python3 export_web.py        # static JSON export -> <data_dir>/web_data.json
python3 export_html.py       # searchable HTML dashboard -> <data_dir>/pil_library.html
python3 export_pwa.py        # installable PWA bundle -> <data_dir>/pwa/

Pregúntale cualquier cosa — a través del servidor MCP en vivo o de la exportación estática:

python3 bin/mcp_server.py    # read-only, stdio — Ctrl-C to stop

Eso es todo. Vuelve a ejecutar ingest_saved.py cada vez que guardes nuevas publicaciones; extract_content.py solo procesa publicaciones que aún no ha visto.

La aplicación: pídele a tu Muse que la construya y te la envíe — consulta Tu biblioteca como aplicación.

¿Por qué no simplemente desplazarte por tu pestaña de guardados?

Pestaña de guardados de InstagramPIL
Encontrar una publicación de hace 2 añosDesplazarte sin finBúsqueda de texto completo en segundos
Recordar qué decía realmente una publicaciónVolver a verla / releerlaResumen de IA, puntos clave, cómo hacerlo
Enlaces que mencionaba una publicaciónPerdidos a menos que los guardarasExtraídos y clicables
Usarla dentro de tus herramientas de IACapturas de pantalla y reescrituraServidor MCP o exportación JSON
Dónde viven tus datosLos servidores de MetaTu máquina, SQLite

Consulta tu biblioteca desde otras herramientas de IA

En vivo (recomendado): MCP. Apunta cualquier asistente compatible con MCP al servidor de solo lectura y cada pregunta lee tu base de datos actual — siempre actualizada, sin exportaciones, sin re-subidas:

python3 /path/to/pil/bin/mcp_server.py    # stdio; Ctrl-C to stop

Configuración para Claude Code, Claude Desktop y Cursor: references/mcp_clients.md. Cualquier cliente compatible con MCP funciona — y tu Muse puede conectarlo por ti si prefieres no tocar configuraciones. Herramientas disponibles:

HerramientaQué hace
search_postsBúsqueda de texto sobre pies de foto + conocimiento de lectura profunda, con filtros opcionales de carpeta/etiqueta
get_postRegistro completo de una publicación: resumen, puntos clave, cómo hacerlo, enlaces, carpetas, etiquetas
list_foldersTus colecciones guardadas con recuentos indexados
list_tagsEtiquetas por uso
library_statsTotales + cobertura de lectura profunda por campo

El servidor abre la base de datos con SQLite mode=ro y expone herramientas solo de SELECT — no puede modificar tu biblioteca. (Probado contra ataques: inyección SQL, intentos de escritura y abuso de límites, todo verificado como bloqueado.)

Instantánea: carga de archivo. Pídele a tu Muse que te envíe el archivo web_data.json (construido con export_web.py): cada publicación con su conocimiento de lectura profunda en un solo archivo. Adjúntalo a cualquier chat de IA (Claude, ChatGPT, …) y haz preguntas como con cualquier documento. Está congelado en el momento de la exportación — una instantánea, no una conexión en vivo — así que pídele a tu Muse una copia nueva después de guardar nuevas publicaciones.

Directamente (avanzado). La base de datos es SQLite simple en <data_dir>/pil.sqlite (esquema en schema.sql). Ábrela en modo solo lectura con cualquier herramienta SQLite.

Estos archivos contienen tus datos personales de Instagram — mantenlos en tu propia máquina y compártelos solo con herramientas en las que confíes.

Tu biblioteca como aplicación

Tu Muse construye la aplicación por ti y te la envía — para tu computadora y tu teléfono. Solo pídelo:

  • "Envíame mi aplicación PIL" — descarga el archivo que te envía, descomprime, haz doble clic en Iniciar PIL, haz clic en Instalar. Vive en tu computadora como cualquier otra aplicación y funciona completamente sin conexión.
  • "Pon PIL en mi teléfono" — se encarga de la publicación y te da un código QR para escanear. Toca Instalar (Android) o Compartir → Agregar a pantalla de inicio (iPhone).

Sin comandos, sin configuración de hosting, sin terminal — tu Muse se encarga de todo.

Qué hay dentro

pil/
├── assets/logo.svg          # the seal above
├── SKILL.md                 # skill definition (for Muse)
├── README.md                # this file
├── LICENSE                  # MIT
├── schema.sql               # the five tables: folders, posts, post_folders, knowledge, tags
├── pil.config.example.json  # copy to pil.config.json and set your account_id
├── bootstrap.sh             # one-line installer for Mac/Linux
├── bootstrap.ps1            # one-line installer for Windows
├── bin/
│   ├── pil_common.py        # config resolution + DB helpers
│   ├── ingest_saved.py      # step 1: ingest (resume-safe)
│   ├── extract_content.py   # step 2: vision-AI extraction (resume-safe)
│   ├── tag_all.py           # step 3: tagging
│   ├── export_web.py        # step 4: static export
│   ├── export_html.py       # step 5: self-contained HTML dashboard
│   ├── export_pwa.py        # step 6: installable PWA bundle (manifest + SW + icons)
│   ├── publish_pwa.py       # step 7: publish PWA to your own host for phone install
│   └── mcp_server.py        # read-only MCP server (stdio)
└── references/
    └── mcp_clients.md       # Cursor / Claude Code / Claude Desktop wiring

Preguntas frecuentes

¿Necesito saber programar? No. Copia y pega el mensaje en la parte superior de esta página en Muse — hace todo contigo. Las únicas cosas que harás tú mismo son vincular Instagram (un toque en tu navegador) y descargar el archivo de la aplicación que te envía.

¿A dónde van mis datos de Instagram? A ningún lado. El código se comparte, los datos se quedan en casa: tus publicaciones guardadas, pies de foto y detalles de cuenta nunca salen de tu computadora. Nada se sube a nosotros — no hay "nosotros"; no hay servidor, ni cuenta, ni nube.

¿Cuesta algo? PIL es gratuito y de código abierto (MIT). No hay suscripción ni cuenta que crear. El paso de lectura profunda con IA se ejecuta a través de tu propia configuración de Instagram/IA.

¿La aplicación funciona sin conexión? Sí. Una vez instalada, las aplicaciones de escritorio y teléfono funcionan completamente sin conexión — búsqueda, salas, etiquetas y respuestas funcionan sin internet.

¿Qué teléfonos y computadoras? Windows, Mac y Linux para la aplicación de escritorio; iPhone y Android para la aplicación de teléfono. En Android, toca Instalar aplicación en Chrome; en iPhone, usa el Compartir → Agregar a pantalla de inicio de Safari.

Guardé nuevas publicaciones — ¿cómo las agrego? Solo dile a tu Muse "guardé nuevas publicaciones". Obtiene y lee en profundidad solo las nuevas, y luego actualiza tu aplicación y archivos.

¿Puedo compartir mi biblioteca con alguien? Tu biblioteca son archivos en tu máquina — puedes copiarlos a la computadora de otra persona, pero contienen tus datos personales de Instagram. Trátalos como cualquier cosa privada: no los publiques ni los subas a ningún lugar público.

Algo falló — ¿qué hago ahora? Dile a tu Muse lo que viste — puede diagnosticar y arreglarlo directamente. (¿Ejecutando la configuración manual de abajo? Vuelve a ejecutar el instalador — es seguro ejecutarlo cualquier cantidad de veces — y verifica que python3 --version sea 3.11+.)

Solución de problemas

¿Algo anda mal? Dile a tu Muse lo que pasó — puede diagnosticar y arreglar la mayoría de los problemas por sí mismo.

¿Ejecutando la configuración manual tú mismo?

  • PIL account_id is not configured → copia la configuración de ejemplo y establece account_id a tu user_fbid desde instagram-cli accounts.
  • La extracción es lenta en bibliotecas enormes — es seguro de reanudar; solo vuelve a ejecutarla.
  • Los límites de velocidad de 429 se manejan con retroceso dentro de los scripts.
  • El servidor MCP necesita mcp<2 en el Python que lo ejecuta (la 2.x renombró la API).

Contribuciones

PRs y problemas son bienvenidos — mejores mensajes de extracción, nuevos clientes de consulta, nuevos formatos de exportación. Haz un fork, envíalo, hazlo tuyo. Si te salvó del desplazamiento sin fin, una estrella ayuda a que otros lo encuentren.

Licencia

MIT. Construido por Paul Poulose.