Quick answer: instead of uploading PDFs one at a time to a chat website, index the folder they already live in. The files stay on disk, scanned PDFs get OCR so they’re not silently skipped, and your own AI — Claude, Codex, any MCP client — can search and read across all of them at once.

When an upload tool is all you need

For one PDF, once — a contract to skim, a manual to question — a ChatPDF-style site or just attaching the file to a Claude or ChatGPT conversation is the fastest path. Nothing to install, answer in a minute. The pattern breaks when:

  • the answer lives across documents — “which of these 40 reports mentions the retention clause?” doesn’t fit a one-file-at-a-time flow;
  • the PDFs change or accumulate — every update means another upload, and the tool’s copy quietly goes stale;
  • the interesting ones are scans with no text layer, which most chat tools read as blank pages;
  • the material is sensitive enough that uploading copies to a third-party site is the wrong default.

Even with one file, a chat answer doesn’t tell you how much of the PDF was used. Did Claude actually read my PDF? shows how to check.

The whole-folder way

StashBase works at folder level:

  1. Open the folder (or several) in the app. Files stay exactly where they are.
  2. Preparation runs in the background. PDFs gain extracted Markdown, scans and images gain OCR text, DOCX files join the same index. Search results always point back to the source file — with a page hint for PDFs — never to a copy in someone’s cloud.
  3. Ask across all of it. Keyword search works immediately and offline. Turn on search by meaning with your own OpenAI or OpenRouter key, and semantic search finds the report that says “customer attrition” when you asked about churn.

The “chat” part is whichever agent you already use. The built-in Chat runs Default Agent, Claude Code, Codex or Antigravity against the library directly; over MCP, Claude Desktop, Cursor, and any other client search the same index, scoped to the folders you opened. Ask “summarize what these three audits disagree on, with page references” and the agent retrieves the actual pages instead of guessing from filenames.

What “offline” honestly means here

Your PDFs never upload anywhere, extraction and OCR run on your machine, and keyword search is fully offline. Two things do leave your machine if you use them: semantic indexing sends extracted text out to compute embeddings, and a cloud agent like Claude reads whatever it retrieves, like any chat. If a folder is too sensitive for that, keep it keyword-only — search and file work don’t depend on either.

Where this really earns its keep

A shelf of research papers, a contracts archive with scanned signatures, years of statements and reports — corpora that are big, mixed-quality, and revisited. For the broader picture of how this compares with giving an agent raw file access, see the five-method comparison. StashBase is open source (Apache-2.0), on macOS, Windows, and Linux.