ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิวได้แล้วต้นแบบ · อัปเดตทุก 30 นาที
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · วิธีติดตั้งภาษาไทยทุกตัว

FEA (finite element analysis)

โดย TheRoboMaster123รุ่น 1.0.0i★ 2iรันบนคลาวด์
ชื่อใน registryio.github.TheRoboMaster123/mcp-fea

วิธีติดตั้ง

ใช้ทำอะไรได้

ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ

  • ต่อแบบ คลาวด์ (ต่อผ่านอินเทอร์เน็ต)
  • บัญชีหรือคีย์ ต้องมี Authorization
  • หมวด อื่น ๆ
คำอธิบายต้นฉบับจากผู้ทำ (อังกฤษ)
Real FEA on CAD parts: validated setups, stress, safety factor, natural frequencies

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ผลตรวจผ่าน 5/5 · สิ่งที่คุณถามผ่านเซิร์ฟเวอร์ของผู้ทำ (therobomaster123--mcp-fea-mcp-endpoint.modal.run) · ✓ ตรวจคำสั่งแล้ว 13 พ.ย. 2569

ขั้นแรก: คุณใช้ AI ตัวไหน

เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง

ต่อกับ Claude ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ) · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม

  1. สมัครและสร้างคีย์ของ FEA (finite element analysis)

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง

  2. เปิดหน้า Connectors ของ Claude

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  3. กด “Add” → “Custom” → “Web” แล้วกรอก 2 ช่องนี้

    คัดลอกจากที่นี่ไปวางในช่องชื่อเดียวกันบนหน้าจอของ Claude แล้วกด Continue

    Name · ชื่อFEA (finite element analysis)
    Remote MCP server URL · ที่อยู่https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp

    ที่หัวข้อ Request headers เพิ่มชื่อและค่านี้

    ชื่อ headerAuthorization
    ค่าBearer <วางคีย์ของคุณตรงนี้>

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

    กด Continue ผ่านหน้าตรวจการล็อกอินที่ Claude ตรวจเจอ · หัวข้อ Authentication เลือกตามที่ผู้ทำบอก (Sign in now, Sign in when needed หรือ No sign in) แล้วกด Add

  4. เปิดใช้ในแชต

    +ConnectorsFEA (finite element analysis)

  5. ลองเลย

    ใช้ FEA (finite element analysis) บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude บอกว่ากำลังใช้ FEA (finite element analysis) หรือมีชื่อเครื่องมือของ FEA (finite element analysis) ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ChatGPT ยังต่อ FEA (finite element analysis) ไม่ได้

FEA (finite element analysis) ต้องใส่คีย์ส่วนตัวตอนต่อ แต่หน้าช่วยเหลือของ OpenAI พูดถึงแค่การเข้าสู่ระบบแบบ OAuth ยังไม่มีวิธีใส่คีย์ที่เราตรวจได้

คุณทำแบบนี้แทนได้

ก · ใช้แอปที่ต่อ FEA (finite element analysis) ได้

  • ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ) · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม
  • ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)
  • ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)
  • ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)

ข · ตัวอื่นในหมวด อื่น ๆ ที่ต่อกับ ChatGPT ได้

เลือกจากตัวที่ใช้มากในหมวดเดียวกัน เฉพาะตัวที่ต่อด้วยที่อยู่ได้โดยไม่ต้องใส่คีย์

ต่อกับ Claude Code ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ FEA (finite element analysis)

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง

  2. เปิด Terminal

    Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell

  3. วางคำสั่งนี้แล้วกด Enter

    claude mcp add --transport http --scope user fea https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp --header 'Authorization: Bearer ใส่ค่าของคุณ'

    แก้ “ใส่ค่าของคุณ” เป็นคีย์ของคุณก่อนกด Enter

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. พิมพ์ /mcp ใน Claude Code

    ต้องเห็น FEA (finite element analysis) ในรายการและขึ้นว่าเชื่อมต่อแล้ว

  5. ลองเลย

    ใช้ FEA (finite element analysis) บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude Code บอกว่ากำลังใช้ FEA (finite element analysis) หรือมีชื่อเครื่องมือของ FEA (finite element analysis) ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ Cursor ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ FEA (finite element analysis)

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง

  2. กดปุ่มนี้เพื่อเปิด Cursor

    เปิดใน Cursor

    Cursor จะถามยืนยันการติดตั้ง ให้กด Install

  3. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ FEA (finite element analysis) ช่อง Authorization ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. เปิดแชตของ AI ใน Cursor โหมด Agent

  5. ลองเลย

    ใช้ FEA (finite element analysis) บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Cursor บอกว่ากำลังใช้ FEA (finite element analysis) หรือมีชื่อเครื่องมือของ FEA (finite element analysis) ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ VS Code ได้ · ประมาณ 5 นาที

