Zotero용 모델 컨텍스트 프로토콜 서버
이 프로젝트는 Zotero 용 모델 컨텍스트 프로토콜(MCP)을 구현하는 파이썬 서버로, AI 어시스턴트 내에서 Zotero 라이브러리에 접근할 수 있도록 합니다. MCP 클라이언트 에서 사용할 수 있도록 작지만 최대한 유용한 Zotero 상호작용 세트를 구현하는 것을 목표로 합니다.
특징
이 MCP 서버는 다음과 같은 도구를 제공합니다.
zotero_search_items
: 텍스트 쿼리를 사용하여 Zotero 라이브러리에서 항목을 검색합니다.zotero_item_metadata
: 특정 Zotero 항목에 대한 자세한 메타데이터 정보를 가져옵니다.zotero_item_fulltext
: 특정 Zotero 항목(예: PDF 내용)의 전체 텍스트를 가져옵니다.
이러한 정보는 모든 MCP 클라이언트나 MCP Inspector를 통해 검색하고 접근할 수 있습니다.
각 도구는 Zotero 항목에서 관련 정보가 포함된 서식이 지정된 텍스트를 반환하고, Claude와 같은 AI 도우미는 이를 순차적으로 사용하여 항목을 검색한 다음 메타데이터나 텍스트 콘텐츠를 검색할 수 있습니다.
설치
이 서버는 Zotero 데스크톱 애플리케이션에서 제공하는 로컬 API 또는 Zotero 웹 API를 통해 실행할 수 있습니다. 로컬 API는 응답 속도가 다소 더 빠르지만, Zotero 앱이 해당 API를 활성화한 동일한 컴퓨터에서 실행되어야 합니다. 로컬 API를 활성화하려면 다음 단계를 따르세요.
- Zotero를 열고 "Zotero 설정"을 엽니다.
- "고급" 탭에서 "이 컴퓨터의 다른 응용 프로그램이 Zotero와 통신하도록 허용"이라는 상자를 체크하세요.
[!중요] 라이브러리 항목의 전체 콘텐츠를 검색할 수 있는 로컬 API의
/fulltext
엔드포인트에 접근하려면 Zotero 베타 빌드 (2025년 3월 30일 기준)를 설치해야 합니다. 7.1이 출시되면 이 기능은 더 이상 제공되지 않습니다. 자세한 내용은 https://github.com/zotero/zotero/pull/5004를 참조하세요. 이 기능을 원하지 않으면 웹 API를 사용하세요.
Zotero 웹 API를 사용하려면 API 키를 생성하고 여기 Zotero 계정 설정에서 라이브러리 ID(일반적으로 사용자 ID)를 찾아야 합니다: https://www.zotero.org/settings/keys
사용 가능한 구성 옵션은 다음과 같습니다.
ZOTERO_LOCAL=true
: 로컬 Zotero API를 사용합니다(기본값: false, 아래 참고 사항 참조)ZOTERO_API_KEY
: Zotero API 키(로컬 API에는 필요하지 않음)ZOTERO_LIBRARY_ID
: Zotero 라이브러리 ID(사용자 라이브러리의 경우 사용자 ID이며 로컬 API에는 필요하지 않음)ZOTERO_LIBRARY_TYPE
: 라이브러리 유형(사용자 또는 그룹, 기본값: 사용자)
로컬 Zotero API를 사용한 uvx
Claude Desktop과 uvx
를 사용한 직접 Python 설치와 함께 사용하려면 다음을 mcpServers
구성에 추가하세요.
지엑스피1
--update
플래그는 선택 사항이며, 새 버전이 출시되면 최신 버전을 가져옵니다. uvx
설치되어 있지 않으면 pipx run
사용하거나, 이 저장소를 로컬로 복제한 후 아래 개발 섹션 의 지침을 따르세요.
Zotero 웹 API를 사용한 Docker
Docker 컨테이너에서 이 MCP 서버를 실행하려면 다음 구성을 사용하고 API 키와 라이브러리 ID를 삽입할 수 있습니다.
최신 버전으로 업데이트하려면 docker pull ghcr.io/kujenga/zotero-mcp:main
실행하세요. docker 기반 설치를 사용하여 로컬 Zotero API와 통신할 수도 있지만, Zotero 애플리케이션의 로컬 API 인터페이스에 네트워크로 연결되도록 위 명령을 수정해야 합니다.
개발
프로젝트에 변경 사항을 적용하고 기여하는 방법에 대한 정보입니다.
- 이 저장소를 복제하세요
uv sync
실행하여 uv 로 종속성을 설치합니다.- 위의 환경 변수를 사용하여 프로젝트 루트에
.env
파일을 만듭니다.
로컬 개발을 위한 MCP 검사기 시작:
Claude Desktop에 대해 로컬 저장소를 테스트하려면 이 디렉토리 내의 셸에서 echo $PWD/.venv/bin/zotero-mcp
실행한 다음 Claude Desktop 구성 내에서 다음을 설정합니다.
테스트 실행
테스트 모음을 실행하려면:
도커 개발
다음 명령어로 컨테이너 이미지를 빌드합니다.
MCP 검사기로 컨테이너를 테스트하려면 다음 명령을 실행하세요.
관련 문서
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
이 서버를 사용하면 사용자는 모델 컨텍스트 프로토콜을 통해 Zotero 라이브러리와 상호 작용할 수 있으며, 자연어 쿼리를 사용하여 항목 검색, 메타데이터 검색, 전체 텍스트 액세스를 위한 도구를 제공합니다.
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