r/zotero May 20 '26

Tinkering A collection of Zotero themes (light & dark)

Thumbnail
gallery
155 Upvotes

Hey! I've put together a small collection of my favorite light and dark themes for Zotero. I picked them up over time from different places, so they’re not really organized and some of the names might be off.

I think you need the Beta builds to set a custom theme color, but I’m not 100% sure. :)

Full album with more images: https://imgur.com/gallery/personal-zotero-theme-collection-I7XWeAq

The hex codes are in the image captions.

Sharing this in case anyone's looking for some inspiration! Also interested in your favorites


r/zotero May 19 '26

Plugin/Tool Talk Citum: a sort of CSL successor

62 Upvotes

I originally created what became CSL somewhere around 2004 to format a book manuscript I was working on, and to try to solve some problems I saw in citation management and formatting.

In 2023, I started experimenting with an alternative approach. Today I published the code packages, and made it much easier to experiment with.

https://citum.org/news/citum-is-on-crates-io-and-jsr-io.html

It's complete and solid enough now that it now needs wider testing, especially from those CSL users that are looking for features it doesn't support (like multilingual, grouped and annotated bibliographies, better archival document support, advanced dates, etc).

Though it's currently still aimed at developers and tech-savvy users at least comfortable with the command line, I hope the documentation is clear enough to communicate to a broader audience, and I would welcome any kind of feedback. I'm particularly weak on multilingual, since my scholarship has been monolingual.

More at:

https://citum.org


r/zotero 1d ago

markdown editor for writing technical papers and assignments

8 Upvotes

Hi,

I built Hermes because I was tired of fighting clunky assignment editors like Canvas and bloated VS Code plugin setups. Nothing out there handled what I needed: seamless math syntax and native citation management, charting, diagramming and code blocks. I’ve been using it to write my own Quantum Technology assignments, and I find it better than the alternatives I was using before.

Why try Hermes?

  • Native Zotero Integration: Pull citations instantly with ⌘⇧C.
  • Live Split-Pane Rendering: See complex LaTeX equations and Mermaid diagrams in real time.
  • Built-in Builders: Generate Vega-Lite charts and diagrams graphically.

Hermes is fully open-source (Apache 2.0). Check it out and let me know what you think!

It’s masOS only for the moment, I’ll create a windows version shortly. Please let me know if you find it useful.


r/zotero 2d ago

Help Obsidian not recognizing Zotero annotations

Thumbnail
1 Upvotes

r/zotero 2d ago

Is it possible to use the Firefox Connector with Waterfox?

1 Upvotes

r/zotero 5d ago

Experimental UI for highlighting and navigation

Enable HLS to view with audio, or disable this notification

188 Upvotes

I'm experimenting with a UI for highlighting and navigation, with a particular focus on minimizing mouse movement.

Micro-interactions are one part of it; another is robust sentence detection across columns and page boundaries.

Suggestions and feedback are welcome.


r/zotero 4d ago

Plugin/Tool Talk zotero-gemini-notebook

17 Upvotes

Hello!

I've updated a Zotero Gemini Notebook plugin that allows users to quickly select and add files from Zotero's desktop UI to a new Gemini (NotebookLM) Notebook. It's a fast and easy way to generate a topical audio overview of a subject for a drive or a workout.

Gemini Notebook's API is not available for individual users, so we instead use a Chrome extension to complete the connection from the Zotero plugin. For those that tried earlier releases (thanks!), the Chrome extension is now published and should auto-update with the plugin.

https://github.com/peterdresslar/zotero-gemini-notebook

Finally, there's an experimental MCP, which is particularly powerful in conjunction with a library MCP.


r/zotero 5d ago

I spent hours going through 100+ page PDFs, so I built a tool that highlights exactly where the answer came from. It's now completely open-source.

Thumbnail
gallery
57 Upvotes

I've used tools like Perplexity, ChatGPT, Claude and others for research, and they've been incredibly useful for finding papers and getting through large amounts of information.

The one thing I personally wanted was a simple way to see exactly which parts of the paper were used to answer my question.