ต้องมีคีย์ของ FEA (finite element analysis) (สร้างที่เว็บของผู้ทำ)

  1. สมัครและสร้างคีย์ของ FEA (finite element analysis)

    เปิดเว็บของผู้ทำ สมัครบัญชีแล้วสร้างคีย์ (API key) เก็บไว้ ใช้ในขั้นถัดไป ราคาและแผนฟรีดูที่เว็บของผู้ทำ

    วิธีขอคีย์อยู่ใน README ของผู้ทำด้านล่าง

  2. กดปุ่มนี้เพื่อเปิด VS Code

    เปิดใน VS Code

    VS Code จะถามยืนยันการติดตั้ง ให้กด Install

  3. ใส่คีย์ในช่องที่ว่างไว้

    ในค่าตั้งของ FEA (finite element analysis) ช่อง Authorization ยังว่าง ใส่คีย์ของคุณแล้วบันทึก

    วางคีย์ในช่องของแอปเท่านั้น อย่าวางในแชตหรือส่งให้ใคร

  4. เปิดแชตของ AI ใน VS Code โหมด Agent

  5. ลองเลย

    ใช้ FEA (finite element analysis) บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า VS Code บอกว่ากำลังใช้ FEA (finite element analysis) หรือมีชื่อเครื่องมือของ FEA (finite element analysis) ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม

ดูโปรแกรมที่ใช้ MCP ทั้งหมด →

ที่อยู่สำหรับโปรแกรมที่ต่อผ่านเว็บ

ที่อยู่https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp

ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง

ติดตรงไหน? ถามคนที่ใช้ FEA (finite element analysis) อยู่💬 พูดคุย →
สำหรับคนเขียนโค้ด: คำสั่ง Terminal และค่าตั้ง JSON

ต่อผ่านเว็บ

Claude Code

claude mcp add --transport http --scope user fea https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp --header 'Authorization: Bearer ใส่ค่าของคุณ'

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "fea": {
      "url": "https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp",
      "headers": {
        "Authorization": "Bearer ใส่ค่าของคุณ"
      }
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "fea": {
      "type": "http",
      "url": "https://therobomaster123--mcp-fea-mcp-endpoint.modal.run/mcp",
      "headers": {
        "Authorization": "Bearer ใส่ค่าของคุณ"
      }
    }
  }
}

ค่าที่ต้องใส่เอง

  • Authorization ความลับ จำเป็น HTTP header
    Bearer token issued by the operator (value of the mcp-fea-token Modal secret, as 'Bearer ')

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

สรุป

ดาวน์โหลดต่อสัปดาห์i
ไม่มียอดใน npm/PyPI
licensei
Apache-2.0
การเชื่อมต่อ
รันบนคลาวด์
รุ่นล่าสุดi
1.0.0
หมวดi
อื่น ๆ
ส่งเข้า registryi
1 ส.ค. 2569
แก้โค้ดล่าสุดi
1 ส.ค. 2569
ผู้ทำ
TheRoboMaster123
สถานะใน registry
ใช้งานอยู่

ใช้กับโปรแกรมไหนได้

ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569

ต่อผ่านคลาวด์ได้ใน

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

ดูโปรแกรมทั้งหมดพร้อมข้อดีข้อเสีย →

คู่มือที่เกี่ยวข้อง

ทำอะไรได้บ้าง

server ให้ล็อกอินก่อนจึงจะแสดงรายการเครื่องมือ

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 13 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub benchwire ซึ่งเป็นเจ้าของ repo

  • ✓ ผ่าน

    ยังมีคนดูแล

    มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา

  • ✓ ผ่าน

    มีสัญญาอนุญาต (license)

    ใช้ Apache-2.0

  • ✓ ผ่าน

    endpoint ตอบ

    ตอบกลับใน 3779 ms (HTTP 401)

  • ✓ ผ่าน

    ล็อกอินแบบ OAuth

    ประกาศวิธีล็อกอินแบบ OAuth ให้โปรแกรม AI พาไปล็อกอินเอง

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint

พูดคุย

ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์

ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย

ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx

เข้าสู่ระบบด้วย Google เพื่อโพสต์

รีวิวจากผู้ใช้

ยังไม่มีรีวิว

เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิว

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 91% ของอีก 19646 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 16% ของอีก 19646 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 19646 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

FEA (finite element analysis) ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 5 จาก 5 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: Authorization

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา และส่งรุ่นล่าสุด (1.0.0) เข้า registry 3 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT บนเว็บ (แบบเต็มในแผน Business ขึ้นไป · Pro แบบอ่านอย่างเดียว)

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี World Monitor, Claude Flow, Windmill

ตัวอื่นในหมวดเดียวกัน

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

World Monitor

ข่าวกรองโลกแบบเรียลไทม์: ความขัดแย้ง ตลาด พลังงาน การค้า การขนส่ง และไซเบอร์

โดย koala73ใช้กันมาก★ 90.6Kอัปเดต วันนี้

รันบนคลาวด์✓ เจ้าของบริการ · worldmonitor.app

Claude Flow

AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.

โดย ruvnetใช้กันมาก↓ 13.5K/สัปดาห์★ 81.6Kอัปเดต 14 เดือนที่ผ่านมา

รันบนเครื่อง

Windmill

Run Windmill scripts and flows and manage jobs, schedules, resources and variables.

โดย windmill-labsใช้กันมาก★ 18.6Kอัปเดต เมื่อวาน

รันบนคลาวด์

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

mcp-fea

Real finite element analysis from a conversation. An AI assistant sends a STEP file and a plain-English question ("does this arm survive a 6 g maneuver with a 400 g motor?"); this MCP server maps the words onto geometry, rejects bad setups deterministically before any compute is spent, meshes and solves with CalculiX on Modal as an async MCP task, and returns a verdict backed by numbers — peak von Mises stress, factor of safety, deflection, natural frequencies — plus rendered stress plots and an interactive 3D viewer. Every study ends with a non-skippable reaction-balance check; every benchmark on the validation page is regenerated by CI on every commit.

*Measured on the live deployment (2026-07-31): cold start 3.8 s · cantilever study submit→completed 9.3 s warm / 12.9 s with a cold solver container · ~$0.002 per study at Modal's posted rates.*

BenchmarkReferenceComputedError
Cantilever tip deflection (PL³/3EI)0.58055 mm0.58046 mm0.02%
NAFEMS LE10 σ_yy @ D−5.38 MPa−5.456 MPa1.41%
Plate-with-hole peak (Heywood Kt)62.8 MPa61.92 MPa1.40%
Cantilever f₁ (Euler–Bernoulli)816.0 Hz815.4 Hz0.08%

Full table, mesh stats, and an explicit limitations section: [docs/validation.md](docs/validation.md) — regenerated by CI, never hand-edited.

Protocol: MCP 2026-07-28 (stateless core) with the io.modelcontextprotocol/tasks extension implemented per SEP-2663 (the official Python SDK v2 shipped without it — this repo also contains the client-side extension that teaches the official SDK to consume task-augmented servers) and an MCP Apps (SEP-1865) 3D viewer. See docs/decisions.md for every engineering call and why.

Deploy (3 commands)

uv sync

uv run modal secret create mcp-fea-token MCP_FEA_TOKEN=$(openssl rand -hex 24) uv run modal deploy -m src.server.modal_app

