Skip to content
WIKI · DEVELOPERS

Wyntek MCP Server Reference

Wyntek's MCP server lives at https://wyntek.tech/mcp. It is stateless, read-only, and needs no authentication: each request is one JSON-RPC message sent as an HTTP POST, and each reply is plain JSON.

Updated 30 Sep 2026 · 4 min read · By Wyntek

Endpoint and transport

Send JSON-RPC 2.0 messages as HTTP POST requests to https://wyntek.tech/mcp with Content-Type: application/json. The server always replies with application/json rather than an event stream, and it keeps nothing between requests, so it never issues an Mcp-Session-Id.

  • POST carries requests, notifications, and responses. Notifications get HTTP 202 with no body.
  • GET and DELETE return HTTP 405: there is no server-to-client stream and no session to close.
  • OPTIONS answers CORS preflight. Any origin may call the server, and no cookies are involved.
  • The MCP-Protocol-Version header is optional. If you send it, it must name a supported version, or the server answers HTTP 400.
  • Batches of up to 20 messages are still accepted for older clients.

Initialize

Clients start with initialize. The server echoes the protocol version you ask for when it supports it, and otherwise answers with its latest version, 2025-11-25.

Request
curl -s https://wyntek.tech/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"my-agent","version":"1.0"}}}'
Response
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "protocolVersion": "2025-06-18",
    "capabilities": {
      "tools": {
        "listChanged": false
      }
    },
    "serverInfo": {
      "name": "wyntek",
      "title": "Wyntek manufacturing",
      "version": "1.0.0"
    },
    "instructions": "Wyntek turns CAD files into fabricated, inspected, shipped parts (FDM and SLA 3D printing, CNC machining). Use list_capabilities to see processes, materials, plans and lead times. Use estimate_price for a dollar estimate from a part volume or a small STL/OBJ file. Agents cannot place or pay for orders: use create_order_link and give the link to the person, who signs in, uploads the file, reviews the binding price and submits."
  }
}

Tools

tools/list returns three tools. Each is annotated as read-only, non-destructive, and idempotent, and each returns its result as both text and structuredContent.

list_capabilities

Takes no arguments. Returns every process with its materials and typical lead time, the plans that include each material, plan prices, accepted file formats, and quantity limits.

estimate_price

estimate_price arguments
ArgumentTypeNotes
processstring, requiredfdm, sla, or cnc
materialstring, requiredA material id from list_capabilities, such as pla or aluminum
quantityinteger1 to 100, default 1
volume_cm3numberSolid volume of one unit in cubic centimetres
filesarrayUp to 5 objects of the form { name, content_base64 }, 3 MB in total. STL and OBJ in millimetres are measured; other formats return manual_review.

Send exactly one of volume_cm3 or files. The estimate uses the same calculation as Wyntek's checkout and excludes shipping.

Request
curl -s https://wyntek.tech/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"estimate_price","arguments":{"process":"fdm","material":"petg","quantity":10,"volume_cm3":12.5}}}'
result.structuredContent
{
  "process": "fdm",
  "material": {
    "id": "petg",
    "name": "PETG"
  },
  "quantity": 10,
  "currency": "USD",
  "available_on_plans": [
    "free",
    "pro",
    "max",
    "enterprise"
  ],
  "typical_lead_time_days": 3,
  "order_url": "https://wyntek.tech/jobs/new?service=fdm&material=petg&quantity=10",
  "note": "Estimate only, excluding shipping. The binding price is calculated from the uploaded file when the order is submitted on wyntek.tech.",
  "status": "estimated",
  "volume_cm3": 12.5,
  "unit_price": {
    "amount_cents": 160,
    "formatted": "$1.60"
  },
  "total_price": {
    "amount_cents": 1600,
    "formatted": "$16"
  }
}

create_order_link

Takes an optional process, material, and quantity. Returns an order_url into Wyntek's order form with those fields filled in, the steps the person follows, and requires_human: true.

result.structuredContent
{
  "order_url": "https://wyntek.tech/jobs/new?service=fdm&material=petg&quantity=10",
  "steps": [
    "Open the link. Sign in, or create a free account if new.",
    "Upload the CAD file and confirm the configuration.",
    "Review the binding price, then submit. Shipping is arranged from the dashboard once the part is made."
  ],
  "requires_human": true
}

Errors

Protocol problems come back as JSON-RPC errors. Problems with a tool's input come back as an ordinary result with isError: true and an error code, so the model can read the message and try again.

MCP error responses
CaseResponse
Body is not valid JSONHTTP 400, JSON-RPC -32700 Parse error
Unknown methodJSON-RPC -32601 Method not found
Unknown tool, or arguments that are not an objectJSON-RPC -32602 Invalid params
Invalid estimate inputResult with isError and error.code invalid_request, unknown_material, or unparseable_file
Pricing briefly unavailableResult with isError and error.code unavailable
Unsupported MCP-Protocol-Version headerHTTP 400
Body over 4.4 MBHTTP 413
Too many requestsHTTP 429 with a Retry-After header

Sources

  1. MCP specification: Transports
  2. MCP specification: Tools
  3. JSON-RPC 2.0 specification

STOP BUILDING LABS.
START BUILDING PRODUCTS.

GET STARTED

Free to start · no card required · 30-second signup