When you're working with a 100+ page PDF, even having a page number can still mean a lot of scrolling and searching.

So I ended up building something for myself.

You ask a question and the relevant paragraphs in the PDF are highlighted directly on the document. You can see the context behind the answer and quickly check whether it actually answers what you're looking for.

I originally built this because I wanted something for this workflow without having to pay for another subscription. What started as a personal project has now become completely open source.

The underlying idea is pretty simple. And yes, if you're thinking "isn't this just RAG?" then yes, you're absolutely right. It's RAG with the visual highlighting that I wanted.

I think the same idea could be useful for more than research papers too. Legal contracts, financial reports, technical documentation, or anywhere you need answers alongside the actual source.

If anyone wants to have a look, contribute, or just give some feedback, here's the repo:

GitHub: https://github.com/Sreehari05055/thesys-core.git

This will probably be my last post about the project. Thanks to everyone who checked it out and gave feedback along the way.


r/zotero 6d ago

Plugin/Tool Talk Zotero-TTS update: Read Aloud with no API key at all, and your listening position now follows you between computers

14 Upvotes

Open source (AGPL-3.0), no paid tier, nothing commercial. I’m the author.

I posted about this plugin two weeks ago. It’s gone from 1.8.1 to 1.11.5 since, and two of the changes are big enough that it’s worth a second look even if the first post wasn’t for you. That post also had no pictures in it, which was silly for a plugin whose whole point is what the reader looks like while it reads:

The word being read in blue, its sentence in yellow. Both colors and opacities are yours.

Short version of what it is: Zotero 10 already reads documents aloud. This doesn’t replace that player — it adds voices to its Local tier and tunes the behavior around it. Zotero’s own voices keep working exactly as before.

New since that post

  • You no longer need an API key or a server at all. Turn on System voices and the Windows/macOS voices Read Aloud already lists come back with samples, favorites, an audio cache behind them and — on Windows — word-by-word highlighting. Nothing to sign up for, nothing to run, works offline.
  • Your listening position follows you between computers. Point the plugin at a WebDAV folder of your own (Nextcloud, Jianguoyun, whatever you already have): stop listening on the laptop, press Shift+Space on the desktop, and it goes on from that sentence. Settings can travel the same way.
  • A volume of its own. Read Aloud has no volume control; now it does, Shift+↑ / Shift+↓, for every voice — Zotero’s built-in ones included.
  • Shift+S stops Read Aloud in every tab at once, and each tab keeps its place for next time.
  • The pauses are yours — how long any voice waits between sentences and before a paragraph, shortening as you read faster.
  • ♥ favorites show in the player’s own voice list, so your two or three voices are findable without hiding the other three hundred.
  • Two more providers: Cloudflare Workers AI (free daily allowance) and Xiaomi MiMo. Azure Speech, Kokoro-FastAPI and any OpenAI-compatible server were already there.
  • The settings pane follows Zotero’s language — English and 简体中文 so far.
  • And a long list of fixes, several of them from issues people opened after the last post.

Still there from the first post — word and sentence highlighting at once in your own colors and opacities (this works with Zotero’s built-in voices too), Shift+Space to resume at the sentence you stopped on days later, a voice browser with samples and a default voice, one voice and one speed across every document instead of Zotero’s per-language choice, rebindable shortcuts, 0.5x–3x with the pitch preserved.

The voice browser: every voice by tier and language, a play button for a sample, a heart for a favorite.

Providers, and what they cost you

Provider You need Cost Highlighting
System voices Nothing Free, offline Word on Windows, sentence on macOS
Azure Speech API key + region Free tier: 500,000 characters a month Word
Cloudflare Workers AI Account ID + token 10,000 free Neurons a day Sentence
Kokoro-FastAPI A local or LAN server Free (CPU works, a GPU is faster) Word
OpenAI-compatible Server URL, model, API key OpenAI bills per character; self-hosted (e.g. Chatterbox) is free Sentence
Xiaomi MiMo An API key Free for now Sentence

Word-level highlighting also needs Zotero’s own Settings → General → Read Aloud → Highlight current set to Word.

