Claude، Cursor، VS Code یا هر کلاینت MCP دیگری را به موتور Qurak متصل کنید.
دستیاری که حساب را حدس میزند، درست به همان اندازهای خطا میکند که مهم باشد. با اتصال به اینجا، ریاضیات را به موتوری واقعی میسپارد و بهجای پاسخی محتمل، پاسخی محاسبهشده بازمیگرداند — حساب دیفرانسیل و انتگرال، معادلات دیفرانسیل، جبر، آمار، نمودارها.
این اتصال، پیش از آنکه محاسبهای خرج شود، حقیقت را دربارهٔ خودش به عامل شما میگوید: check_support پاسخ میدهد که تابعی وجود دارد یا نه، get_capabilities محدودیتهای واقعاً برقرار را گزارش میکند، و plan_computation هدف را به روشی کارآمد تبدیل میکند با دستورهای کار راستیآزماییشدهٔ پیوست. عامل به ابزاری بازمیگردد که از پیش میگوید چه کاری از او برنمیآید.
در همهٔ طرحها باز است، از جمله طرح رایگان، و کل اتصال یک URL است. آنچه طرح پولی میخرد بودجهٔ محاسبه و نرخ است — هرگز خودِ دسترسی نه.
| URL | انتقال | کاربرد |
|---|---|---|
| https://qurak.com/mcp | Streamable HTTP | ترجیحدادهشده. از این استفاده کنید مگر کلاینت شما نتواند. |
| https://qurak.com/mcp/sse | HTTP+SSE (2024-11-05) | منسوخ، فقط برای کلاینتهای قدیمی. |
انتقال بیحالت است: شناسهٔ نشست پروتکلی صادر نمیکند، پس GET و DELETE روی /mcp پاسخ میدهند 405 بهعمد. این جدا از session_id اختیاریِ ابزارهای ارزیابیکننده است — نگاه کنید به ابزارها — که آرگومان ابزاری است که خودتان برمیگزینید، نه چیزی که انتقال بدهد.
بیشتر کلاینتها این را برایتان انجام میدهند. کلاینت خود را در پایین برگزینید و همان یک مسیری را که نشان میدهد دنبال کنید — به هر دو نیاز ندارید.
| روش | چگونه کار میکند | کی استفاده کنید |
|---|---|---|
| OAuth | کلاینت مرورگر شما را باز میکند، شما به Qurak وارد میشوید و درخواست را تأیید میکنید. هیچ اعتبارنامهای هرگز با دست کپی نمیشود. | کلاینت شما فقط یک URL میخواهد — Claude Desktop و claude.ai جایی برای توکن ندارند. |
| توکن Bearer | توکنی میسازید و آن را در سرآیند Authorization در پیکربندی کلاینت میگذارید. | کلاینت شما از سرآیندها پشتیبانی میکند و اعتبارنامهٔ ثابت میخواهید — برای CI یا رایانهٔ مشترک کارآمد است. |
| دامنه | میدهد |
|---|---|
| qurak:evaluate | اجرای عبارتها و تولید نمودار در حساب شما. از بودجهٔ محاسبه و محدودیت نرخ طرح شما خرج میکند. |
| qurak:docs | خواندن مرجع توابع. هیچ محاسبهای خرج نمیکند، پس اتصال فقط-مستندات چیزی است که اعطای گستردهاش بیخطر است. |
در پس پرده این یک روند استاندارد OAuth 2.1 با PKCE است، قابل کشف در /.well-known/oauth-protected-resource و /.well-known/oauth-authorization-server (زیر /.well-known/openid-configurationهم پاسخ داده میشود که برخی کلاینتها اول آن را امتحان میکنند). کلاینت میتواند خود را به سه راه معرفی کند — سند فرادادهٔ شناسهٔ کلاینت، ثبت پویا، یا شناسه و راز کلاینتی که در پایین ثبت میکنید — و کلاینتهایی که هر کدام را پشتیبانی کنند خودشان آن را مییابند.
claude mcp add --transport http qurak https://qurak.com/mcp \
--header "Authorization: Bearer qk_..."<code>type</code> الزامی است. مدخلی با <code>url</code> و بدون <code>type</code> بهصورت سرور stdio خوانده و بیصدا نادیده گرفته میشود.
{
"mcpServers": {
"qurak": {
"type": "http",
"url": "https://qurak.com/mcp",
"headers": { "Authorization": "Bearer qk_..." }
}
}
}برای استفاده از OAuth پرچم <code>--header</code> را حذف کنید: Claude Code در نخستین اتصال مرورگر را باز میکند.
این مسیر بهناچار فقط-OAuth است — جایی برای توکن ندارد. همین گامها برای رابطهای claude.ai هم صادق است.
Cursor بهمحض اینکه سروری فرادادههای کشف را منتشر کند OAuth را ترجیح میدهد، و این سرور چنین میکند — پس بلوک <code>headers</code> در پیکربندیاش احتمالاً نادیده گرفته میشود. منتظر روند مرورگر باشید و بگذارید اجرا شود.
کلید <code>servers</code> است، نه <code>mcpServers</code>.
{
"servers": {
"qurak": {
"type": "http",
"url": "https://qurak.com/mcp",
"headers": { "Authorization": "Bearer ${input:qurak-token}" }
}
},
"inputs": [
{ "id": "qurak-token", "type": "promptString",
"description": "Qurak Bearer token", "password": true }
]
}استفاده از <code>inputs</code> توکن را بیرون از پرونده نگه میدارد، پس پیکربندی برای commit امن است.
اگر کلاینت شما فقط انتقال قدیمیتر HTTP+SSE را میفهمد، آن را به <code>https://qurak.com/mcp/sse</code> اشاره دهید.
https://qurak.com/mcp| ابزار | چه میکند | دامنه |
|---|---|---|
| evaluate | ارزیابی یک عبارت Qurak (نحو سازگار با .wl). نتیجهٔ قالببندیشده را با زمان صرفشده بازمیگرداند. اختیاری: session_id, format (Standard, TeX, JSON) و timeout_ms. | qurak:evaluate |
| plot | اجرای یک عبارت رسم و بازگرداندن نمودار بهصورت تصویر PNG. همان آرگومانهای session_id و timeout_ms. | qurak:evaluate |
| clear_session | دور ریختن یک نشست ارزیابی و هر چه در آن تعریف شده است. | qurak:evaluate |
| search_docs | جستوجو در مرجع توابع بر اساس نام یا توضیح، و در دستورهای کار در کنار آن. اختیاری: kind (function, task, any)؛ هر نتیجه میگوید کدام است. | qurak:docs |
| get_task | یک دستور کار کامل: گامهایش بهترتیب، و خروجیای که هر کدام هنگام راستیآزمایی روی این موتور تولید کرد. گامها پشت سر هم در یک نشست اجرا میشوند. | qurak:docs |
| get_symbol | هر چه دربارهٔ یک نماد دانسته است: دسترسپذیری، شکلها، گزینهها، نمونهها. | qurak:docs |
| check_support | پیش از استفاده، بررسی کنید توابع مشخصی در دسترساند یا نه. | qurak:docs |
| plan_computation | هدف را پیش از محاسبه بر زمینِ واقعیت مینشاند: حکم پشتیبانی برای تکتک توابعِ یک عبارت پیشنویس، نزدیکترین دستورهای کار راستیآزماییشده، و توصیهٔ مسیر با اعدادِ بودجهٔ همین اتصال. هیچ محاسبهای خرج نمیکند. | qurak:docs |
| evaluate_async | عبارتی را بهصورت کار پسزمینه میفرستد، با بودجهای چنددقیقهای و وابسته به طرح، برای کاری که در بودجهٔ تعاملی جا نمیگیرد. بیدرنگ شناسهٔ کار را بازمیگرداند؛ کارها سهمیهای روزانهاند. | qurak:evaluate |
| get_job list_jobs cancel_job | وضعیت یک کار و، پس از پایان، نتیجهٔ کاملش (با دادن wait_ms یک فراخوانی بهجای دهها سرکشیِ فشرده منتظر میماند)؛ کارهای اخیر حساب؛ لغو. سرکشی رایگان است. | qurak:evaluate |
| simulate_circuit | یک مدار کوانتومی را شبیهسازی میکند - بردار حالت آرمانی، مجموعهگیت استاندارد - و بافتنگار اندازهگیریاش را بازمیگرداند. بهصورت کار پسزمینه اجرا میشود، با سقف کیوبیتی که از طرح پیروی میکند. | qurak:evaluate |
| save_guide get_guide list_guides delete_guide | یادداشتهای ماندگار روی حساب: تعریفها و فرضهای یک مدلِ در دست کار را زیر یک نام ذخیره کنید و در گفتوگویی دیگر بازشان بخوانید. خواندن به دامنهٔ docs نیاز دارد؛ نوشتن به evaluate. | qurak:docs qurak:evaluate |
| get_capabilities | محدودیتهای جاری این اتصال، بهصورت عدد: سقف بودجهٔ محاسبه، سهمیهٔ دقیقهای و باقیماندهاش، بزرگترین نمودار ذخیرهشدنی، دامنههای اعطاشده، حدود نشست. بدون آرگومان. | هر کدام |
| WolframLanguageEvaluator | نام مستعار قدیمی برای evaluate، نگهداشتهشده برای کلاینتهایی که نام ابزار AgentTools را انتظار دارند. همان آرگومانها، همان رفتار. | qurak:evaluate |
evaluate و plot بیحالتاند مگر یک session_idبفرستید. با آن، تعریفها منتقل میشوند — a = 10 در یک فراخوانی، سپس a + 5 در فراخوانی بعدی با همان شناسه، ارزیابی میشود به 15. نشستها خصوصیِ حساب شمایند؛ دو حساب با یک شناسهٔ یکسان هرگز متغیرهای هم را نمیبینند. پس از ۳۰ دقیقه بیکاری، وقتی ارزیابیای درونشان از مهلت بگذرد (موتور را نمیتوان قطع کرد، پس نشست هم با آن میرود)، یا وقتی این را فراخوانی کنید، دور ریخته میشوند: clear_session.
بودجهٔ محاسبه و محدودیت نرخ از طرح شما پیروی میکنند — نگاه کنید به طرحها، یا get_capabilities را از خودِ اتصال فراخوانی کنید تا اعداد جاری را بگیرید. فراتر رفتن از هر کدام بهصورت نتیجهٔ ابزار بازمیگردد با isError تنظیمشده، نه خطای انتقال؛ پس عاملتان میتواند پیام را بخواند و خود را تنظیم کند. خطای نحوی، پایان مهلت یا خرابی درون موتور هم همینطورند: پاسخاند، و اتصال باز میماند.
check_support بدون خرج کردن یک ارزیابی میگوید چه چیزی در دسترس است. timeout_ms به یک فراخوانی اجازه میدهد بودجهای کوتاهتر از طرح بخواهد — برای شکست سریع روی عبارتی که انتظار دارید ارزان باشد کارآمد است. به بودجهٔ خود طرح محدود میشود، پس نمیتواند زمانی بیش از آنچه دارید بخرد. توابع پرونده، فرایند و شبکه مسدودند.