Skip to main content

jabref-mcp

A Model Context Protocol server that lets OpenCode (and other MCP clients) work with your JabRef 5.x bibliography:

  • Search your library (title / author / year / keywords / DOI and other BibTeX fields)
  • Read full records (BibTeX + abstract) and resolve attached PDF paths, so the assistant can read and summarize papers itself
  • Add new entries through JabRef's command-line import, never by editing your .bib files

Why this shape (JabRef 5.x)

JabRef 5.x does not expose a supported HTTP read API for this project, so:

Operation Mechanism
Search / read / list parse your .bib file(s) locally
Add an entry jabref --importBibtex "<bibtex>" through JabRef's command-line interface. When JabRef's single-instance/remote-operation feature is enabled, the command can be forwarded to the running instance and its currently open library.

The MCP transport is stdio: the server is launched as a local process and does not listen on a network port. JabRef's remote-operation setting is a separate JabRef feature.

Requirements

  • Python ≥ 3.10 and uv
  • JabRef 5.x installed, with jabref on PATH (or JABREF_MCP_JABREF_BIN set)
  • To add entries to an already-running JabRef instance, enable Enforce single JabRef instance (and allow remote operations) under Preferences → General. In older JabRef 5.x releases this option may be under Network.

Configuration (environment variables)

Variable Default Meaning
JABREF_MCP_BIB_FILES *.bib in the working directory Comma-separated .bib paths
JABREF_MCP_PDF_ROOT — Optional base dir for resolving relative attached paths
JABREF_MCP_JABREF_BIN jabref / JabRef on PATH JabRef executable or command prefix (e.g. flatpak-spawn --host jabref)
JABREF_MCP_IMPORT_TIMEOUT 90 Import timeout (seconds)

Run / install

From a checkout (development):

uv sync
uv run jabref-mcp

From PyPI (published releases):

uvx jabref-mcp

Before a release is published, uvx can build straight from the GitHub repo:

uvx --from git+https://github.com/ast0815/jabref-mcp jabref-mcp

Register with OpenCode

A project-level registration is already provided in opencode.jsonc (it runs uv run jabref-mcp, i.e. the code in this checkout). To use it, start OpenCode from this directory. Alternatively register globally:

opencode mcp add jabref -- uvx jabref-mcp

(Add --global to make it available in every project; then set JABREF_MCP_BIB_FILES to your real libraries.) Check the connection with opencode mcp list — it should report connected. Tools appear under tools.jabref.*.

Tools

  • list_libraries — configured libraries and entry counts
  • list_entries — overview of every entry
  • search — keyword search with field / author / year / tag filters
  • get_entry — full BibTeX + resolved attached files for a citation key
  • get_pdf — absolute paths of the PDFs attached to an entry (feed to the assistant's PDF reader for summarizing)
  • add_entry — import BibTeX via the official JabRef CLI (the only write path)

Notes

  • The server reads the .bib files; it never writes to them. Additions go through JabRef, which handles duplicate detection and library updates. add_entry returns after dispatching the import; JabRef may still require you to accept it and save the library. After saving, verify with search using stable metadata such as title, DOI, or author because JabRef may replace the submitted citation key.
  • Configured .bib files are cached, but checked for changes before every read. After JabRef saves a library, the next MCP read automatically reparses only the changed file; restarting the MCP is not required.
  • This project targets JabRef 5.x. JabRef 6.x has a different CLI/API surface and is not claimed to be supported.

Release files for jabref-mcp 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jabref-mcp 0.2.0
File Size Uploaded
jabref_mcp-0.2.0.tar.gz 135.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jabref-mcp 0.2.0
File Interpreter ABI Platform
jabref_mcp-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 151.5 kB

Release files / jabref_mcp-0.2.0.tar.gz

Download URL jabref_mcp-0.2.0.tar.gz
Size 135.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f2fbb26e0ef1ccbd5924d369df280b63d80c20e3babc66cb6104cf61c06b2313
BLAKE2b-256 checksum
How to use checksums
29d939b7499efa1cb782f31d394b478d9dba2fa2387b198419f482c055e6058e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / jabref_mcp-0.2.0-py3-none-any.whl

Download URL jabref_mcp-0.2.0-py3-none-any.whl
Size 15.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c47942ba2b9cfe371509518b2675d4405805b26cdcd3bc8fdd0db6050d5348a6
BLAKE2b-256 checksum
How to use checksums
5f65ff66ffa6a4b799a34105759c03c6f308e53e94fa1b26ac327cba044f692b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page