MCP Server
Markdown (LLM용)Claude Desktop, Cursor 등 모든 MCP 클라이언트에 학술 인용 검증 기능을 추가합니다.
제공 기능
CiteTrue REST API를 감싼 2개 도구. 크레딧과 정확도는 동일하며, HTTP 대신 MCP로 호출할 뿐입니다.
| 도구 | 용도 | 호출당 크레딧 |
|---|---|---|
| verify | Split a text blob into references and verify each against real sources. | 1 per ref; tricky ones up to 5 |
| get_credits | 계정 크레딧 잔액 반환. | 0 |
빠른 시작
- 대시보드 → API 키에 접속해 새 API 키 클릭.
sk_로 시작하는 키 복사. - MCP 클라이언트 설정(클라이언트 설정 참조)을 열어 citetrue 블록 추가.
- MCP 클라이언트 재시작 — 채팅 새로고침이 아니라 앱 전체.
- 어시스턴트에게 "이 인용들을 검증해줘: [붙여넣기]"라고 요청. verify를 호출하고 결과를 요약합니다.
클라이언트 설정
stdio 지원 MCP 클라이언트라면 어느 것이든 가능합니다. 아래는 가장 흔한 3가지이며 다른 클라이언트도 같은 구조입니다.
Claude Desktop
CiteTrue를 Claude Desktop 확장으로 설치하세요 — JSON 편집도, Node 설치도 필요 없습니다. 번들된 서버는 Claude Desktop에 포함된 Node에서 실행됩니다.
Claude Desktop용 다운로드다운로드한 파일을 더블클릭하거나 설정 → Extensions로 끌어다 놓고, 안내가 나오면 API 키를 붙여넣으세요 — 키는 OS 키체인에 안전하게 저장됩니다.
중요: 설치 후 설정 → Extensions에서 확장이 활성화(켜짐)되어 있는지 확인하고 Claude Desktop을 재시작하세요 — 그래야 도구가 활성화됩니다.
또는 수동으로 설정
macOS는 ~/Library/Application Support/Claude/claude_desktop_config.json, Windows는 %APPDATA%\Claude\claude_desktop_config.json 편집:
{
"mcpServers": {
"citetrue": {
"command": "npx",
"args": ["-y", "@citetrue/mcp-server"],
"env": {
"CITETRUE_API_KEY": "sk_..."
}
}
}
}Cursor
Settings → MCP → Add new MCP server에서 아래 Claude Desktop JSON과 동일한 command / args / env를 설정.
Windsurf, Zed, 기타
어떤 stdio MCP 클라이언트든 동작합니다. 설정 경로는 각기 다르지만 3개 필드(command, args, env)는 공통입니다.
구성
| 환경변수 | 기본값 | 비고 |
|---|---|---|
| CITETRUE_API_KEY | — (필수) | 대시보드에서 발급받은 Bearer 토큰. |
| CITETRUE_API_URL | https://api.citetrue.com | 셀프호스팅 시 덮어쓰기. |
도구
verify
Split a free-form text blob into individual references and verify each against real sources. Every reference goes through the same flow, and each one in the result reports what it cost.
파라미터
Supply exactly one of text or taskHash:
textstring — raw text containing one or more references: numbered / bulleted / blank-line-separated lists, BibTeX, or prose with in-text author-year citations. Max 10MB.taskHashstring — resume a task started by an earlier call (thetaskHashit returned). Finished results are replayed without charging again; citations that still need checking are completed and billed as usual.forcebool, optional — ignore cached results and check the text again from scratch (billed like a new check). Only applies withtext.
출력
{
"taskHash": "...",
"refs": [
{
"hash": "a1b2c3...",
"text": "[1] Vaswani, A., Shazeer, N., Parmar (2017)...",
"assessment": "authentic",
"value": {
"type": "citation",
"title": "Attention is all you need",
"authors": ["A Vaswani", "N Shazeer", "N Parmar"],
"year": 2017,
"url": "https://..."
},
"note": "",
"notices": [],
"confidence": 0.97,
"cost": 1
}
],
"cost": 2,
"balance": 248
}Each ref's cost is what the task has charged for that citation: 1 for most citations, up to 5 for tricky ones that needed more data sources and more analysis, 0 if it was already paid for in another task. Resuming a task with taskHash reports the same per-ref numbers again — they are not new charges. The top-level cost is what this call newly charged (0 when a finished task is simply replayed), and balance is what's left afterwards — it can be negative (see Billing). note is a free-form one-line natural-language explanation in English (intended for end-user display); for programmatic checks, match on notices[] instead.
Assessment values
authentic— paper exists and is the one cited;valuecontains the matched paper.unsure— found something but can't confirm;noticesandconfidencedescribe why.inauthentic— definitively not found / fabricated / unrelated.invalid— input wasn't a citation; pipeline refused to search.error— verification failed on this ref;errors[]lists tokens.exceeded— credits ran out before this ref ran.
과금
Same credits as the REST API. Most citations cost 1 credit. Tricky ones that need more data sources and more analysis can cost up to 5. If you run out of credits mid-check, citations already in progress still finish; the overage is deducted at your next credit reset, so balance can be negative. Citations that couldn't start for lack of credits come back as exceeded. get_credits is free.
문제 해결
If the server fails to start, ensure npx is on PATH and CITETRUE_API_KEY is set.
CiteTrue 팀이 관리 · 최종 업데이트: