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.2.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.2-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: riszotto-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 43a47cb70875bc6a4c1408e1943e486f5d8b788c692d3dabe3b4ef37fd7caf4d
MD5 fdd8e035402c0d723c04b5d8387fbd16
BLAKE2b-256 a4bd34011c2761e20fef82b1685a8c814252ebab26410d5a8836dc13e54e2ea1

See more details on using hashes here.

Provenance

The following attestation bundles were made for riszotto-0.1.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: riszotto-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 14.0 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f3f1ef64e4804ba0e9ffa66b00a7bedeea5ad29f4c8e699b9417d98abf9dc580
MD5 7ab2e70cd305d9677f8d7e34d7e93758
BLAKE2b-256 8e0074450e298cb079c06ab0b5ee594f001e85a8b7ec93a4de4e66afe9dff660

See more details on using hashes here.

Provenance

The following attestation bundles were made for riszotto-0.1.2-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