Modal prints the endpoint URL (https:// --mcp-fea-mcp-endpoint.modal.run). Connect any 2026-07-28 MCP client with Authorization: Bearer . First-time Modal users: uv run modal token new once. Then verify the live deployment end to end:

MCP_FEA_LIVE_URL=https://... MCP_FEA_TOKEN=... make verify-live

Tools

ToolSync/asyncWhat it does
inspect_geometrysyncSTEP → face table (face_id, type, centroid, normal/axis, area, bbox) + part bbox/volume. Call first: it's how English maps to face ids.
list_materialssyncBuilt-in library: Al 6061-T6, Al 7075-T6, Steel 4140, Stainless 304, Ti-6Al-4V, ABS, PLA, Nylon 12, PC (E, ν, yield, density).
submit_fea_studytaskLinear static: validate → mesh (C3D10, curvature-adaptive, local thin-wall refine) → CalculiX → verdict/stress/FoS + 3 stress PNGs.
submit_modal_studytaskNatural frequencies + mode shapes (*FREQUENCY), first N modes (default 6), one exaggerated-deformation PNG per mode. Requires constraints and density.
get_reportsyncFull payload for a completed task; include_mesh_data: true adds the surface-mesh payload the 3D viewer app fetches.

Task lifecycle: working (statusMessage walks validating → meshing → solving → postprocessing) → completed | failed | cancelled; tasks/cancel kills the running container. Tasks are retained 24 h.

Units policy

One conversion boundary, at ingest. Internally everything is consistent mm–N–MPa(–tonne): lengths mm, forces N, stress/moduli MPa, density tonne/mm³ (kg/m³ × 1e-12 — done once, in Material.density_tonne_mm3), which makes modal frequencies come out directly in Hz. STEP coordinates are interpreted in the *declared* units (mm|m|in); gmsh's own unit conversion is disabled so the declared unit is authoritative — and sanity-checked (a 100 mm part declared "m" gets flagged).

Validation codes

Every rejection returns {code, message, suggested_fix}.

CodeMeaningStage
GEOMETRY_REF_INVALIDSTEP missing/unreadable/over 25 MB, bad units fieldparse
GEOMETRY_KERNEL_CRASH / GEOMETRY_TIMEOUTCAD kernel crashed / hung on the file (isolated subprocess; endpoint unaffected)inspect
MATERIAL_UNKNOWN / MATERIAL_UNPHYSICALNot in library / E ∉ [0.01, 1500] GPa, ν ∉ (0, 0.5), yield ≤ 0, density ∉ [10, 25000] kg/m³, missing density for modalparse
CONSTRAINT_INVALID / CONSTRAINT_CONFLICTBad type; node pinned in two local framesparse/deck
LOAD_INVALID / LOAD_MISSING / MODAL_INVALIDBad type/units/direction; zero loads; bad n_modesparse
GEOM_NO_SOLID / GEOM_MULTIPLE_SOLIDSNot a single solid body (assemblies = v2)pre-mesh
FACE_ID_INVALIDFace id not on this partpre-mesh
RIGID_BODY_MOTIONConstraints leave free motion (named, e.g. "rotation about the hole axis") — SVD rank checkpre-mesh
LOAD_ON_FIXED_FACELoad applied to a fully fixed facepre-mesh
UNITS_SUSPECT *(warning)*Part > 5 m or < 0.5 mm — declared units probably wrongpre-mesh
LOAD_MAGNITUDE_EXTREME / _NEGLIGIBLE *(warnings)*σ ≈ F/A > 10× yield or < 1e-6× yieldpre-mesh
MESH_ELEMENT_CAP> 400k elements even after coarsening / local refinemesh
MESH_QUALITY_JACOBIAN / MESH_QUALITY_ASPECT / MESH_THIN_WALLSQuality gates; thin walls get one local auto-refine firstmesh
MESH_TIMEOUTMeshing exceeded its wall budget (near-tangent slivers, helical threads) — the worker is killed from outsidemesh
SOLVER_SINGULAR / SOLVER_MESH_DEGENERATE / SOLVER_TIMEOUT / SOLVER_FAILEDMapped ccx failures (>150k elements auto-switch to the iterative solver)solve
EQUILIBRIUM_FAIL *(warning, untrusted result)*ΣRF vs free-node applied loads off by > 0.5%post
LOAD_INTO_SUPPORT *(warning)*> 5% of the load lands on constrained nodes (loaded face touches a fixed face) and is carried directly by the supportpost
BEYOND_YIELD / LARGE_DEFLECTION *(warnings)*FoS < 1 (post-yield numbers flagged non-physical) / u > 5% of min dimensionpost

Abuse limits (all env-tunable)

25 MB STEP cap · 40 MB request cap (413) · per-token rate limit (MCP_FEA_RATE_LIMIT/_WINDOW_S, 429) · concurrent-solve cap (MCP_FEA_MAX_CONCURRENT) · daily budget (MCP_FEA_MAX_SPAWNS_PER_DAY) · kill switch (MCP_FEA_DISABLE_SPAWN=1). CAD parsing never runs in the endpoint process (see SECURITY.md).

Local development

uv sync

curl -Ls https://micro.mamba.pm/api/micromamba/osx-arm64/latest | tar -xj bin/micromamba ./bin/micromamba create -y -p .tools/ccx-env -c conda-forge calculix=2.23 make test # fast suite (protocol, benchmarks, validation, hardening) make torture # 21 real-world STEP files through the endpoint make validation-page uv run uvicorn --factory src.server.app:create_local_app --port 8000 # local server

Repo map

src/pipeline/ geometry, meshing, deck, solver, validation, post, render · src/materials/ library · src/server/ protocol, tools, tasks, limits, worker host, Modal app, Apps UI · src/client/ SDK tasks extension · tests/ (incl. torture/) · demo/ · docs/ decisions, validation, upstream notes. License: Apache-2.0.