Sambungkan Claude, Cursor, VS Code atau mana-mana klien MCP ke enjin Qurak.
Pembantu yang meneka aritmetik tersilap cukup kerap untuk menjadi masalah. Disambungkan di sini, ia menyerahkan matematik kepada enjin sebenar dan mengembalikan jawapan yang dikira, bukan jawapan yang sekadar munasabah — kalkulus, persamaan pembezaan, aljabar, statistik, plot.
Sambungan ini memberitahu ejen anda kebenaran tentang dirinya sebelum apa-apa pengiraan dibelanjakan: check_support menjawab sama ada sesuatu fungsi wujud, get_capabilities melaporkan had yang benar-benar berkuat kuasa, dan plan_computation menukarkan matlamat kepada kaedah kerja dengan resipi disahkan disertakan. Ejen akan terus memanggil alat yang menyatakan lebih awal apa yang tidak mampu dilakukannya.
Ia terbuka pada setiap pelan, termasuk yang percuma, dan keseluruhan sambungannya hanyalah satu URL. Apa yang dibeli oleh pelan berbayar ialah bajet pengiraan dan kadar — bukan sekali-kali aksesnya.
| URL | Pengangkutan | Kegunaan |
|---|---|---|
| https://qurak.com/mcp | Streamable HTTP | Diutamakan. Gunakan ini melainkan klien anda tidak boleh. |
| https://qurak.com/mcp/sse | HTTP+SSE (2024-11-05) | Lapuk, untuk klien lama sahaja. |
Pengangkutannya tanpa keadaan: ia tidak mengeluarkan id sesi protokol, jadi GET dan DELETE pada /mcp menjawab 405 memang direka begitu. Itu berasingan daripada session_id pilihan yang diterima alat penilaian — lihat Alat — yang merupakan argumen alat yang anda pilih, bukan sesuatu yang diedarkan pengangkutan.
Kebanyakan klien menguruskan ini untuk anda. Pilih klien anda di bawah dan ikuti satu laluan yang ditunjukkannya — anda tidak memerlukan kedua-duanya.
| Kaedah | Cara ia berfungsi | Gunakannya apabila |
|---|---|---|
| OAuth | Klien membuka pelayar anda, anda log masuk ke Qurak dan meluluskan permintaan itu. Tiada kelayakan yang disalin dengan tangan. | Klien anda hanya meminta URL — Claude Desktop dan claude.ai tiada tempat untuk meletakkan token. |
| Token Bearer | Anda mencipta token dan meletakkannya dalam pengepala Authorization dalam konfigurasi klien. | Klien anda menyokong pengepala dan anda mahukan kelayakan tetap — berguna untuk CI atau mesin kongsian. |
| Skop | Memberi |
|---|---|
| qurak:evaluate | Menjalankan ungkapan dan menghasilkan plot pada akaun anda. Membelanjakan bajet pengiraan dan had kadar pelan anda. |
| qurak:docs | Membaca rujukan fungsi. Tidak membelanjakan pengiraan, jadi sambungan dokumen sahaja selamat diberikan secara meluas. |
Di sebaliknya, ini aliran OAuth 2.1 piawai dengan PKCE, boleh ditemui di /.well-known/oauth-protected-resource dan /.well-known/oauth-authorization-server (turut dijawab di /.well-known/openid-configuration, yang dicuba dahulu oleh sesetengah klien). Klien boleh mengenal pasti dirinya dengan tiga cara — satu dokumen metadata client ID, pendaftaran dinamik, atau client ID dan secret yang anda daftarkan di bawah — dan klien yang menyokong mana-mana satu akan menemuinya sendiri.
claude mcp add --transport http qurak https://qurak.com/mcp \
--header "Authorization: Bearer qk_..."<code>type</code> diperlukan. Entri dengan <code>url</code> tanpa <code>type</code> dibaca sebagai pelayan stdio dan dilangkau secara senyap.
{
"mcpServers": {
"qurak": {
"type": "http",
"url": "https://qurak.com/mcp",
"headers": { "Authorization": "Bearer qk_..." }
}
}
}Gugurkan bendera <code>--header</code> untuk menggunakan OAuth: Claude Code membuka pelayar pada sambungan pertama.
Laluan ini memang OAuth sahaja — tiada medan untuk token. Langkah yang sama terpakai untuk penyambung claude.ai.
Cursor mengutamakan OAuth sebaik sahaja pelayan menerbitkan metadata penemuan, yang dilakukan pelayan ini — jadi blok <code>headers</code> dalam konfigurasinya berkemungkinan diabaikan. Jangkakan aliran pelayar, dan biarkan ia berjalan.
Kuncinya ialah <code>servers</code>, bukan <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 }
]
}Menggunakan <code>inputs</code> mengekalkan token di luar fail, jadi konfigurasi itu selamat untuk di-commit.
Jika klien anda hanya bertutur pengangkutan HTTP+SSE yang lebih lama, halakannya ke <code>https://qurak.com/mcp/sse</code>.
https://qurak.com/mcp| Alat | Apa fungsinya | Skop |
|---|---|---|
| evaluate | Menilai ungkapan Qurak (sintaks serasi .wl). Mengembalikan keputusan berformat, bersama masa yang diambil. Pilihan session_id, format (Standard, TeX, JSON) dan timeout_ms. | qurak:evaluate |
| plot | Menjalankan ungkapan pemplotan dan mengembalikan carta sebagai imej PNG. Mengambil argumen yang sama dengan session_id dan timeout_ms. | qurak:evaluate |
| clear_session | Membuang sesi penilaian dan semua yang ditakrifkan di dalamnya. | qurak:evaluate |
| search_docs | Mencari rujukan fungsi mengikut nama atau perihalan, dan resipi tugasan di sampingnya. Pilihan kind (function, task, any); setiap keputusan menyatakan yang mana satu. | qurak:docs |
| get_task | Satu resipi tugasan sepenuhnya: langkah-langkahnya mengikut urutan, dan output yang dihasilkan setiap satu apabila ia disahkan terhadap enjin ini. Langkah-langkah berjalan berurutan dalam satu sesi. | qurak:docs |
| get_symbol | Semua yang diketahui tentang satu simbol: ketersediaan, bentuk, pilihan, contoh. | qurak:docs |
| check_support | Menyemak sama ada fungsi tertentu tersedia, sebelum menggunakannya. | qurak:docs |
| plan_computation | Mengasaskan matlamat sebelum mengira: keputusan sokongan bagi setiap fungsi dalam draf ungkapan, resipi disahkan yang paling hampir, dan cadangan penghalaan dalam angka bajet sambungan ini sendiri. Tidak membelanjakan pengiraan. | qurak:docs |
| evaluate_async | Menghantar ungkapan sebagai kerja latar dengan bajet berminit-minit yang bergantung pada pelan, untuk kerja yang tidak tertampung oleh bajet interaktif. Mengembalikan id kerja serta-merta; kerja ialah peruntukan harian. | qurak:evaluate |
| get_job list_jobs cancel_job | Status sesuatu kerja dan, setelah selesai, keputusan penuhnya (hantar wait_ms dan satu panggilan sahaja menunggu hasilnya, berbanding berpuluh panggilan tinjauan yang rapat); kerja-kerja terkini pada akaun; pembatalan. Meninjau adalah percuma. | qurak:evaluate |
| simulate_circuit | Menyimulasikan litar kuantum - vektor keadaan ideal, set get piawai - dan mengembalikan histogram pengukurannya. Berjalan sebagai kerja latar, dengan siling kubit yang mengikut pelan. | qurak:evaluate |
| save_guide get_guide list_guides delete_guide | Nota kekal pada akaun: simpan takrifan dan andaian sesuatu model kerja di bawah satu nama, dan baca semula dalam perbualan kemudian. Membaca memerlukan skop docs; menulis memerlukan evaluate. | qurak:docs qurak:evaluate |
| get_capabilities | Had yang berkuat kuasa untuk sambungan ini, dalam bentuk angka: siling bajet pengiraan, peruntukan seminit dan bakinya, plot tersimpan terbesar, skop yang diberikan, batasan sesi. Tiada argumen. | mana-mana |
| WolframLanguageEvaluator | Alias warisan untuk evaluate, dikekalkan untuk klien yang menjangkakan nama alat AgentTools. Argumen sama, kelakuan sama. | qurak:evaluate |
evaluate dan plot tanpa keadaan melainkan anda menghantar session_id. Dengan satu, takrifan dibawa bersama — a = 10 pada satu panggilan, kemudian a + 5 pada panggilan seterusnya dengan id yang sama, dinilai kepada 15. Sesi adalah peribadi kepada akaun anda, jadi dua akaun yang menggunakan id yang sama tidak pernah melihat pemboleh ubah satu sama lain. Ia digugurkan selepas 30 minit melahu, apabila penilaian di dalamnya tamat masa (enjin tidak boleh disampuk, jadi sesi itu turut hilang), atau apabila anda memanggil clear_session.
Bajet pengiraan dan had kadar mengikut pelan anda — lihat Harga, atau panggil get_capabilities daripada sambungan itu sendiri untuk angka yang berkuat kuasa. Melebihi mana-mana satu dikembalikan sebagai keputusan alat dengan isError ditetapkan, bukan ralat pengangkutan, supaya ejen anda dapat membaca mesejnya dan menyesuaikan diri. Begitu juga dengan ralat sintaks, tamat masa, atau kegagalan dalam enjin: semuanya jawapan, dan sambungan kekal terbuka.
check_support memberitahu apa yang tersedia tanpa membelanjakan satu penilaian. timeout_ms membolehkan sesuatu panggilan meminta bajet lebih pendek daripada yang dibenarkan pelan — berguna untuk gagal cepat pada ungkapan yang anda jangka murah. Ia dihadkan kepada bajet pelan itu sendiri, jadi ia tidak boleh membeli lebih masa daripada yang anda ada. Fungsi fail, proses dan rangkaian disekat.