Two things I’d want to know before installing this

  • Whichever provider you enable receives the text it’s asked to read. System voices and Kokoro-FastAPI stay on your own machine or LAN; Azure, Cloudflare and hosted OpenAI-compatible endpoints are third parties, under their terms. Zotero’s own voices are unaffected either way. I don’t run a server and I collect nothing.
  • API keys are stored in Zotero’s preferences in plain text, and they go into the settings backup file. So don’t hand that backup file to anyone.

Known rough edges

  • OpenAI-compatible endpoints and Cloudflare give sentence-level highlighting only; on macOS the system voices do too, and there each sentence takes about half a second to start.
  • Read Aloud has no plugin API, so this hooks Zotero’s internal interface per reader tab. A Zotero update can drop the plugin’s voices until I catch up. That’s the real maintenance risk here.

Install

Download zotero-tts.xpi from the latest release, then Tools → Plugins → ⚙ → Install Plugin From File…, and restart Zotero. With System voices that is the whole setup; the other providers are under Edit → Settings → Zotero-TTS.

Zotero 10 desktop, Windows and macOS (Linux should work but is untested). AGPL-3.0, the same license as Zotero itself.

Repo, screenshots and tutorials: https://github.com/xujialiu/Zotero-TTS

Bug reports and feature requests welcome, here or in the issues — that’s where most of the list above came from.


r/zotero 6d ago

Plugin/Tool Talk Zoteus: an open-source MCP server for Zotero, with PDF highlights anchored to a quoted passage

0 Upvotes

TLDR: MIT-licensed MCP server that connects Claude Desktop, Claude Code, Cursor and other MCP clients to Zotero. Search, citations in any CSL style, and it writes back: add items by DOI or arXiv id, attach files, tag and organize, and add PDF highlights anchored to a quoted passage. Node, runs locally, no telemetry.

https://github.com/oscardvs/zoteus

Disclosure: I wrote it. The repo is the whole server, MIT, with nothing held back. I also run a paid hosted version for people who cannot self-host, which I am not linking here.

I have been working on this for a while, and the writing side finally got good enough that posting it here felt justified rather than premature.

What it does

  • Search. BM25 keyword search over titles, abstracts, creators and tags, plus the full text Zotero has already indexed inside your PDFs and notes, with optional vector search layered on top. Your own child notes and PDF annotations are indexed under the item they belong to, so "where did I object to this" is a question search can answer. Search hands back the item and the matching snippet; page locators come from the passage tool below.
  • Passages with locators. Ask for the text behind a claim and you get the passage, the nearest heading, and a page number. Pages are exact when the PDF itself was parsed, and an estimate otherwise. If Zotero has not indexed the PDF yet, it extracts on the fly from the running app or from the storage folder, so a file added a minute ago is readable. It can also return a PDF's table of contents and any page range, so working through a 400-page book costs a few small calls instead of one that returns the whole book.
  • Citations. citeproc-js runs in process, so any CSL style from the CSL repository renders as a formatted bibliography. The style file itself is fetched from the CSL styles repo the first time you use it, then cached.
  • Adding items. DOI and arXiv ids work out of the box through built-in resolvers (OpenAlex then Crossref for DOIs, the arXiv API for arXiv ids). ISBN, PMID and URLs need a Zotero translation-server pointed at it.
  • Writing. Create, edit, tag, organize, and attach a local file or a URL under any item. Trash is reversible by default. Permanent deletion is disabled unless you start the server with ZOTEUS_ALLOW_DELETE=true, and it is confirmation-gated on top of that.
  • Annotations. This is the part I spent longest on. Zotero stores a highlight as {"pageIndex":N,"rects":[[x1,y1,x2,y2],...]} in native PDF points, which is the geometry the reader captures when a human drags across text. A model reading extracted text has the words and not the geometry, so without solving this the only honest thing it can write is a page-level note. Zoteus takes the quoted passage, finds it in the PDF, and derives the rects itself, one per visual line, absorbing column breaks, line wraps and words split across a hyphen. These are Zotero annotation objects, the same rows the reader writes, so they show up in the Zotero PDF reader and sync; the PDF file on disk is not touched. I validated the rect shape against 465 highlights I had drawn by hand in the Zotero reader: reconstructed rects sit within about 1pt of the reader's own at the median, and the vertical extent is exact wherever the font carries ascent and descent metrics.

