Skip to main content

CLI tool for searching and reading papers from a local Zotero library

Project description

Research Zotero - riszotto

riszotto

PyPI version Spec-Driven Development Skills Enabled

CLI tool for searching, reading, and exporting papers from your Zotero libraries — personal and group.

Requires Zotero desktop to be running with the local API enabled.

Getting Started

Requires uv.

uvx riszotto --help

For semantic search:

uvx --with "riszotto[semantic]" riszotto search --semantic "query"

Usage

# List available libraries (personal + groups)
riszotto libraries

# Search your library
riszotto search machine learning transformers

# Search a group library
riszotto search -L "My Group" "neural networks"

# Full-text search
riszotto search --full-text "attention mechanism"

# Semantic search (requires index)
riszotto search --semantic "how do transformers work"

# Filter by author or tag
riszotto search "deep learning" --author "Hinton"
riszotto search "ML" --tag "papers" --tag "2024"

# Read a paper's PDF as markdown
riszotto show ABC12345
riszotto show ABC12345 --page 2
riszotto show ABC12345 --search "methodology"

# Export BibTeX
riszotto export ABC12345

# Browse collections and recent papers
riszotto collections
riszotto recent

# Build semantic search index (per library)
riszotto index
riszotto index -L "My Group"

Group Libraries

All commands support --library / -L to target a group library by name or ID. Without it, commands default to the personal library.

For groups not synced locally, configure ~/.riszotto/config.toml for remote API access:

[zotero]
api_key = "..."   # from zotero.org/settings/keys
user_id = "..."   # from zotero.org/settings/keys

Claude Code Skill

Install the skill to help Claude Code agents use riszotto:

npx skills add https://github.com/pythonfz/riszotto

Acknowledgments

Inspired by zotero-mcp.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

riszotto-0.1.3.tar.gz (6.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

riszotto-0.1.3-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file riszotto-0.1.3.tar.gz.

File metadata

  • Download URL: riszotto-0.1.3.tar.gz
  • Upload date:
  • Size: 6.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for riszotto-0.1.3.tar.gz
Algorithm Hash digest
SHA256 894e3aab61bdda4af09541a7b9fa112aa6acb386e4e35e035229bb905596e191
MD5 afe3d30bfa8f2bba4e1e77d28c60e173
BLAKE2b-256 a6c22851d394a2d27e3339387b3fc22a26eb7a0aba719beffa34d5e02f1d62f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for riszotto-0.1.3.tar.gz:

Publisher: publish.yaml on PythonFZ/riszotto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file riszotto-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: riszotto-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for riszotto-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 488cd84c991d5d5d18640b2a8cd9b9d86958e4929993ddfdaf5fa7f1ce4e4f6d
MD5 2099681d84b3c303a67c291c3e6025d7
BLAKE2b-256 ba6f88c6c3dd4586c135ff0a51b67967d7a2da983298cad7fb9b3d52ac38353f

See more details on using hashes here.

Provenance

The following attestation bundles were made for riszotto-0.1.3-py3-none-any.whl:

Publisher: publish.yaml on PythonFZ/riszotto

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page