MCP Server
Markdown (لـ LLMs)أضف التحقق من الاستشهادات الأكاديمية إلى Claude Desktop و Cursor وأي عميل متوافق مع MCP.
ما تحصل عليه
خمس أدوات تُغلف REST API لـ CiteTrue. نفس الأرصدة ونفس الدقة — فقط عبر MCP بدل HTTP.
| الأداة | الغرض | أرصدة / استدعاء |
|---|---|---|
| verify | Split a text blob into references and verify each. depth selects accuracy vs. cost. | 1 or 5 per ref by depth |
| get_credits | يُعيد رصيد أرصدة الحساب. | 0 |
بداية سريعة
- انتقل إلى لوحة التحكم → مفاتيح API وانقر مفتاح API جديد. انسخ المفتاح الذي يبدأ بـ
sk_. - افتح إعدادات عميل MCP (انظر إعداد العميل) وأضف كتلة citetrue.
- أعد تشغيل عميل MCP — ليس فقط المحادثة، بل التطبيق بأكمله.
- اطلب من المساعد «تحقق من هذه الاستشهادات: [الصق]». سيستدعي verify_fast ويُلخص.
إعداد العميل
أي عميل MCP عبر stdio يعمل. أدناه الثلاثة الأكثر شيوعًا؛ والآخرون يستخدمون نفس البنية.
Claude Desktop
ثبّت CiteTrue كامتداد في Claude Desktop — دون تحرير JSON ودون إعداد Node. يعمل الخادم المُجمّع على Node المُرفق مع Claude Desktop.
تنزيل لـ Claude Desktopانقر نقرًا مزدوجًا على الملف الذي نزّلته (أو اسحبه إلى الإعدادات → Extensions) والصق مفتاح API عند الطلب — يُخزَّن بأمان في سلسلة مفاتيح نظام التشغيل.
مهم: بعد التثبيت، تأكد من أن الامتداد مُفعَّل (قيد التشغيل) في الإعدادات → Extensions ثم أعد تشغيل Claude Desktop — هذا ما يُفعِّل أدواته.
أو الإعداد يدويًا
حرّر ~/Library/Application Support/Claude/claude_desktop_config.json على macOS، و%APPDATA%\Claude\claude_desktop_config.json على Windows:
{
"mcpServers": {
"citetrue": {
"command": "npx",
"args": ["-y", "@citetrue/mcp-server"],
"env": {
"CITETRUE_API_KEY": "sk_..."
}
}
}
}Cursor
في Settings → MCP → Add new MCP server، استخدم نفس بنية command / args / env الموجودة في JSON Claude Desktop أدناه.
Windsurf، Zed، وغيرها
أي عميل MCP عبر stdio يعمل — مهما كان مسار التكوين، الحقول الثلاثة نفسها (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. depth selects accuracy vs. cost.
المعاملات
Supply exactly one of text, refHash, or taskHash:
textstring — raw text containing one or more references. Accepts numbered lists, bullets, blank-line-separated, BibTeX, or in-text prose with author-year citations (whendepth ≥ 5). Max 10MB.refHashstring — upgrade a single prior reference to a deeper run. Requiresdepth ≥ 5andparentTaskHash.parentTaskHashstring — required when usingrefHash; the original task that produced the ref.taskHashstring — resume a previously-started task; replays cached state. No re-billing.depth1 | 5, optional, default 1 —1fast (1 credit/ref);5deep (5 credits/ref).20exists as a closed-beta tier and is not enabled for public use.forcebool, optional — bypass cached results (forces a fresh run, charges full cost).
الناتج
{
"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": [],
"data": { "depth": 1, "cost": 1 }
}
],
"cost": 2,
"balance": 248
}data.depth is the highest depth that has run on the ref (1 or 5). Clients derive a "deep-verified" flag locally as depth ≥ 5. 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;data.errors[]lists tokens.exceeded— credits ran out before this ref ran.
الفوترة
1 credit per ref for depth=1, 5 credits per ref for depth=5.
استكشاف الأخطاء
If the server fails to start, ensure npx is on PATH and CITETRUE_API_KEY is set.