PIL: local-first knowledge base for your Instagram saved posts, with a read-only MCP server.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
One-click editor setup isnβt available for this listing yet β we donβt have a confirmed install command, and weβd rather show nothing than point your editor at the wrong package or host. Follow the projectβs own setup instructions, linked above.
Get started Β· How it works Β· Other AI tools Β· What's inside
mcp-name: io.github.pjpoulose/pil
Get PIL in 3 steps
1. Copy-paste this into Muse:
2. When it asks, link your Instagram (one tap in your browser).
3. Download the app file it sends you β unzip β double-click Start PIL β click Install.
That's the whole thing. Your Muse does the setup, the reading, and the building. Want it on your phone too? Just ask your Muse β it handles that as well.
Prefer to do it yourself? One command sets everything up.
- 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 | iexThen build your library with the commands in Manual setup.
Every day you save posts you'll never find again. PIL (Personal Instagram Library) turns your Instagram saved collection into a private knowledge base on your own machine: every post deep-read by vision AI β narrative summaries, key points, how-to steps, links it discusses, automatic tags β searchable in seconds and queryable live from your AI coding tools.
Code is shared, data stays home. This repo contains only code, the database schema, config examples, and docs. Your saved posts, captions, and account details never leave your computer β ingestion, extraction, search, and the MCP server all run locally. A
.gitignoreblocks databases, configs, and exports from ever being committed.

Concept mockup with sample data β your library looks like this, with your posts.
Connect the read-only MCP server and your other AI tools can query your library live β always current, nothing to re-upload. Your Muse can wire it up for you. How to connect β
Prerequisites: python3 (3.11+) and instagram-cli with your Instagram
account linked (run instagram-cli accounts β it must list your account).
The one-line installer at the top of this page handles all of this for you.
Build your library (each step is resume-safe β re-run any time):
Ask it anything β via the live MCP server or the static export:
That's it. Re-run ingest_saved.py whenever you save new posts; extract_content.py
only processes posts it hasn't seen yet.
The app: ask your Muse to build and send it β see Your library as an app.
| Instagram saved tab | PIL | |
|---|---|---|
| Find a post from 2 years ago | Scroll endlessly | Full-text search in seconds |
| Remember what a post actually said | Rewatch / reread it | AI summary, key points, how-to |
| Links a post mentioned | Gone unless you saved them | Extracted and clickable |
| Use it inside your AI tools | Screenshots and retyping | MCP server or JSON export |
| Where your data lives | Meta's servers | Your machine, SQLite |
Live (recommended): MCP. Point any MCP-compatible assistant at the read-only server and every question reads your current database β always up to date, no exports, no re-uploads:
Wiring for Claude Code, Claude Desktop, and Cursor: references/mcp_clients.md. Any MCP-compatible client works β and your Muse can connect it for you if you'd rather not touch configs. Available tools:
| Tool | What it does |
|---|---|
search_posts | Text search over captions + deep-read knowledge, with optional folder/tag filters |
get_post | Full record for one post: summary, key points, how-to, links, folders, tags |
list_folders | Your saved collections with indexed counts |
list_tags | Tags by usage |
library_stats | Totals + deep-read coverage per field |
The server opens the database with SQLite mode=ro and exposes SELECT-only
tools β it cannot modify your library. (Attack-tested: SQL injection, write
attempts, and limit abuse all verified blocked.)
Snapshot: file upload. Ask your Muse to send you the web_data.json file
(built with export_web.py): every post with its deep-read knowledge in one
file. Attach it to any AI chat (Claude, ChatGPT, β¦) and ask questions like any
document. It's frozen at export time β a snapshot, not a live connection β so
ask your Muse for a fresh copy after you save new posts.
Directly (advanced). The database is plain SQLite at <data_dir>/pil.sqlite
(schema in schema.sql). Open it read-only with any SQLite tool.
These files hold your personal Instagram data β keep them on your own machine and only share them with tools you trust.
Your Muse builds the app for you and sends it to you β for your computer and your phone. Just ask:
No commands, no hosting setup, no terminal β your Muse takes care of all of it.
Prefer exploring over querying? The Signal Deck (dashboard/) builds a
self-contained HTML dashboard from your local PIL database: a topic-ring hero
over everything you saved, search β synthesis (The Brief), a sources rail, a
sticky index, and a full archive grid. One file, works offline, your data
never leaves your machine.
See dashboard/README.md for details, PWA notes, and the QA suite.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/pil)<a href="https://allmcps.com/mcp/pil"><img src="https://allmcps.com/api/badge/pil?style=directory" alt="Pil on AllMCPs" /></a>