Під'єднайте 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, який деякі клієнти пробують першим). Клієнт може представитися трьома способами — client ID metadata document, динамічною реєстрацією або парою client ID і secret, яку ви реєструєте нижче, — і клієнти, що підтримують будь-який із них, знайдуть його самі.
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_..." }
}
}
}Опустіть прапорець <code>--header</code>, щоб використати OAuth: під час першого під'єднання 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> тримає токен поза файлом, тож конфігурацію можна безпечно комітити.
Якщо ваш клієнт говорить лише старим транспортом 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 | Надсилає вираз як фонове завдання з бюджетом у хвилини, залежним від тарифу, — для роботи, яка не вміщається в інтерактивний бюджет. Одразу повертає id завдання; завдання — це денна квота. | 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 у наступному з тим самим id дає 15. Сесії приватні для вашого облікового запису, тож два облікові записи з однаковим id ніколи не бачать змінних одне одного. Вони закриваються після 30 хвилин простою, коли обчислення в них перевищує ліміт часу (рушій не можна перервати, тож сесія йде разом із ним) або коли ви викликаєте clear_session.
Бюджет обчислень і ліміт частоти визначаються вашим тарифом — див. Тарифиабо викличте get_capabilities із самого з'єднання, щоб дізнатися чинні числа. Перевищення будь-якого з них повертається як результат інструмента з установленим isError — це не помилка транспорту, тож ваш агент може прочитати повідомлення і скоригуватися. Те саме стосується синтаксичної помилки, тайм-ауту чи збою всередині рушія: це відповіді, і з'єднання залишається відкритим.
check_support повідомляє, що доступно, не витрачаючи обчислення. timeout_ms дозволяє виклику запросити бюджет, менший за тарифний, — зручно, щоб швидко завершувати вираз, який має бути дешевим. Він обмежується бюджетом самого тарифу, тож купити більше часу, ніж у вас є, неможливо. Файлові, процесні та мережеві функції заблоковано.