{
  "info": {
    "name": "Maintainx — mcp.ai",
    "description": "REST API for the Maintainx MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/maintainx",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "maintainx_create_category",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/category",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "category"
          ]
        },
        "description": "Tool to create a new category in MaintainX for organizing work orders, assets, and other items. Use when you need to add a new category to the organization's classification system.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"label\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_location",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/location",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "location"
          ]
        },
        "description": "Tool to create a new location in MaintainX. Use when you need to add a new physical location where assets are stored or work is performed. Locations can be organized hierarchically using the parentId ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"address\": \"\",\n  \"barcode\": \"\",\n  \"parentId\": 0,\n  \"vendorIds\": \"\",\n  \"description\": \"\",\n  \"extraFields\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_procedure_template",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/procedure/template",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "procedure",
            "template"
          ]
        },
        "description": "Tool to create a new procedure template in MaintainX with checklist items for work orders. Use when you need to create a standardized procedure that can be attached to work orders. The template can in",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"fields\": \"\",\n  \"description\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_work_order",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/work/order",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "work",
            "order"
          ]
        },
        "description": "This tool creates a new work order in MaintainX. It uses the POST /api/v1/workorders endpoint. The tool requires a 'title' for the work order and offers several optional parameters including descripti",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"asset_id\": 0,\n  \"due_date\": \"\",\n  \"priority\": \"\",\n  \"team_ids\": \"\",\n  \"user_ids\": \"\",\n  \"categories\": \"\",\n  \"start_date\": \"\",\n  \"description\": \"\",\n  \"location_id\": 0,\n  \"procedure_template_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_work_order_comment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/work/order/comment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "work",
            "order",
            "comment"
          ]
        },
        "description": "This tool creates a new comment on an existing work order in MaintainX. It allows users to add comments for documentation, updates, or communication purposes within a specific work order. It requires ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"content\": \"\",\n  \"work_order_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_work_request",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/work/request",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "work",
            "request"
          ]
        },
        "description": "Tool to create a new work request in MaintainX. Use when you need to submit a request for work that can later be converted to a work order. Work requests are typically used to initiate maintenance or ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"asset_id\": 0,\n  \"priority\": \"\",\n  \"description\": \"\",\n  \"location_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_create_work_request_portal",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/work/request/portal",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "work",
            "request",
            "portal"
          ]
        },
        "description": "Creates a new work request portal in MaintainX. A work request portal allows users to submit work requests through a dedicated URL. The portal can be customized with a title, welcome text, and descrip",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"asset_id\": 0,\n  \"email_only\": false,\n  \"location_id\": 0,\n  \"welcome_text\": \"\",\n  \"contact_information\": \"\",\n  \"description_placeholder\": \"\",\n  \"send_email_notification\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_delete_assets",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/assets",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "assets"
          ]
        },
        "description": "Tool to delete an asset from MaintainX by its ID. Use when you need to permanently remove an asset from the system. Returns a success confirmation upon successful deletion (HTTP 204).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0,\n  \"skipWebhook\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_delete_category",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/category",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "category"
          ]
        },
        "description": "Tool to delete a category in MaintainX. Use when you need to remove a category from the system. Returns success status upon deletion (HTTP 204).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0,\n  \"skipWebhook\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_find_entity",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/find/entity",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "find",
            "entity"
          ]
        },
        "description": "A tool to search and find specific entities within MaintainX by specified fields. This tool allows users to search for different types of entities including work orders, users, and locations.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"offset\": 0,\n  \"status\": \"\",\n  \"sort_by\": \"\",\n  \"sort_order\": \"\",\n  \"entity_type\": \"\",\n  \"search_query\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_get_category",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/category",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "category"
          ]
        },
        "description": "Tool to retrieve detailed information about a specific category by its ID. Use when you need to get the label, description, update time, or work order count for a category.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_get_location",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/location",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "location"
          ]
        },
        "description": "Tool to retrieve detailed information about a specific location by its ID. Use when you need to get comprehensive details including address, attachments, child locations, and custom fields for a locat",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_get_user",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/user",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "user"
          ]
        },
        "description": "Tool to retrieve detailed information about a specific user by their ID. Use when you need to get user data including name, email, role, hourly rate, and custom fields.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_get_vendor",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/vendor",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "vendor"
          ]
        },
        "description": "Tool to retrieve detailed information about a specific vendor by its ID. Use when you need to get comprehensive details about a vendor including contact information, attachments, and custom fields.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_get_workorders_costs",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/workorders/costs",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "workorders",
            "costs"
          ]
        },
        "description": "Tool to retrieve costs information for a specific work order by its ID. Use when you need to get detailed cost breakdown including total costs and individual cost rows for a work order.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_asset_criticalities",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/asset/criticalities",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "asset",
            "criticalities"
          ]
        },
        "description": "Tool to retrieve a list of asset criticalities from MaintainX. Use when you need to get all available asset criticality levels in the organization, optionally filtered by label or level.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"label\": \"\",\n  \"level\": 0,\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"x_organization_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_assets",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/assets",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "assets"
          ]
        },
        "description": "This tool allows users to retrieve a list of all assets in their organization.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"expand\": \"\",\n  \"location_id\": 0,\n  \"custom_field_name\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_categories",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/categories",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "categories"
          ]
        },
        "description": "This tool retrieves a list of all categories in your MaintainX organization. Categories are used to organize and classify work orders, assets, and other items in the system. It supports listing the ca",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_locations",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/locations",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "locations"
          ]
        },
        "description": "This tool retrieves a list of all available locations in the organization's MaintainX account. The locations can be physical places where assets are located, work is performed, or maintenance is neede",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_meters",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/meters",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "meters"
          ]
        },
        "description": "Tool to list all meters in your organization. Use this to retrieve meter information including measurement types, units, and readings.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"expand\": \"\",\n  \"measurement_type\": \"\",\n  \"x_organization_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_parts",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/parts",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "parts"
          ]
        },
        "description": "Tool to list parts/inventory items with pagination and filtering. Use when you need to retrieve available parts from the organization's inventory.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\",\n  \"locationId\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_procedure_templates",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/procedure/templates",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "procedure",
            "templates"
          ]
        },
        "description": "Tool to list procedure templates from MaintainX. Use when you need to retrieve available procedure templates that can be used in work orders.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_teams",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/teams",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "teams"
          ]
        },
        "description": "This tool retrieves a list of all teams in your MaintainX organization.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_work_orders",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/work/orders",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "work",
            "orders"
          ]
        },
        "description": "Action to list work orders from MaintainX.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"sort\": \"\",\n  \"limit\": 0,\n  \"parts\": \"\",\n  \"teams\": \"\",\n  \"title\": \"\",\n  \"assets\": \"\",\n  \"cursor\": \"\",\n  \"expand\": \"\",\n  \"vendors\": \"\",\n  \"statuses\": \"\",\n  \"assignees\": \"\",\n  \"locations\": \"\",\n  \"not_parts\": \"\",\n  \"categories\": \"\",\n  \"not_assets\": \"\",\n  \"priorities\": \"\",\n  \"not_vendors\": \"\",\n  \"not_locations\": \"\",\n  \"show_upcoming\": false,\n  \"not_categories\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_work_request_portals",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/work/request/portals",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "work",
            "request",
            "portals"
          ]
        },
        "description": "Tool to list all work request portals in your MaintainX organization. Use when you need to retrieve available work request portals for managing external work requests.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_list_work_requests",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/work/requests",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "work",
            "requests"
          ]
        },
        "description": "Tool to retrieve a list of work requests from MaintainX. Use when you need to view all work requests. Supports pagination for large result sets using cursor and limit parameters.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_update_vendors_attachment",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/vendors/attachment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "vendors",
            "attachment"
          ]
        },
        "description": "Tool to update a vendor attachment in MaintainX. Use when you need to upload or replace a file attachment for a specific vendor. The file is uploaded as binary data.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0,\n  \"file\": {},\n  \"filename\": \"\",\n  \"skipWebhook\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_update_work_order",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/work/order",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "work",
            "order"
          ]
        },
        "description": "This tool allows users to update an existing work order in MaintainX by modifying specific attributes without affecting other unchanged fields. It requires the workorder_id and at least one of the opt",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"priority\": \"\",\n  \"description\": \"\",\n  \"workorder_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_update_work_order_status",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/work/order/status",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "work",
            "order",
            "status"
          ]
        },
        "description": "This tool allows users to update the status of a specific work order in MaintainX. It is focused specifically on status updates, making it more streamlined than the comprehensive 'Update Work Order' a",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"status\": \"\",\n  \"workorder_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "maintainx_update_work_request_portal",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/work/request/portal",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "work",
            "request",
            "portal"
          ]
        },
        "description": "Updates an existing work request portal in MaintainX. Tool to update work request portal information such as title, welcome text, contact information, and notification settings. Use when modifying an ",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"id\": 0,\n  \"title\": \"\",\n  \"asset_id\": 0,\n  \"email_only\": false,\n  \"location_id\": 0,\n  \"skip_webhook\": false,\n  \"welcome_text\": \"\",\n  \"contact_information\": \"\",\n  \"description_placeholder\": \"\",\n  \"send_email_notification\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}