Servidor de protocolo de contexto de modelo para Zotero
Este proyecto es un servidor Python que implementa el Protocolo de Contexto de Modelo (MCP) para Zotero , lo que permite acceder a la biblioteca de Zotero dentro de los asistentes de IA. Su objetivo es implementar un conjunto pequeño, pero de máxima utilidad, de interacciones con Zotero para su uso con clientes MCP .
Características
Este servidor MCP proporciona las siguientes herramientas:
zotero_search_items
: busca artículos en tu biblioteca de Zotero mediante una consulta de textozotero_item_metadata
: Obtenga información detallada de metadatos sobre un elemento específico de Zoterozotero_item_fulltext
: Obtener el texto completo de un elemento específico de Zotero (es decir, contenido PDF)
Se puede descubrirlos y acceder a ellos a través de cualquier cliente MCP o a través del Inspector MCP .
Cada herramienta devuelve texto formateado que contiene información relevante de sus elementos de Zotero, y los asistentes de IA como Claude pueden usarlos secuencialmente, buscando elementos y luego recuperando sus metadatos o contenido de texto.
Instalación
Este servidor puede ejecutarse con una API local ofrecida por la aplicación de escritorio de Zotero o a través de la API web de Zotero . La API local puede ser un poco más rápida, pero requiere que la aplicación de Zotero se ejecute en el mismo equipo con la API habilitada. Para habilitar la API local, siga estos pasos:
- Abra Zotero y abra "Configuración de Zotero"
- En la pestaña "Avanzado", marque la casilla que dice "Permitir que otras aplicaciones en esta computadora se comuniquen con Zotero".
[!IMPORTANTE] Para acceder al punto final
/fulltext
en la API local, que permite recuperar el contenido completo de los elementos de su biblioteca, deberá instalar una versión beta de Zotero (a partir del 30/03/2025). Una vez lanzada la versión 7.1, esto ya no será necesario. Consulte https://github.com/zotero/zotero/pull/5004 para obtener más información. Si no desea hacerlo, utilice la API web.
Para utilizar la API web de Zotero, deberá crear una clave API y encontrar su ID de biblioteca (generalmente su ID de usuario) en la configuración de su cuenta de Zotero aquí: https://www.zotero.org/settings/keys
Estas son las opciones de configuración disponibles:
ZOTERO_LOCAL=true
: utiliza la API local de Zotero (valor predeterminado: falso, consulte la nota a continuación)ZOTERO_API_KEY
: Su clave API de Zotero (no es necesaria para la API local)ZOTERO_LIBRARY_ID
: Su ID de biblioteca de Zotero (su ID de usuario para bibliotecas de usuario, no es necesario para la API local)ZOTERO_LIBRARY_TYPE
: El tipo de biblioteca (usuario o grupo, predeterminado: usuario)
uvx
con API local de Zotero
Para usar esto con Claude Desktop y una instalación directa de Python con uvx
, agregue lo siguiente a la configuración mcpServers
:
El indicador --update
es opcional y descargará la última versión cuando haya nuevas disponibles. Si no tiene uvx
instalado, puede usar pipx run
o clonar este repositorio localmente y seguir las instrucciones de Desarrollo a continuación.
Docker con Zotero Web API
Si desea ejecutar este servidor MCP en un contenedor Docker, puede utilizar la siguiente configuración, insertando su clave API y el ID de la biblioteca:
Para actualizar a una versión más reciente, ejecute docker pull ghcr.io/kujenga/zotero-mcp:main
. También es posible usar la instalación basada en Docker para comunicarse con la API local de Zotero, pero deberá modificar el comando anterior para garantizar la conectividad de red con la interfaz de la API local de la aplicación Zotero.
Desarrollo
Información sobre cómo realizar cambios y contribuir al proyecto.
- Clonar este repositorio
- Instale las dependencias con uv ejecutando:
uv sync
- Cree un archivo
.env
en la raíz del proyecto con las variables de entorno anteriores
Iniciar el Inspector MCP para el desarrollo local:
Para probar el repositorio local contra Claude Desktop, ejecute echo $PWD/.venv/bin/zotero-mcp
en su shell dentro de este directorio, luego configure lo siguiente dentro de su configuración de Claude Desktop
Ejecución de pruebas
Para ejecutar el conjunto de pruebas:
Desarrollo de Docker
Construya la imagen del contenedor con este comando:
Para probar el contenedor con el inspector MCP, ejecute el siguiente comando:
Documentación relevante
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Este servidor permite a los usuarios interactuar con su biblioteca Zotero a través del Protocolo de Contexto de Modelo, proporcionando herramientas para buscar elementos, recuperar metadatos y acceder a texto completo mediante consultas en lenguaje natural.
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables Large Language Models to seamlessly interact with ClickHouse databases, supporting resource listing, schema retrieval, and query execution.Last updated -1PythonMIT License
- -securityAlicense-qualityA server that enables MCP clients like Anthropic Claude App to interact with local Zotero libraries, allowing users to search papers, manage notes, and access research materials through natural language.Last updated -11PythonApache 2.0
- -securityFlicense-qualityA Model Context Protocol server implementation that provides a standardized interface for interacting with Spiral's language models, offering tools to generate text from prompts, files, or web URLs.Last updated -14Python
- AsecurityAlicenseAqualityConnects your Zotero research library with Claude and other AI assistants via the Model Context Protocol, allowing you to search your library, access content, discuss papers, get summaries, and analyze citations.Last updated -1058PythonMIT License