zotero-mcp
by arashgmn
README.md
# zotero-mcp
MCP server for interacting with your Zotero library via the [Zotero Local API](https://www.zotero.org/support/dev/web_api/v3/local_api).
## Prerequisites
- Zotero desktop application running
- Local API enabled: Zotero → Settings → Advanced → check "Allow other applications on this computer to communicate with Zotero"
## Install
```bash
uvx zotero-mcp
```
Or install permanently:
```bash
pip install zotero-mcp
```
## Configuration
### opencode
Add to `~/.config/opencode/opencode.json`:
```json
{
"mcp": {
"zotero": {
"type": "local",
"command": ["uvx", "zotero-mcp"],
"enabled": true
}
}
}
```
### Claude Desktop / Other MCP Clients
```json
{
"mcpServers": {
"zotero": {
"command": "uvx",
"args": ["zotero-mcp"]
}
}
}
```
## Tools
| Tool | Description |
|------|-------------|
| `zotero_search_items` | Full-text search with type/tag/collection filters |
| `zotero_get_item` | Get complete item metadata |
| `zotero_get_item_fulltext` | Get PDF/attachment text content |
| `zotero_list_collections` | Browse collection hierarchy |
| `zotero_list_collection_items` | List items in a collection |
| `zotero_list_tags` | List all tags with counts |
| `zotero_create_item` | Create new items (book, article, thesis, etc.) |
| `zotero_update_item` | Update item fields |
| `zotero_add_note` | Attach notes to items |
| `zotero_add_tags` | Add tags to items |
| `zotero_delete_item` | Move items to trash |
| `zotero_get_citation` | Generate formatted citations (APA, MLA, Chicago, etc.) |
## Development
```bash
# Clone
git clone <your-repo-url>
cd zotero-mcp
# Install dependencies
uv sync
# Test with MCP Inspector
npx @modelcontextprotocol/inspector uv run zotero-mcp
# Run directly
uv run zotero-mcp
```
## License
MIT
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessSyncing