Skip to content
Back to skills

Reference Manager Interop

ASecurity

Move and sync reference libraries between Zotero, Mendeley, EndNote, JabRef, Paperpile and writing tools (LaTeX/BibTeX, Word, Google Docs, Pandoc, Quarto, Overleaf). Use when converting RIS, BibTeX, BibLaTeX or CSL-JSON files, migrating a library, setting up auto-exported .bib files, choosing a citation style (CSL), or fixing citations lost between tools. Includes a zero-dependency BibTeX/RIS/CSL-JSON converter.

  • 7 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 4, 2026
researchpythongobashgitapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add KalarisLabs/research-agent-skills --skill reference-manager-interop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Reference Manager Interop?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Reference Manager Interop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kalarislabs-reference-manager-interop/badge)](https://www.skillsdirectory.com/skills/kalarislabs-reference-manager-interop)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: reference-manager-interop
description: Move and sync reference libraries between Zotero, Mendeley, EndNote, JabRef, Paperpile and writing tools (LaTeX/BibTeX, Word, Google Docs, Pandoc, Quarto, Overleaf). Use when converting RIS, BibTeX, BibLaTeX or CSL-JSON files, migrating a library, setting up auto-exported .bib files, choosing a citation style (CSL), or fixing citations lost between tools. Includes a zero-dependency BibTeX/RIS/CSL-JSON converter.
license: MIT
compatibility: Python 3.9+ standard library for scripts/convert_refs.py; Pandoc optional for rendering with CSL styles.
metadata:
  version: "1.0"
  category: literature-review
  maintainer: Kalaris Labs
  author: Kalaris Labs (Sayan Chowdhury)
  tags: Zotero, Mendeley, EndNote, JabRef, BibTeX, RIS, CSL-JSON, Pandoc, Quarto, Overleaf, reference manager
---

# Reference Manager Interoperability

Every reference manager speaks at least one of three interchange formats:

| Format | Best for | Notes |
|---|---|---|
| **BibTeX / BibLaTeX** (`.bib`) | LaTeX, Overleaf, JabRef | BibLaTeX adds `@online`, `@dataset`, `@software`, UTF-8 via biber |
| **RIS** (`.ris`) | EndNote, Mendeley, Scopus/WoS/PubMed exports | Tag-per-line, loses some structure (e.g. corporate authors) |
| **CSL-JSON** (`.json`) | Pandoc, Quarto, Zotero, citeproc-js, Word/Docs plugins | The richest *interchange* format, native to citation styles |

## Convert between formats

```bash
python scripts/convert_refs.py library.ris references.bib        # EndNote/Mendeley -> LaTeX
python scripts/convert_refs.py references.bib references.json    # LaTeX -> Pandoc/Quarto
python scripts/convert_refs.py export.json out.ris --from csljson --to ris
```

Conversion is lossy for exotic fields. Always diff counts (`grep -c "^@" refs.bib`,
`grep -c "^TY  -" lib.ris`) and spot-check authors with particles (van, de, von)
and corporate authors. Then run the `bibtex-hygiene` linter on any produced `.bib`.

## Tool-specific recipes

**Zotero (recommended hub)**
- Install the *Better BibTeX* plugin, then right-click a collection → *Export* → *Keep updated*
  to write an auto-refreshing `.bib` next to the manuscript with stable citation keys.
- Programmatic access: the `pyzotero` skill (Zotero Web API; needs a user API key).
- Word/Google Docs: the Zotero connector plugins insert live citations and bibliography.

**Mendeley Reference Manager**
- Export: select references → *Export* → BibTeX (`.bib`), RIS or EndNote XML.
- To migrate to Zotero: import the `.ris`/`.bib` export, or use Zotero's built-in Mendeley importer.
- Don't build new automation against Mendeley's web API. Work from exported files instead.

**EndNote**
- Export: *File → Export* with output style "RefMan (RIS) Export" (`.ris`) or XML.
- Import `.ris` back with the "Reference Manager (RIS)" filter. Check the encoding is UTF-8.

**JabRef**: native BibTeX/BibLaTeX. Use *Quality → Cleanup entries* and *Check integrity* before submission.

**Overleaf**: link a Zotero/Mendeley account or upload the `.bib`. With an auto-exported
Better BibTeX file, re-upload it or sync via Git.

## Rendering citations with CSL styles (Pandoc / Quarto)

```bash
pandoc paper.md --citeproc --bibliography references.json --csl nature.csl -o paper.docx
```

Quarto front matter:

```yaml
bibliography: references.json
csl: apa.csl          # fetch from https://github.com/citation-style-language/styles
```

Pick the exact style file for the target journal from the CSL repository (over 10,000 styles).
Never approximate a journal's style by editing a similar one unless none exists.

## Migration checklist

1. Export from the source tool in its **richest** format (CSL-JSON or native XML > RIS > BibTeX).
2. Record the reference count before and after.
3. Convert with `scripts/convert_refs.py` if the target cannot import the source format.
4. Import, then check 10 random entries for authors, title case, container, year, DOI.
5. Re-attach PDFs separately. Attachments never travel inside RIS/BibTeX/CSL-JSON.
6. Rebuild citation keys only if the manuscript does not already cite the old keys.

## Related skills

`bibtex-hygiene`, `citation-verification`, `citation-management`, `pyzotero`.

Files in this skill

  • SKILL.md4.1 KB
  • scripts/convert_refs.py10.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…