Suppr MCP
Suppr MCP - 사용 가이드 | 문서 번역 및 중국어 PubMed 검색 MCP 서비스 | Suppr 초능력 문헌
Suppr MCP 서버
Suppr (초능력 문헌)은 WildData에서 제공하는 AI 기반 학술 도구 플랫폼입니다. 이 MCP 서버는 AI 어시스턴트에게 문서 번역 및 문헌 검색 기능을 제공합니다.
🌐 AI 문서 번역 — PDF, Word (.docx), Excel (.xlsx), PowerPoint (.pptx), TXT 및 HTML 문서를 13개 언어로 번역합니다. 원본 서식을 유지하며, 소스 언어를 자동으로 감지합니다.
🔬 PubMed 학술 검색 — 수백만 건의 생의학 연구 논문을 대상으로 의미론적 문헌 검색을 수행합니다. DOI, PMID, 저널 영향력 지수(Impact Factor), 인용 횟수, 저자 소속, 초록 및 논문 직접 링크 등 구조화된 메타데이터를 반환합니다.
🤖 MCP 호환 — Claude Desktop, Cursor, Windsurf 및 모든 Model Context Protocol 클라이언트와 호환됩니다.
설치
npx suppr-mcpRelated MCP server: Paperlib MCP
빠른 시작
1. 설치
전역 설치:
npm install -g suppr-mcp또는 npx 사용 (설치 불필요):
npx suppr-mcp2. API Key 획득
Suppr API에 접속하여 API 키를 발급받으세요.
3. 환경 변수 설정
export SUPPR_API_KEY=your_api_key_here4. MCP 클라이언트에서 사용
Claude Desktop 설정
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) 또는 해당 설정 파일을 편집하세요:
{
"mcpServers": {
"suppr": {
"command": "npx",
"args": ["-y", "suppr-mcp"],
"env": {
"SUPPR_API_KEY": "your_api_key_here"
}
}
}
}또는 전역 설치 사용:
{
"mcpServers": {
"suppr": {
"command": "suppr-mcp",
"env": {
"SUPPR_API_KEY": "your_api_key_here"
}
}
}
}사용 가능한 도구
1. create_translation - 번역 작업 생성
문서 번역 작업을 생성합니다.
매개변수:
file_path(file_path와 file_url 중 택일): 소스 파일 경로file_url(file_path와 file_url 중 택일): 번역할 문서 URLto_lang(필수): 대상 언어 코드from_lang(선택): 소스 언어 코드 (기본값: 자동 감지)optimize_math_formula(선택): 수학 공식 최적화 (PDF 전용)
예시:
{
"file_url": "https://example.com/document.pdf",
"to_lang": "en",
"from_lang": "zh",
"optimize_math_formula": true
}반환값:
{
"task_id": "02a6c6d1-3f70-4a5a-80bc-971d53a37bb1",
"status": "INIT",
"consumed_point": 453,
"source_lang": "zh",
"target_lang": "en",
"optimize_math_formula": true
}2. get_translation - 번역 상세 정보 조회
번역 작업의 상세 정보 및 상태를 조회합니다.
매개변수:
task_id(필수): 번역 작업 ID
예시:
{
"task_id": "02a6c6d1-3f70-4a5a-80bc-971d53a37bb1"
}반환값:
{
"task_id": "02a6c6d1-3f70-4a5a-80bc-971d53a37bb1",
"status": "DONE",
"progress": 1.0,
"consumed_point": 453,
"source_file_name": "document.pdf",
"source_file_url": "https://example.com/source.pdf",
"target_file_url": "https://example.com/translated.pdf",
"source_lang": "zh",
"target_lang": "en",
"error_msg": null,
"optimize_math_formula": true
}작업 상태 설명:
INIT: 초기화PROGRESS: 진행 중DONE: 완료ERROR: 오류
3. list_translations - 번역 작업 목록 조회
번역 작업 목록을 조회하며, 페이징을 지원합니다.
매개변수:
offset(선택): 페이징 오프셋, 기본값 0limit(선택): 페이지당 개수, 기본값 20
예시:
{
"offset": 0,
"limit": 10
}반환값:
{
"total": 42,
"offset": 0,
"limit": 10,
"list": [
{
"task_id": "...",
"status": "DONE",
"progress": 1.0,
...
}
]
}4. search_documents - 문헌 검색
AI 기반 문헌 의미론적 검색.
매개변수:
query(필수): 자연어 쿼리topk(선택): 최대 반환 개수 (1-100, 기본값 20)return_doc_keys(선택): 반환 필드 지정auto_select(선택): 최적 결과 자동 선택 (기본값 true)
예시:
{
"query": "糖尿病最新研究进展",
"topk": 5,
"return_doc_keys": ["title", "abstract", "doi", "authors"],
"auto_select": true
}사용 가능한 반환 필드:
title: 제목abstract: 초록authors: 저자 목록doi: DOIpmid: PubMed IDlink: 링크publication: 출판물pub_year: 출판 연도기타 필드는 API 문서를 참조하세요.
반환값:
{
"search_items": [
{
"doc": {
"title": "...",
"abstract": "...",
"authors": [...],
"doi": "...",
...
},
"search_gateway": "pubmed"
}
],
"consumed_points": 20
}지원 언어
주요 언어 코드:
en: English (영어)zh: Chinese (중국어)ko: Korean (한국어)ja: Japanese (일본어)fr: French (프랑스어)de: German (독일어)es: Spanish (스페인어)ru: Russian (러시아어)ar: Arabic (아랍어)pt: Portuguese (포르투갈어)it: Italian (이탈리아어)auto: 자동 감지
오류 처리
모든 오류는 표준 형식으로 반환됩니다:
{
"code": 非零错误码,
"msg": "错误信息",
"data": null
}일반적인 오류:
401: API 키가 유효하지 않거나 제공되지 않음
400: 요청 매개변수 오류
404: 리소스가 존재하지 않음
사용 예시
Claude Desktop에서 사용
API 키 설정 후 Claude Desktop 재시작
대화 중 도구 사용:
문서 번역:
이 문서를 번역해줘: https://example.com/paper.pdf, 영어로 번역해줘
문헌 검색:
"의학 영상에서의 딥러닝 활용"에 관한 최신 문헌을 검색해줘
번역 상태 조회:
작업 02a6c6d1-3f70-4a5a-80bc-971d53a37bb1의 번역 진행 상황을 확인해줘
자주 묻는 질문
Q: API 키는 어떻게 얻나요?
A: https://suppr.wilddata.cn/api-keys 에 접속하여 등록 후 API 키를 발급받으세요.
Q: 어떤 문서 형식을 지원하나요?
A: PDF, DOCX, PPTX, XLSX, HTML, TXT, EPUB 등 일반적인 형식을 지원합니다.
Q: 번역에 얼마나 걸리나요?
A: 문서 크기에 따라 다르며, 보통 몇 분에서 십여 분 정도 소요됩니다. get_translation을 사용하여 진행 상황을 확인할 수 있습니다.
Q: 번역된 문서는 어떻게 다운로드하나요?
A: 번역이 완료되면 get_translation이 target_file_url을 반환하며, 해당 링크에 접속하여 직접 다운로드할 수 있습니다.
Q: npx 실행이 실패합니다.
A: Node.js 버전이 18.0.0 이상인지 확인하고, SUPPR_API_KEY 환경 변수가 설정되었는지 확인하세요.
🔗 Suppr 초능력 문헌 제품
Zotero 플러그인 : https://github.com/WildDataX/suppr-zotero-plugin
공식 웹사이트: https://suppr.wilddata.cn
중국어 PubMed 검색: https://suppr.wilddata.cn/
GitHub 조직: WildDataX
기술 지원
도움이 필요하시면 다음으로 문의하세요: IT@wilddata.cn
Made with ❤️ by WildData
Suppr 생태계
제품 | 링크 |
🌐 Suppr 플랫폼 | |
📖 API 문서 | |
🔌 Zotero 플러그인 | |
🤖 Claude Code 스킬 | |
🔬 심층 연구 | |
📄 AI 번역 | |
🔎 PubMed 검색 |
Available Tools
4 toolscreate_translationCreate Translation TaskB
Create a document translation task. Supports file upload via path or URL.
| Name | Required | Description | Default |
|---|---|---|---|
| to_lang | Yes | Target language code (required), e.g., en, zh, ko, ja | |
| file_url | No | Document URL to translate (mutually exclusive with file_path) | |
| file_path | No | Local file path to translate (mutually exclusive with file_url) | |
| from_lang | No | Source language code (optional, auto-detect if not specified) | |
| optimize_math_formula | No | Optimize math formulas (PDF only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only mentions file upload capability and does not disclose side effects (e.g., task creation, asynchronous processing), required permissions, or how to track the resulting task.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the purpose and immediately following with input constraints. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a create operation with no output schema and no annotations, the description lacks details about the response (e.g., task ID), follow-up steps (e.g., use get_translation to check status), or any workflow context. This leaves the agent uncertain about what happens after invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds minimal meaning beyond the schema; 'file upload via path or URL' summarizes the file_path/file_url mutual exclusion, but this is already documented in the schema. No extra parameter context is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'create' and resource 'document translation task', making it distinct from sibling tools (get_translation, list_translations, search_documents). The added 'Supports file upload via path or URL' further specifies the tool's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus siblings. There is no mention of get/list for retrieving tasks or search_documents for finding documents. The usage is only implied by the tool's name/verb, not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_translationGet Translation StatusA
Get translation task details and status. Use this to check progress and get result URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | Translation task ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It implies a read-only operation via the verb 'Get' and mentions the return content (details, status, result URLs), but it does not explicitly state the absence of side effects or address error cases. More explicit transparency would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the core purpose followed by a usage hint. Every word earns its place with no redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter read tool with no output schema, the description covers the essential aspects: what it does, when to use it, and what it returns (details, status, result URLs). It does not enumerate possible statuses, but this is not critical for invoking the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a description for task_id ('Translation task ID') with 100% coverage. The tool description adds no further meaning about how to obtain or format the task_id, so it does not exceed the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('translation task details and status'), clearly distinguishing this from sibling tools like create_translation, list_translations, and search_documents. It focuses on a single task's details, making its purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: 'Use this to check progress and get result URLs.' This tells the agent when to invoke the tool, though it doesn't contrast with alternatives or state exclusions. Given the sibling tools, this is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_translationsList Translation TasksA
List translation tasks with pagination. View all historical translation tasks.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Results per page (default: 20) | |
| offset | No | Pagination offset (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden. It transparently indicates a read-only list operation with pagination, but adds no details on ordering, status scope, or return format. The term 'historical' is ambiguous and could mislead about whether in-progress tasks are included.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no fluff. The first sentence states the action and key feature (pagination); the second adds the 'historical' scope. Efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter list tool with no output schema or annotations, the description gives enough to understand the operation. However, it does not explain what data is returned, what 'historical' means, or how it relates to sibling search_documents, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage with clear descriptions for 'limit' and 'offset'. The description's mention of pagination adds marginal value beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists translation tasks and supports pagination. 'List' sharply contrasts with sibling 'get_translation' and 'create_translation', making it easy for an agent to select it for multi-result retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It conveys the core use case: listing all historical tasks with pagination. While it does not explicitly name alternatives or exclusions, the context 'view all historical translation tasks' gives clear guidance for when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_documentsSearch Academic LiteratureB
AI-driven semantic search for academic literature. Input natural language query to find relevant papers.
| Name | Required | Description | Default |
|---|---|---|---|
| topk | No | Max results to return (1-100, default: 20) | |
| query | Yes | Natural language query, e.g., "latest diabetes research" | |
| auto_select | No | Auto-select best results (default: true) | |
| return_doc_keys | No | Specific fields to return, e.g., ["title", "abstract", "doi"] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It reveals that the search is 'AI-driven' and 'semantic,' which is useful, but it does not mention whether the operation is read-only, requires authentication, or what the response contains (e.g., list of papers, metadata). For a search tool, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence that front-loads the core purpose. Every word contributes meaning without redundancy. It is appropriately sized for a straightforward search tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with four parameters all documented in the schema, and the description covers the primary purpose. However, without annotations or an output schema, the description omits behavioral details like return format, pagination, or limitations. It is minimally complete but leaves open questions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description itself does not add any parameter-specific meaning beyond the schema; it only says to input a natural language query. The schema already documents each parameter thoroughly, so the description's lack of parameter detail is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs AI-driven semantic search for academic literature, using natural language queries to find relevant papers. It specifies the verb (search), resource (academic literature), and how to invoke it. However, it does not explicitly differentiate from sibling tools, though the siblings are translation-focused, so differentiation is apparent from context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: input a natural language query to find papers. It gives a basic how-to but does not outline when to use this tool versus alternatives or state any exclusions. The sibling tools are translation-related, implying search is for finding papers, but no explicit guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.1.7- First observed
create_translation - First observed
get_translation - First observed
list_translations - First observed
search_documents
TDQS
Scored across 4 tools
Each tool has a clear, distinct purpose: create, get, and list translations, plus search documents. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern: create_translation, get_translation, list_translations, and search_documents. No mixed conventions.
Four tools is a reasonable size for a server handling translation tasks and document search. It feels slightly minimal but each tool serves a distinct purpose.
The translation lifecycle covers create, get, and list, but lacks update/delete/cancel operations. The search_documents tool seems unrelated to translations, creating a mixed domain with notable gaps.
Maintenance
Related MCP Connectors
Translate PDFs, scans, Office files and EPUB across 475 languages and styles, preserving layout.
Search 36M+ PubMed biomedical articles and ClinicalTrials.gov studies.
Search PubMed/Europe PMC, fetch articles and full text (PMC/EPMC/Unpaywall), citations, MeSH terms.
Turn documents into structured, AI-ready data by parsing, enriching, chunking, and embedding.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive biomedical literature research through PubMed database access with advanced search, full-text retrieval, citation analysis, and batch processing capabilities. Supports both local deployment and cloud hosting for seamless integration with AI assistants.1MIT
- FlicenseCqualityBmaintenanceEnables academic literature management through PDF import, hybrid search, knowledge graph construction, and automated literature review generation. Combines full-text search with semantic vector search for comprehensive paper analysis.55-
- AlicenseNot gradedqualityFmaintenanceEnables PDF document processing including text, image, and table extraction, as well as intelligent classification and similarity analysis across multiple languages.50MIT
- AlicenseNot gradedqualityDmaintenanceEnables uploading, organizing, and semantically searching documents with support for various file types and embedding providers.208 npmMIT