zotero-api-skill

Zotero HTTP API helper for downloading, fetching, searching, creating, and updating Zotero items. Use when syncing or managing Zotero items programmatically; defaults to ZOTERO_USER and ZOTERO_API_KEY environment variables.

16 stars

Best use case

zotero-api-skill is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Zotero HTTP API helper for downloading, fetching, searching, creating, and updating Zotero items. Use when syncing or managing Zotero items programmatically; defaults to ZOTERO_USER and ZOTERO_API_KEY environment variables.

Teams using zotero-api-skill should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/zotero-api-skill/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/development/zotero-api-skill/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/zotero-api-skill/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How zotero-api-skill Compares

Feature / Agentzotero-api-skillStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Zotero HTTP API helper for downloading, fetching, searching, creating, and updating Zotero items. Use when syncing or managing Zotero items programmatically; defaults to ZOTERO_USER and ZOTERO_API_KEY environment variables.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Zotero API Skill

## Overview
Use `scripts/zotero_cli.py` to perform deterministic Zotero API operations: download items to disk, fetch a single item, search items, create new items, or write updated metadata back to Zotero. The script reads `ZOTERO_USER` (user ID) and `ZOTERO_API_KEY` from the environment unless overridden by flags.

## Quick Start

Download all items (skip attachments by default):
```bash
zotero-api-skill/scripts/zotero_cli.py download --output-dir ./output
```

Fetch a single item as JSON:
```bash
zotero-api-skill/scripts/zotero_cli.py get --key ABCD1234
```

Update an item from a JSON file:
```bash
zotero-api-skill/scripts/zotero_cli.py update --key ABCD1234 --input ./output/ABCD1234/original.json
```

Search items by query:
```bash
zotero-api-skill/scripts/zotero_cli.py search --query "transformer retrieval" --limit 10
```

Create an item from data JSON:
```bash
zotero-api-skill/scripts/zotero_cli.py create --input ./new_item.json --data-only
```

## Tasks

### Download items
Use `download` to save each item into its own directory under `--output-dir`. The script writes `original.json` and a dated `original-MM-DD.json` snapshot.

Common options:
- `--limit`: page size for Zotero API pagination.
- `--max-items`: stop after N items.
- `--include-attachments`: include attachment items.
- `--start`: start offset for pagination.
- `--no-snapshot`: skip the dated snapshot file.

### Fetch a single item
Use `get` with `--key` to print the item JSON to stdout, or pass `--output` to save it to a file.

### Search items
Use `search` with `--query` to run a Zotero quicksearch. Optional filters: `--qmode`, `--item-type`, `--tag`, `--start`, `--limit`.

### Create items
Use `create` with `--input` to POST new item data. The input file can be:
- A list of data objects (array), or
- A single data object, or
- A list of full Zotero items (with a top-level `data` field).

### Update item metadata
Use `update` with `--key` and `--input` to PUT item metadata. The input file can be:
- A full Zotero item JSON (with a top-level `data` field), or
- A data-only object (set `--data-only` to force this).

Prefer updating from a freshly fetched item so required fields like `itemType`, `key`, and `version` stay consistent.

## Notes
- The script uses Zotero API version 3 and retries on transient HTTP errors.
- If you need the same update flow as the repo, edit the `data` payload and use `update` to write back.

Related Skills

zotero-search

16
from diegosouzapw/awesome-omni-skill

Search the user's local Zotero library, find related papers via Semantic Scholar, and discover citations/references. **Claude Code only** - this skill requires a local Zotero instance and access to a port on localhost. Use when the user asks to search their Zotero library, find papers on a topic, explore citations of a paper, or find related literature. Supports cross-referencing Semantic Scholar results against the local library.

zotero-mcp

16
from diegosouzapw/awesome-omni-skill

Interface with Zotero's MCP server to search and retrieve bibliographic data using advanced semantic search and multi-strategy approaches. Designed for output as a plain markdown formatted outline, suitable for pasting into Logseq. Also offers side-by-side translation of Chinese titles and abstracts for improved English language search within Logseq. Context-aware - uses agents in Claude Code, batched searches in Claude Desktop.

zotero-mcp-code

16
from diegosouzapw/awesome-omni-skill

Search Zotero library using code execution for efficient multi-strategy searches without crash risks. Use this skill when the user needs comprehensive Zotero searches with automatic deduplication and ranking.

bgo

10
from diegosouzapw/awesome-omni-skill

Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.

Coding & Development

azure-eventhub-dotnet

16
from diegosouzapw/awesome-omni-skill

Azure Event Hubs SDK for .NET.

azure-eventgrid-py

16
from diegosouzapw/awesome-omni-skill

Azure Event Grid SDK for Python. Use for publishing events, handling CloudEvents, and event-driven architectures.

azure-enterprise-governance

16
from diegosouzapw/awesome-omni-skill

Enterprise-grade Azure governance, security, and compliance framework. Combines Microsoft Cloud Adoption Framework (CAF) naming standards with comprehensive security architecture (Zero Trust), compliance frameworks (NIST, SOC2, PCI-DSS, HIPAA), and best practices. Provides naming validation, security audits, RBAC design, and compliance checklists for production-ready Azure deployments.

azure-diagrams

16
from diegosouzapw/awesome-omni-skill

Visualizes Azure infrastructure from ARM templates, Azure CLI, or descriptions. Use when user has Azure resources to diagram.

azure-diagnostics

16
from diegosouzapw/awesome-omni-skill

Debug and troubleshoot production issues on Azure. Covers Container Apps and Function Apps diagnostics, log analysis with KQL, health checks, and common issue resolution for image pulls, cold starts, health probes, and function invocation failures. USE FOR: debug production issues, troubleshoot container apps, troubleshoot function apps, troubleshoot Azure Functions, analyze logs with KQL, fix image pull failures, resolve cold start issues, investigate health probe failures, check resource health, view application logs, find root cause of errors, function app not working, function invocation failures DO NOT USE FOR: deploying applications (use azure-deploy), creating new resources (use azure-prepare), setting up monitoring (use azure-observability), cost optimization (use azure-cost-optimization)

azure-devops

16
from diegosouzapw/awesome-omni-skill

Complete Azure DevOps automation - boards, repos, pipelines, artifacts

azure-deployment

16
from diegosouzapw/awesome-omni-skill

Deploys applications to Azure using Azure Dev CLI, Bicep infrastructure as code, and GitHub Actions CI/CD. Use this skill when asked to deploy to Azure, create infrastructure, set up CI/CD, configure Azure resources, or create deployment pipelines.

azure-deploy

16
from diegosouzapw/awesome-omni-skill

Deploy applications to Azure App Service, Azure Functions, and Static Web Apps. Analyzes projects to recommend services, provides local preview, and guides deployment. Use phrases like "what Azure service should I use", "analyze my project for Azure", "preview locally", "guide me through deployment".