masaki39-zotero-mcp


Namemasaki39-zotero-mcp JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryMCP server for Zotero integration - search, retrieve, and extract PDF text from your Zotero library
upload_time2025-10-06 22:19:02
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseNone
keywords zotero mcp model-context-protocol pdf research bibliography
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Zotero MCP Server

An MCP (Model Context Protocol) server that integrates with Zotero's local API to search, retrieve, and extract full text from PDFs in your Zotero library.

## Prerequisites

- Zotero application with local API enabled
- Python 3.12 or higher
- uv or pip package manager

## Enable Zotero Local API

In Zotero's settings (Preferences → Advanced → General), enable:

☑️ **Allow other applications on this computer to communicate with Zotero**

## Configuration

Add the following to your MCP client configuration file (e.g., `mcp.json` for Claude Desktop or Cursor):

```json
{
  "mcpServers": {
    "zotero": {
      "command": "uvx",
      "args": ["masaki39-zotero-mcp"]
    }
  }
}
```

## Available Tools

| Tool | Parameters | Description |
|------|------------|-------------|
| `zotero_search_items` | `q` (optional) | Search items in your Zotero library by author name or title. Returns up to 30 matching items (excluding attachments). |
| `zotero_get_item` | `itemKey` (required) | Retrieve detailed information about a specific item including title, authors, publication info, abstract, tags, etc. |
| `zotero_read_pdf` | `itemKey` (required) | Extract full text from a PDF attachment associated with a Zotero item. |
| `read_pdf` | `local_path` (required) | Extract full text from a PDF file at a local file path. Can be used with filesystem MCP servers. |

## Example Usage

Once configured, you can use these tools through your MCP client:

- "Search my Zotero library for papers about machine learning"
- "Get details for item ABCD1234"
- "Extract the text from the PDF attached to item ABCD1234"

## License

MIT License - see [LICENSE](LICENSE) file for details.

## Contributing

Issues and pull requests are welcome at https://github.com/masaki39/zotero-mcp



            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "masaki39-zotero-mcp",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "zotero, mcp, model-context-protocol, pdf, research, bibliography",
    "author": null,
    "author_email": "masaki39 <masaki39@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/cb/48/5b5b6ceb76c99a19fd0e5cfffa22f23f29fef61598863734bd69b9448834/masaki39_zotero_mcp-0.1.1.tar.gz",
    "platform": null,
    "description": "# Zotero MCP Server\n\nAn MCP (Model Context Protocol) server that integrates with Zotero's local API to search, retrieve, and extract full text from PDFs in your Zotero library.\n\n## Prerequisites\n\n- Zotero application with local API enabled\n- Python 3.12 or higher\n- uv or pip package manager\n\n## Enable Zotero Local API\n\nIn Zotero's settings (Preferences \u2192 Advanced \u2192 General), enable:\n\n\u2611\ufe0f **Allow other applications on this computer to communicate with Zotero**\n\n## Configuration\n\nAdd the following to your MCP client configuration file (e.g., `mcp.json` for Claude Desktop or Cursor):\n\n```json\n{\n  \"mcpServers\": {\n    \"zotero\": {\n      \"command\": \"uvx\",\n      \"args\": [\"masaki39-zotero-mcp\"]\n    }\n  }\n}\n```\n\n## Available Tools\n\n| Tool | Parameters | Description |\n|------|------------|-------------|\n| `zotero_search_items` | `q` (optional) | Search items in your Zotero library by author name or title. Returns up to 30 matching items (excluding attachments). |\n| `zotero_get_item` | `itemKey` (required) | Retrieve detailed information about a specific item including title, authors, publication info, abstract, tags, etc. |\n| `zotero_read_pdf` | `itemKey` (required) | Extract full text from a PDF attachment associated with a Zotero item. |\n| `read_pdf` | `local_path` (required) | Extract full text from a PDF file at a local file path. Can be used with filesystem MCP servers. |\n\n## Example Usage\n\nOnce configured, you can use these tools through your MCP client:\n\n- \"Search my Zotero library for papers about machine learning\"\n- \"Get details for item ABCD1234\"\n- \"Extract the text from the PDF attached to item ABCD1234\"\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## Contributing\n\nIssues and pull requests are welcome at https://github.com/masaki39/zotero-mcp\n\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "MCP server for Zotero integration - search, retrieve, and extract PDF text from your Zotero library",
    "version": "0.1.1",
    "project_urls": {
        "Homepage": "https://github.com/masaki39/zotero-mcp",
        "Issues": "https://github.com/masaki39/zotero-mcp/issues",
        "Repository": "https://github.com/masaki39/zotero-mcp"
    },
    "split_keywords": [
        "zotero",
        " mcp",
        " model-context-protocol",
        " pdf",
        " research",
        " bibliography"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fc8414aeb7f7492d3ee0d675a5c8b7b503eb484efcca831891f0446248f629f5",
                "md5": "b6c5ea09a8754e1d95447aa0ac5bbfe9",
                "sha256": "40bccaaf26992a2f3140c68b1fdb7b0b9c9ff24e50a278edac20224229b32e4c"
            },
            "downloads": -1,
            "filename": "masaki39_zotero_mcp-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b6c5ea09a8754e1d95447aa0ac5bbfe9",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 6234,
            "upload_time": "2025-10-06T22:19:00",
            "upload_time_iso_8601": "2025-10-06T22:19:00.278692Z",
            "url": "https://files.pythonhosted.org/packages/fc/84/14aeb7f7492d3ee0d675a5c8b7b503eb484efcca831891f0446248f629f5/masaki39_zotero_mcp-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cb485b5b6ceb76c99a19fd0e5cfffa22f23f29fef61598863734bd69b9448834",
                "md5": "fc6979dfd1b5282e6bfd06e113698470",
                "sha256": "c13ba27d878f7024909401b4fb731b7f505fe3547fac34763c29ba3929757d77"
            },
            "downloads": -1,
            "filename": "masaki39_zotero_mcp-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "fc6979dfd1b5282e6bfd06e113698470",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 5679,
            "upload_time": "2025-10-06T22:19:02",
            "upload_time_iso_8601": "2025-10-06T22:19:02.024555Z",
            "url": "https://files.pythonhosted.org/packages/cb/48/5b5b6ceb76c99a19fd0e5cfffa22f23f29fef61598863734bd69b9448834/masaki39_zotero_mcp-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-06 22:19:02",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "masaki39",
    "github_project": "zotero-mcp",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "masaki39-zotero-mcp"
}
        
Elapsed time: 1.45628s