Brifing

Zotero Plugin Adds Semantic Search to Academic Research

Find relevant PDF passages by meaning, not just keywords

Hacker News: Show HN3 min

1Semantic search for research

The Zotero Semantic Search plugin enables researchers to find relevant passages in their PDF collection based on meaning rather than just keywords. It converts every passage into vector embeddings that capture semantic content, allowing matches even when different terminology is used. The system supports 109 languages and works across languages - an English query can find relevant German or Spanish passages. Search results are directly linked to Zotero items for easy citation and reference management.

2Technical implementation

The plugin uses Google's LEALLA-large multilingual sentence encoder running locally via WebAssembly, requiring no Python, server or GPU. Indexing happens automatically in the background, with journal articles taking seconds and books a few minutes. The entire system operates locally - PDFs and queries never leave the user's computer. The index is stored alongside Zotero's main database file and can be synced across devices. For scanned PDFs without text layers, OCR functionality is integrated via ocrmypdf.

3Advanced search capabilities

Users can search using full sentences or paragraphs from their drafts to find supporting literature. The system shows which specific part of a query each result matches. Similarity scores range from 0 to 1, with 0.6 being the default threshold for paragraph-length queries. Results can be filtered by document type (articles, books, theses) and organized by document. The plugin maintains a complete search history and allows marking passages as 'To review', 'Cited' or 'Irrelevant'.

4Integration with Zotero

Search results integrate tightly with Zotero's existing functionality - users can open PDFs at the exact page of a passage, jump to items in their library, or copy formatted citations. The plugin adds a 'Semantic Search' section to Zotero's item pane showing similar documents in the library. Users can exclude documents from the index or re-index them as needed. All searches are preserved in the sidebar for quick access and review.

5AI assistant compatibility

The plugin includes a Model Context Protocol (MCP) server that allows AI assistants like Claude to search the user's Zotero library and properly cite sources. This enables prompts like 'Find sources supporting this paragraph' or 'Which books discuss machine learning explainability?' The MCP server only accepts local connections and can be disabled for privacy. AI-generated searches don't appear in the user's search history.

6Performance characteristics

The system is optimized for speed, searching half a million passages in about 0.15 seconds. The initial model download is approximately 590MB from Hugging Face, verified by checksum. Once installed, the plugin updates automatically from GitHub releases. The WebAssembly implementation makes the semantic search functionality available without requiring additional software dependencies beyond Zotero itself.

7Workflow enhancements

Researchers can save search results as Zotero collections for later reference. The system shows which documents in a library are most similar to any selected item. For collaborative writing, users can copy ready-made prompts asking LLMs how a passage supports their text. The plugin maintains all indexing and search functionality completely offline, addressing privacy concerns common with cloud-based research tools.

8Research impact

This tool significantly enhances literature review efficiency by surfacing relevant passages researchers might miss with keyword searches alone. The multilingual capabilities open up non-English literature more easily. By working entirely within Zotero, it reduces context switching between reference management and research tasks. The local execution model makes it suitable for sensitive or proprietary research where cloud services can't be used.

Original article: Hacker News: Show HN — Zotero Plugin Adds Semantic Search to Academic Research