Qurak

เซิร์ฟเวอร์ MCP

เชื่อมต่อ Claude, Cursor, VS Code หรือไคลเอนต์ MCP ใดก็ได้กับเอนจิน Qurak

การเชื่อมต่อให้อะไรกับผู้ช่วยของคุณ

ผู้ช่วยที่เดาเลขคณิตนั้นผิดบ่อยพอที่จะเป็นปัญหา เมื่อเชื่อมต่อที่นี่ มันจะส่งคณิตศาสตร์ให้เอนจินจริงและคืนคำตอบที่คำนวณแล้วแทนคำตอบที่แค่ฟังดูสมเหตุสมผล — แคลคูลัส สมการเชิงอนุพันธ์ พีชคณิต สถิติ และกราฟ

การเชื่อมต่อนี้บอกความจริงเกี่ยวกับตัวมันเองแก่เอเจนต์ของคุณก่อนที่จะใช้การคำนวณใด ๆ: check_support ตอบว่าฟังก์ชันมีอยู่หรือไม่ get_capabilities รายงานขีดจำกัดที่มีผลจริง และ plan_computation เปลี่ยนเป้าหมายเป็นวิธีทำที่ใช้ได้จริงพร้อมสูตรงานที่ตรวจสอบแล้วแนบมาด้วย เอเจนต์จะกลับมาเรียกเครื่องมือที่บอกล่วงหน้าว่าตัวเองทำอะไรไม่ได้อยู่เรื่อย ๆ

มันเปิดใช้ในทุกแพ็กเกจ รวมถึงแพ็กเกจฟรี และการเชื่อมต่อทั้งหมดคือ URL เดียว สิ่งที่แพ็กเกจแบบชำระเงินซื้อคืองบคำนวณและอัตรา — ไม่ใช่สิทธิ์เข้าใช้

สร้างโทเคน   เข้าสู่ระบบ

Endpoints

URLทรานสปอร์ตการใช้
https://qurak.com/mcpStreamable HTTPแนะนำ ใช้ตัวนี้เว้นแต่ไคลเอนต์ของคุณใช้ไม่ได้
https://qurak.com/mcp/sseHTTP+SSE (2024-11-05)เลิกใช้แล้ว สำหรับไคลเอนต์รุ่นเก่าเท่านั้น

ทรานสปอร์ตเป็นแบบ stateless: มันไม่ออก protocol session id ดังนั้น GET และ DELETE บน /mcp จึงตอบ 405 โดยตั้งใจ นั่นแยกจาก session_id แบบไม่บังคับที่เครื่องมือประเมินผลรับ — ดู เครื่องมือ — ซึ่งเป็นอาร์กิวเมนต์เครื่องมือที่คุณเลือกเอง ไม่ใช่สิ่งที่ทรานสปอร์ตแจกให้

สองวิธีเข้าสู่ระบบ

ไคลเอนต์ส่วนใหญ่จัดการให้คุณเอง เลือกไคลเอนต์ของคุณด้านล่างแล้วทำตามเส้นทางเดียวที่มันแสดง — ไม่ต้องใช้ทั้งสอง

วิธีวิธีทำงานใช้เมื่อ
OAuthไคลเอนต์เปิดเบราว์เซอร์ของคุณ คุณเข้าสู่ระบบ Qurak และอนุมัติคำขอ ไม่มีการคัดลอกข้อมูลรับรองด้วยมือเลยไคลเอนต์ของคุณขอแค่ URL — Claude Desktop และ claude.ai ไม่มีที่ให้ใส่โทเคน
โทเคน Bearerคุณสร้างโทเคนแล้วใส่ไว้ในเฮดเดอร์ Authorization ในการตั้งค่าของไคลเอนต์ไคลเอนต์ของคุณรองรับเฮดเดอร์และคุณต้องการข้อมูลรับรองแบบตายตัว — มีประโยชน์สำหรับ CI หรือเครื่องที่ใช้ร่วมกัน

OAuth ขออะไรบ้าง

Scopeสิทธิ์ที่ให้
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, dynamic registration หรือ 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 และถูกข้ามอย่างเงียบ ๆ

.mcp.json
{
  "mcpServers": {
    "qurak": {
      "type": "http",
      "url": "https://qurak.com/mcp",
      "headers": { "Authorization": "Bearer qk_..." }
    }
  }
}

ละแฟล็ก <code>--header</code> เพื่อใช้ OAuth แทน: Claude Code จะเปิดเบราว์เซอร์ตอนเชื่อมต่อครั้งแรก

  1. เปิด Settings แล้วไปที่ Connectors
  2. เลือก Add custom connector
  3. วาง <code>https://qurak.com/mcp</code> แล้วยืนยัน
  4. หน้าต่างเบราว์เซอร์จะเปิดขึ้น เข้าสู่ระบบ Qurak แล้วอนุมัติคำขอ

เส้นทางนี้จำเป็นต้องเป็น OAuth เท่านั้น — ไม่มีช่องสำหรับโทเคน ขั้นตอนเดียวกันใช้กับ connectors ของ claude.ai ได้

  1. เปิด Settings แล้วไปที่ MCP
  2. เพิ่มเซิร์ฟเวอร์ด้วย URL <code>https://qurak.com/mcp</code>
  3. อนุมัติพรอมป์ตในเบราว์เซอร์

