scholar-search-mcp: Claude, Cursor 및 기타 MCP 클라이언트를 위한 학술 문헌 워크플로우 MCP 서버
요약
scholar-search-mcp는 Claude, Cursor 등 MCP 클라이언트에서 사용할 수 있는 학술 문헌 검색용 MCP 서버입니다. Semantic Scholar와 arXiv를 통합하여 병렬 검색, 중복 제거, 인용 및 저자 그래프 분석 등 실용적인 연구 워크플로우를 제공합니다.
핵심 포인트
- Semantic Scholar와 arXiv를 통합하여 단일 MCP 레이어에서 병렬 검색 및 중복 제거 지원
- 인용, 참고 문헌, 저자 프로필, 논문 추천 등 심화된 연구 그래프 도구 제공
- LLM 친화적인 정규화된 출력을 통해 에이전트 기반의 연구 워크플로우 최적화
- arXiv LaTeX 소스 다운로드 및 최대 500개의 논문 배치 처리 기능 지원
- Claude Desktop 및 Cursor 환경에서 간편하게 설치 및 설정 가능
Claude, Cursor 및 기타 MCP 클라이언트에서 학술 문헌 워크플로우를 사용할 수 있는 MCP (Model Context Protocol) 서버입니다.
이 프로젝트는 Semantic Scholar + arXiv를 하나의 통합된 도구 세트로 결합하며, 빠른 병렬 검색, 정규화된 출력, 출처 인지 중복 제거(source-aware deduplication), 그리고 실용적인 연구 유틸리티(인용, 참고 문헌, 저자 그래프, 추천 및 arXiv 소스 다운로드)를 제공합니다.
- 프로젝트 소개 (Why this project)
- 데모 영상 (Demo videos)
- 설치 (Install)
- 빠른 설정 (Quick setup) (Claude Desktop / Cursor)
- 환경 변수 (Environment variables)
- 도구 목록 (Tool list)
- MCP Inspector를 이용한 테스트 (Testing with MCP Inspector)
- 기여하기 (Contributing)
- 라이선스 (License)
대부분의 논문 관련 도구들은 하나의 소스나 하나의 API 스타일만을 선택하도록 강요합니다. scholar-search-mcp는 문헌 검색 및 그래프 검색을 위한 단일 MCP 레이어를 제공합니다:
하나의 MCP 서버, 다수의 학술 소스
무료 우선 기본 설정 (arXiv는 키 없이 작동)
LLM 친화적 출력 (후속 추론 및 에이전트 워크플로우를 위함)
단순 검색을 넘어선 실용적인 연구 작업
통합 검색: search_papers는 Semantic Scholar와 arXiv를 병렬로 실행하며, 정규화된 제목을 기준으로 중복을 제거합니다.
연구 그래프 도구: 상세 정보, 인용(citations), 참고 문헌(references), 저자 프로필/논문, 그리고 추천 기능을 제공합니다.
배치(Batch) + 소스 워크플로우: 최대 500개의 논문을 가져올 수 있으며, arXiv LaTeX 소스를 다운로드 및 추출할 수 있습니다.
운영 제어: 내장된 캐싱(caching)과 환경 변수 기반의 소스 토글(채널 활성화/비활성화)을 제공합니다.
소스 전략: Semantic Scholar와 arXiv가 내장되어 있으며, 기본적으로 무료 우선 방식(arXiv는 키가 필요 없음)을 따릅니다. 더 높은 Semantic Scholar 제한을 원하는 경우 선택적으로 API 키를 사용할 수 있습니다.
Scholar Search MCP를 사용하여 에이전트가 서베이 논문(survey paper)을 작성합니다.
pip install scholar-search-mcp
Python 3.10 이상이 필요합니다.
두 클라이언트 모두에서 동일한 서버 명령어를 사용하십시오:
{
"mcpServers": {
"scholar-search": {
...
SEMANTIC_SCHOLAR_API_KEY는 선택 사항입니다. Semantic Scholar의 더 높은 속도 제한(rate limits)을 원하는 경우에만 추가하십시오:
{
"mcpServers": {
"scholar-search": {
...
차이점:
Claude Desktop: 로컬 설정 파일을 직접 편집합니다.
Cursor: Cursor 설정 UI(또는 해당 설정 JSON)에서 MCP 서버를 추가합니다.
Claude Desktop 설정 파일 위치:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
| 변수 | 설명 |
|---|---|
SEMANTIC_SCHOLAR_API_KEY | 선택 사항. Semantic Scholar의 호출 제한(rate limits)을 증가시킵니다. |
SCHOLAR_SEARCH_ENABLE_SEMANTIC_SCHOLAR | true/false, 기본값은 true입니다. |
SCHOLAR_SEARCH_ENABLE_ARXIV | true/false, 기본값은 true입니다. |
SCHOLAR_SEARCH_CACHE_DIR | 선택적 캐시 디렉토리 경로입니다. |
SCHOLAR_SEARCH_CACHE_TTL_SECONDS | 초 단위의 캐시 TTL(Time To Live)이며, 기본값은 86400입니다. |
SCHOLAR_ARXIV_SOURCE_DIR | 추출된 arXiv 소스의 기본 상위 디렉토리입니다. |
예시 (arXiv만 활성화 시):
{
"SCHOLAR_SEARCH_ENABLE_SEMANTIC_SCHOLAR": "false",
"SCHOLAR_SEARCH_ENABLE_ARXIV": "true"
...
}
| 도구 | 목적 |
|---|---|
search_papers | 선택적 limit, fields, year, venue를 사용하여 논문을 검색합니다. |
get_paper_details | DOI, arXiv ID, S2 ID 또는 URL을 통해 논문 하나를 가져옵니다. |
get_paper_citations | 주어진 논문을 인용한 논문들을 가져옵니다. |
get_paper_references | 주어진 논문의 참고 문헌(references)을 가져옵니다. |
get_author_info | ID를 통해 저자 프로필을 가져옵니다. |
get_author_papers | 주어진 저자의 논문들을 가져옵니다. |
get_paper_recommendations | 유사한 논문 추천을 가져옵니다. |
batch_get_papers | 배치로 논문 세부 정보(최대 500개 ID)를 가져옵니다. |
download_arxiv_source | arXiv 소스 번들(tar.gz)을 다운로드하고 추출합니다. |
npm install -g @modelcontextprotocol/inspector
mcp-inspector python -m scholar_search_mcp
이슈(Issues) 및 PR도 환영합니다: 레포지토리를 포크(fork)하고, 브랜치를 생성하며, 유효성 검사/테스트를 추가한 후 명확한 이전/이후 동작을 담아 PR을 열어주세요.
MIT
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기