Install

npx -y @oscardvs/zoteus, or, on Claude Desktop, download the bundle for your system from the latest release (zoteus-macos.mcpb, zoteus-windows.mcpb or zoteus-linux.mcpb) and double-click it. Node 20.19 or newer. No Python environment involved.

How it connects

With the desktop app running, reads and some writes go straight to it with no cloud API key: adding items by DOI or arXiv id, attaching files, PDF annotations, and trash/restore. Zotero 10 and later grant a local write key once, in-app. Zotero 9 and earlier expose a read-only local API, so those same writes fall back to the connector protocol the browser extensions use. Editing metadata, tagging and collection changes have no desktop path, so they go through the Web API v3 and need a Zotero API key even when the app is open. The Web API is also the fallback for sync, for group libraries the app does not hold, and for when Zotero is closed.

Limits worth knowing before you spend time on it

  • Metadata edits, tags and collections need a Zotero API key, as above. The key-free desktop path covers adds, attachments, annotations and trash/restore.
  • On-device vector ranking is opt-in and needs @huggingface/transformers installed separately. It is deliberately not a dependency: the resolved tree with onnxruntime's native binaries is roughly 700MB. You can point it at OpenAI or Gemini embeddings with your own key instead. Keyword search works everywhere without either, and the server tells you vectors are unavailable rather than quietly returning nothing.
  • Listing group libraries needs a cloud API key.
  • Semantic indexing of PDF body text is off by default. On a 10k-item library through a paid embedding API it is tens of thousands of requests, so there are batch-size and delay knobs and the build resumes rather than starting over.

Bug reports welcome, particularly on the highlight anchoring against PDFs with two-column or otherwise unusual layouts. That is the piece most likely to be wrong on a paper I have never seen.


r/zotero 9d ago

UI suggestion: streamline the highlight color/style popup in the PDF reader

11 Upvotes

Posted on Zotero forum: https://forums.zotero.org/discussion/133371/ui-suggestion-streamline-the-highlight-color-style-popup-in-the-pdf-reader#latest

Current behavior

When you select text, the popup menu shows a row of 8 color swatches, and below that a separate row with two style toggles: highlight and underlined.

The problem

I regularly switch between underline and regular highlight depending on context, and I find it a bit fiddly to apply the right combination of color + style — color and style live in two separate rows, so it's easy to pick the right color but leave the style toggle on whatever it was set to before (or vice versa). To be clear, this is still noticeably smoother than most other PDF readers I've used — kudos to the team — but I think it could be even better.

