Tools for agents: Mesh transform and OBJ export

Transform mesh geometry with a 4×4 affine matrix and get bounds, centroid, and a ready-to-save OBJ artifact.

Connect with MCP

{
  "mcpServers": {
    "super-agent-tools": {
      "url": "https://app.getsupers.com/sites/agent-mesh-transform/mcp"
    }
  }
}
Streamable HTTP · No API key · Stateless

Use this URL in any client supporting remote Streamable HTTP MCP. Calls return structured JSON; inputs are processed without persistence.

Call transform_mesh

Row-major matrix multiplied by column vectors [x,y,z,1]. Input faces are zero-based; OBJ faces are one-based. Face winding is preserved, including under reflections. Normals and materials are not included.

Input and output schemas
{
  "name": "transform_mesh",
  "title": "Mesh transform and OBJ export",
  "description": "Apply a row-major 4x4 affine matrix to vertices and export OBJ, bounds and centroid. Face indices are zero-based. No filesystem or network access.",
  "inputSchema": {
    "$defs": {
      "Mesh": {
        "properties": {
          "vertices": {
            "items": {
              "maxItems": 3,
              "minItems": 3,
              "prefixItems": [
                {
                  "type": "number"
                },
                {
                  "type": "number"
                },
                {
                  "type": "number"
                }
              ],
              "type": "array"
            },
            "minItems": 1,
            "title": "Vertices",
            "type": "array"
          },
          "faces": {
            "items": {
              "items": {
                "type": "integer"
              },
              "type": "array"
            },
            "title": "Faces",
            "type": "array"
          }
        },
        "required": [
          "vertices"
        ],
        "title": "Mesh",
        "type": "object"
      }
    },
    "properties": {
      "mesh": {
        "$ref": "#/$defs/Mesh"
      },
      "matrix": {
        "items": {
          "items": {
            "type": "number"
          },
          "type": "array"
        },
        "title": "Matrix",
        "type": "array"
      }
    },
    "required": [
      "mesh",
      "matrix"
    ],
    "title": "transform_meshArguments",
    "type": "object"
  },
  "outputSchema": {
    "additionalProperties": true,
    "title": "transform_meshDictOutput",
    "type": "object"
  },
  "icons": null,
  "annotations": {
    "title": null,
    "readOnlyHint": true,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "meta": null,
  "execution": null
}

Run the example to see the actual result.

HTTP alternative

POST https://app.getsupers.com/sites/agent-mesh-transform/call
Content-Type: application/json

{
  "mesh": {
    "vertices": [
      [
        0,
        0,
        0
      ],
      [
        1,
        0,
        0
      ],
      [
        0,
        1,
        0
      ]
    ],
    "faces": [
      [
        0,
        1,
        2
      ]
    ]
  },
  "matrix": [
    [
      2,
      0,
      0,
      10
    ],
    [
      0,
      2,
      0,
      0
    ],
    [
      0,
      0,
      2,
      0
    ],
    [
      0,
      0,
      0,
      1
    ]
  ]
}

The HTTP and MCP interfaces execute the same implementation. Validation errors are returned explicitly. See the tool notes above for its supported inputs and behavior.