pyzotero

Featured

Interact with Zotero reference management libraries using the pyzotero Python client. Retrieve, create, update, and delete items, collections, tags, and attachments via the Zotero Web API v3. Use this skill when working with Zotero libraries programmatically, managing bibliographic references, exporting citations, searching library contents, uploading PDF attachments, or building research automation workflows that integrate with Zotero.

AI & Automation 723 stars 62 forks Updated 1 weeks ago MIT

Install

View on GitHub

Quality Score: 95/100

Stars 20%
95
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Pyzotero Pyzotero is a Python wrapper for the [Zotero API v3](https://www.zotero.org/support/dev/web_api/v3/start). Use it to programmatically manage Zotero libraries: read items and collections, create and update references, upload attachments, manage tags, and export citations. ## Authentication Setup **Required credentials** — get from https://www.zotero.org/settings/keys: - **User ID**: shown as "Your userID for use in API calls" - **API Key**: create at https://www.zotero.org/settings/keys/new - **Library ID**: for group libraries, the integer after `/groups/` in the group URL Store credentials in environment variables or a `.env` file: ``` ZOTERO_LIBRARY_ID=your_user_id ZOTERO_API_KEY=your_api_key ZOTERO_LIBRARY_TYPE=user # or "group" ``` See [references/authentication.md](references/authentication.md) for full setup details. ## Installation ```bash uv add pyzotero # or with CLI support: uv add "pyzotero[cli]" ``` ## Quick Start ```python from pyzotero import Zotero zot = Zotero(library_id='123456', library_type='user', api_key='ABC1234XYZ') # Retrieve top-level items (returns 100 by default) items = zot.top(limit=10) for item in items: print(item['data']['title'], item['data']['itemType']) # Search by keyword results = zot.items(q='machine learning', limit=20) # Retrieve all items (use everything() for complete results) all_items = zot.everything(zot.items()) ``` ## Core Concepts - A `Zotero` instance is bound to a single library (user or group). ...

Details

Author
LeonChaoX
Repository
LeonChaoX/qinyan-academic-skills
Created
5 months ago
Last Updated
1 weeks ago
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Listed

zotero

Control a local Zotero library programmatically — search, read, create, edit, tag, organize into collections, delete, and export items — via the `zot` CLI (read API + the zotero-agent bridge write endpoint). Use whenever the user wants to query or modify their Zotero library, batch-edit references, manage tags or collections, find items missing metadata (no abstract/date/DOI), find duplicates, export citations, or run arbitrary Zotero JS. Also use it to add items by DOI/ISBN/arXiv, find and merge duplicates, edit fields/tags in bulk, get library stats, format bibliographies, read or ask questions about an item's PDF, summarize a document at multiple levels (whole/chapter/section), read a PDF's highlights/annotations, generate a PDF's table of contents / bookmarks / outline so Zotero's reader can navigate it, or create notes on items. Requires the zotero-agent bridge plugin installed and Zotero running.

0 Updated today
alex-roc
Data & Documents Listed

zotero-dev-rules

Authoritative reference and rules for developing with Zotero — the Web API v3 (read/write requests, file upload, syncing, streaming, OAuth, item types & fields), the desktop client's internal JavaScript API, building Zotero 7 plugins, writing translators (web/import/export/search), and creating/editing CSL citation styles. Use whenever the user asks to query or write to a Zotero library via the API, build or debug a Zotero plugin, write a Zotero translator, work with citeproc-js / CSL styles, sync Zotero data programmatically, or script the Zotero client.

0 Updated 1 weeks ago
Agents365-ai
Data & Documents Solid

zotero

ALWAYS use this skill when the user asks to send, get, retrieve, find, share, add, or search for a paper. This skill manages the user's Zotero library with 10,000+ papers and can retrieve PDFs, create share links, add new papers, and search. Prefer this over getscipapers for any request involving sending/getting/finding papers.

1 Updated 6 days ago
hoanganhduc