Cursor เลือกใช้ OAuth เมื่อเซิร์ฟเวอร์เผยแพร่ discovery metadata ซึ่งเซิร์ฟเวอร์นี้ทำ — บล็อก <code>headers</code> ในการตั้งค่าจึงมีแนวโน้มถูกละเลย ให้คาดหวังโฟลว์เบราว์เซอร์และปล่อยให้มันทำงานไป

คีย์คือ <code>servers</code> ไม่ใช่ <code>mcpServers</code>

.vscode/mcp.json
{
  "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> แทน

URL
https://qurak.com/mcp

เครื่องมือ

เครื่องมือหน้าที่Scope
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ส่งนิพจน์เป็นงานเบื้องหลังพร้อมงบยาวระดับนาทีที่ขึ้นกับแผน สำหรับงานที่งบแบบโต้ตอบรองรับไม่ได้ คืน job id ทันที งานเป็นโควตารายวันqurak:evaluate
get_job
list_jobs
cancel_job
สถานะของงาน และผลลัพธ์ฉบับเต็มเมื่อเสร็จแล้ว (ส่ง wait_ms แล้วการเรียกครั้งเดียวจะรอแบบ long-poll แทนการวนถามถี่ ๆ หลายสิบครั้ง) รวมถึงงานล่าสุดบนบัญชี และการยกเลิก การถามสถานะไม่เสียอะไรเลยqurak:evaluate
simulate_circuitจำลองวงจรควอนตัม - สเตตเวกเตอร์ในอุดมคติ ชุดเกตมาตรฐาน - และคืนฮิสโทแกรมของการวัด รันเป็นงานเบื้องหลัง โดยมีเพดานคิวบิตตามแผนqurak:evaluate
save_guide
get_guide
list_guides
delete_guide
โน้ตถาวรบนบัญชี: บันทึกการนิยามและสมมติฐานของแบบจำลองที่ใช้งานอยู่ไว้ใต้ชื่อหนึ่ง แล้วอ่านกลับมาได้ในการสนทนาครั้งหลัง การอ่านต้องใช้ scope docs ส่วนการเขียนต้องใช้ evaluatequrak:docs
qurak:evaluate
get_capabilitiesขีดจำกัดที่มีผลต่อการเชื่อมต่อนี้ เป็นตัวเลข: เพดานงบคำนวณ โควตาต่อนาทีและที่เหลืออยู่ พล็อตที่เก็บได้ใหญ่สุด scope ที่ได้รับ ขอบเขตเซสชัน ไม่มีอาร์กิวเมนต์ใดก็ได้
WolframLanguageEvaluatorชื่อเรียกแทนแบบเก่าของ evaluate เก็บไว้สำหรับไคลเอนต์ที่คาดหวังชื่อเครื่องมือ AgentTools อาร์กิวเมนต์เดียวกัน พฤติกรรมเดียวกันqurak:evaluate

การเก็บสถานะระหว่างการเรียก

evaluate และ plot เป็นแบบ stateless เว้นแต่คุณจะส่ง session_idเมื่อมี การนิยามจะถูกส่งต่อ — a = 10 ในการเรียกหนึ่ง แล้ว a + 5 ในการเรียกถัดไปด้วย id เดิม จะประเมินผลเป็น 15 เซสชันเป็นส่วนตัวของบัญชีคุณ สองบัญชีที่ใช้ id เดียวกันจึงไม่มีวันเห็นตัวแปรของกันและกัน เซสชันจะถูกทิ้งหลังไม่มีการใช้งาน 30 นาที เมื่อการประเมินผลในนั้นหมดเวลา (เอนจินถูกขัดจังหวะไม่ได้ เซสชันจึงไปด้วย) หรือเมื่อคุณเรียก clear_session.

ขีดจำกัดและข้อผิดพลาด

งบคำนวณและขีดจำกัดอัตราเป็นไปตามแผนของคุณ — ดู ราคา หรือเรียก get_capabilities จากการเชื่อมต่อเองเพื่อดูตัวเลขที่มีผล การใช้เกินอย่างใดอย่างหนึ่งจะกลับมาเป็นผลลัพธ์เครื่องมือที่มี isError ตั้งไว้ ไม่ใช่ข้อผิดพลาดของทรานสปอร์ต agent ของคุณจึงอ่านข้อความและปรับตัวได้ เช่นเดียวกับข้อผิดพลาดไวยากรณ์ การหมดเวลา หรือความล้มเหลวในเอนจิน: พวกมันคือคำตอบ และการเชื่อมต่อยังเปิดอยู่

check_support บอกว่ามีอะไรใช้ได้บ้างโดยไม่เปลืองการประเมินผล timeout_ms ให้การเรียกขอใช้งบสั้นกว่าที่แผนอนุญาตได้ — มีประโยชน์สำหรับล้มเหลวเร็วกับนิพจน์ที่คุณคาดว่าเบา มันถูกจำกัดไว้ที่งบของแผนเอง จึงซื้อเวลามากกว่าที่คุณมีไม่ได้ ฟังก์ชันไฟล์ โปรเซส และเครือข่ายถูกบล็อก