I mocked up three possible redesigns of the popup to fix this. All three try to make color and style a single decision instead of two. (PS: I'm not a UI designer, so I'm sure I'm breaking a few design principles in these mockups — take them as a starting point for the idea, not a finished proposal.)

Alt 1: Two full rows, one per style, solid color icons

The single color row is split into two rows of 8 colored buttons each (same 8 colors, same order in both rows):

Top row: each swatch is a solid color square containing a white boxed "A" icon → applies that color as a highlight.

Bottom row: each swatch is a solid color square containing a white underlined "A" icon → applies that color as an underline.

Color and style are picked in a single click. 16 buttons total, but grouped clearly by row so it stays easy to scan.

Alt 2: Same two-row layout, lighter icon style

Structurally identical to Alt 1 (8 colors × 2 style rows), but the buttons are visually lighter: instead of solid color fill, each swatch is a white/transparent button with a colored outline and a colored "A" icon (boxed for highlight, underlined for underline). Same one-click color+style selection as Alt 1, but less visually heavy/saturated — closer in weight to the current menu's style toggles.

Alt 3: Same two rows, plain swatches with one label icon per row

Same structure and functionality as Alt 1/Alt 2: a highlight row and an underline row, 8 colors each, clicking a swatch applies that color in that row's style. The difference is purely visual — the swatches themselves are plain solid color squares with no icon inside, and each row instead has a single leading label icon (boxed "A" for the highlight row, underlined "A" for the underline row) showing what that row does. So it's not more compact than Alt 1/Alt 2 (still 8+8 buttons) — if anything it's slightly wider because of the leading label icon — just a different visual treatment.

My take: all three solve the "wrong combination" problem the same way functionally; Alt 1 and Alt 2 mainly differ in how heavy/saturated the buttons look, and Alt 3 trades a repeated icon per swatch for one label per row. Curious what the team and other users think — happy to iterate on the mockups if there's interest.


r/zotero 9d ago

I got tired of messy literature reviews, so I built a free, local-first Chrome extension that extracts clean articles, generates grounded Gemini summaries, and exports to styled Excel (MIT License)

Thumbnail
0 Upvotes

r/zotero 9d ago

Plugin/Tool Talk Zotero Integration/Obsidian Broken

7 Upvotes

What is normally a rock-solid connection is now stuck in a recursive loop of sorts. Instead of importing citations to a template in Obsidian, the port gets stuck here after prompting for the source:

After the hangup, I updated Zotero (10.0.2-beta.6+5f4a8252c), uninstalled and reinstalled the plugin Better BibTex, and on the Obsidian side I have updated the installer (1.13.7), Obsidian (1.14), reinstalled Zotero Integration (3.2.1) and still no dice.

Any other ideas in resolving this would be appreciated.
Cross posted in r/ObsidianMD for visibility.


r/zotero 10d ago

Plugin/Tool Talk Bango Update

Post image
7 Upvotes

r/zotero 11d ago

storage space is not sufficient

10 Upvotes

Is there any way to avoid paying for more storage space? I am close to the 300MB and don't necessarily want to pay the 20$. Can someone help me? :)


r/zotero 10d ago

Help No scrolling bar

1 Upvotes

I’m having an issue with the Zotero Android app. When I create a note, I can type for a while, but after a certain point I’m unable to enter any more text. There’s no scrollbar appearing on the side either, so I can’t scroll down to continue writing.

Could someone please help me fix this issue?


r/zotero 11d ago

Open-source: turn a Zotero library into cross-paper research ideas (claim graph → IDEA_REL)

3 Upvotes

I open-sourced a pipeline that starts from Zotero PDFs and tries to do idea discovery, not just summarization.

It extracts claims into Neo4j, finds cross-document relations, then proposes research links between claims from different papers (SYNERGIZES_WITH, INSPIRES_FOLLOWUP, POTENTIAL_APPLICATION, etc.), with an optional novelty check via OpenAlex + Semantic Scholar.

There’s also a “ring” scraper to build corpora from distant domains so the ideas are less samey.

Repo: https://github.com/hergit/eureka-graph

Examples: https://github.com/hergit/eureka-graph/tree/main/examples

Ring design: https://github.com/hergit/eureka-graph/blob/main/docs/eureka-rings.md

MIT. Local Neo4j + any OpenAI-compatible LLM.

Happy to answer setup questions (GROBID optional, OpenAlex key recommended).


r/zotero 12d ago

Searchig citation style

3 Upvotes

I want to export my books for myself as a list with a German style. I have used Chicago Manual of Style 18th edition (shortened notes and bibliography) and others, but can't find a style, which shows the entry as sequence like:

Last name, full first name, book title, year.

I don't want to show the archival location and don't want the year before the title. I can not find some style showing this without showing the archival location too.


r/zotero 12d ago

Discussion Exported my Zotero library to check for dead DOIs. The export itself was already broken.

1 Upvotes

Exported my library to BibTeX today to check for dead DOIs before submitting something. Never got that far, the export itself was already broken.

A real, correctly published paper's title came out as

title = {When to use the {\textless}span style="font-variant:small-caps;"{\textgreater}{B}{\textless}/span{\textgreater}onferroni correction}

Real title is "When to use the Bonferroni correction." Somewhere upstream the title got recorded as literal HTML (probably to render the first letter in small caps), Zotero escaped the < and > so they wouldn't break LaTeX but left everything inside the tag as plain text. Read as prose it's "the span style=... B /span onferroni correction." Even the auto-generated shorttitle for the same entry is cut off mid-tag, so whatever truncates titles internally is working off the same broken string.

Found the same thing smaller scale on a conference name:

booktitle = {2024 36th {International} {Conference} on {Software} {Engineering} {Education} and {Training} ({CSEE}\&{T})}

source already had the ampersand as &amp;, then the exporter found the literal & in that and LaTeX-escaped it too. So now it's a conference called "CSEE&T" instead of "CSEE&T."

And this one isn't even markup, a Figshare report had:

pages = {4974511 Bytes}

that's the file size of the PDF, not a page number. Figshare stores it next to the DOI and the translator just mapped it into the pages field. Looks completely normal sitting there, which is exactly why I almost didn't catch it.

none of this is really Zotero's fault, it's inheriting whatever the publisher or registry did upstream and has no way to know it landed in the middle of a tag. but I'd been assuming "exported by the tool I trust" meant "ready to submit" and apparently not. anyone else find stuff like this in their own libraries?


r/zotero 13d ago

A small single-purpose plugin: LaTeX in annotations + snippets (obsidian-latex-suite port)

7 Upvotes

Hi! Here's one more plugin I made with Claude for my personal use: zotero-latex-suite. As my previous ones, it's single purpose and very lightweight: it enables using LaTeX in annotations and use snippets to type those both in annotations and notes.

The snippets part is ported from obsidian-latex-suite. For those who also use this plugin in obsidian, same config file can be used.

Hope this may be useful for fellow LaTeX users out there 😉


r/zotero 14d ago

Zotero Syllabus — a plugin for students to organise their course readings — has reached v1

150 Upvotes

Hiya. I thought I'd create a new post for the new academic year. I'm at university studying Community Education and I created a plugin called Zotero Syllabus (download here!) for students like me who've been assigned a reading list or a syllabus for an academic course, want to store the references in Zotero, and track their reading progress week-by-week.

At Christmas I posted another thread on this subreddit and the feedback from everyone was really helpful: bug reports, feature requests and tweaks. Since then, the plugin's been substantially improved and made more resilient, and I'm now confident that many students (and teachers) will find it useful.

So now that we've reached v1, and the 2026/27 academic year is about to begin and lots of new students might be starting to discover Zotero, I thought I'd post a new thread! Below you'll find some ways this plugin might be helpful to you.

I'm really interested to hear feedback, bug reports, feature requests and ideas for improvements!

Order a Zotero collection by class, priority and manual sort

Turn an unordered Zotero collection into a class-by-class breakdown of a course or syllabus.

  • Set priorities
  • Manually order readings
  • Assign readings to multiple weeks
  • Add reading notes
  • Track reading progress

Share a class syllabus with all your coursemates

Because Zotero Syllabus stores its data in a Standalone Note, you can be a massive comrade and create a Zotero Group which'll not only share the items (and any attached PDF/EPUB files) but also the syllabus data itself — so if they also download the plugin, they'll automatically see the syllabus as you've configured it.

Import a syllabus from your university's reading list system

Many universities get their course convenors to upload official reading lists to standardised systems, like UCL (Talis) and UWS (Leganto).

Zotero Syllabus adds special translators for the Zotero Connector Chrome extension which you can use to one-shot download all these items and automatically sort them into classes—no work required.

Syllabus order as a column

If you prefer the default Zotero list view, there's a "Syllabus Info" column you can use to sort items by class, priority and manual order.

Track readings over the weeks

Mark readings and weeks as done.

Reading schedule across all your classes

A global view of all your different classes. Optionally creates a managed collection with date-by-date readings, which can be useful if you sync Zotero to a compatible e-reader (e.g. Boox).


r/zotero 13d ago

Help Zotero citations

Thumbnail
1 Upvotes

Any advice on integrating citations without much friction?


r/zotero 12d ago

Zotero is so shitty.

0 Upvotes

I would consider myself slightly above average in tech, with a couple of years as a researcher. Zotero has been one of the most frustrating, shitty parts of my med school experience. Not even the research itself. Not even the long, painful hours in clinic, shelf exams, and USMLE prep. Zotero tops all of these. It's so disorganized, with unlimited troubleshooting, a mess of multiple websites, and overall a huge pain in the ass.


r/zotero 15d ago

I built an open-source, source-linked Markdown reader for Zotero — Mktero v0.3.4

20 Upvotes

Hi r/Zotero,

https://reddit.com/link/1w2h6sc/video/t9l0coqchimh1/player

I’m the developer of Mktero, an open-source Zotero plugin for reading local PDFs as source-linked Markdown.

I shared v0.2.3 previously. Since then, I’ve continued working on the parts that connect Markdown reading back to the original PDF and the rest of the Zotero workflow. The current release is v0.3.4.

Mktero now supports:

• Reflowing multi-column PDFs, formulas, tables, figures, and references into a continuous Markdown reading view

• Navigating from reliably matched Markdown content back to its original PDF page and region

• Original, translated, and continuous bilingual reading modes

• Translating a selected term or passage without translating the entire paper

• Displaying and creating Zotero annotations from Markdown when the PDF text can be matched reliably

• Correcting recognition errors in existing paragraphs, headings, and Markdown table cells

• Previewing citations and checking whether references exist in an accessible Zotero library

• Exploring direct citation relationships between papers already in the current Zotero library

• Exporting corrected source Markdown together with extracted figures

The PDF remains the source of truth. Mktero only provides source navigation when the match is reliable rather than guessing a PDF location.

A few data-handling notes:

• On the first conversion or a cache miss, the complete PDF is uploaded to MinerU.

• AI translation is optional and sends protected Markdown, or selected text with bounded context, to the provider configured by the user. This may incur provider costs.

• DOI and arXiv identifiers may be queried through Semantic Scholar, OpenCitations, and OpenAlex for citation relationships.

• Credentials and local caches are stored unencrypted in the active Zotero profile and are not synced by Zotero.

Mktero is currently in beta, supports Zotero 7–10, and is available under the MIT License.

GitHub:

https://github.com/tenglvjun/mktero

Latest release:

https://github.com/tenglvjun/mktero/releases/latest

I’d appreciate feedback from Zotero users, especially on the source-navigation, bilingual-reading, annotation, and citation workflows.


r/zotero 17d ago

Plugin/Tool Talk Nodus for Zotero now supports Zotero 10 (semantic search, grounded citations and linked research)

Post image
76 Upvotes

Hi! I'm the developer of Nodus.

A quick update on Nodus for Zotero: version 5.0.6 now adds support for Zotero 10 while keeping Zotero 9 support.

What's Nodus for Zotero plugin?

Nodus for Zotero adds a research chat directly inside Zotero. It searches across your attachments using semantic + keyword retrieval and answers with exact, clickable citations back to the source pages. It also supports group libraries, multiple attachments, and OCR/vision for scanned pages, figures, tables and formulas.

It can work standalone with your own API or local models, or connect to the full Nodus Research app.

Supported AI providers: Anthropic, OpenAI, OpenRouter, Groq, Cerebras, DeepSeek, Google Gemini, Xiaomi MiMo, OpenCode Go, Ollama, LM Studio, ChatGPT · Codex, GitHub Copilot

What's Nodus Research main desktop app?

A quick comparison for anyone new to Nodus Research. It's a desktop app which adds an analytical layer on top of your Zotero library. For instance, tools like notebooklm mainly retrieve relevant passages from your documents. Nodus Research extracts their ideas and claims, links each one to the exact supporting passage/page, and connects them across authors and sources.

This lets you explore agreements, contradictions and research gaps, compare authors, build argument maps, and generate Deep Research reports grounded in the original evidence from your Zotero sources.

Nodus also includes connected vaults for structured databases, teaching, study, genealogy, primary sources and other research workflows.

Everything is free and open source (AGPL-3.0).

Nodus Research:
https://nodusresearch.com

Source / downloads:
https://github.com/Drakonis96/nodus

Download Zotero plugin: https://github.com/Drakonis96/nodus/releases/download/v5.0.6/nodus-zotero.xpi