inventree-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| INVENTREE_URL | Yes | Your InvenTree instance URL (e.g. https://your-inventree-instance.example.com) | |
| INVENTREE_TOKEN | Yes | Your InvenTree API token (generate from InvenTree > Settings > API Tokens) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| partA | Part & category management in InvenTree. Operations: Read: list, get, get_stock, get_bom, get_bom_usage, get_suppliers, get_manufacturers, get_parameters, get_parameter_templates, get_test_templates, get_related, get_builds, get_internal_prices, get_sale_prices, list_categories, get_category, get_category_parameters Write: create, update, create_category Delete: delete Args: operation: One of the operations listed above. pk: Part or category ID (required for get/update/delete and sub-queries). data: Dict of fields for create/update (e.g. {"name": "Seal Kit", "category": 5}). search: Text search filter for list/list_categories. category: Category ID filter for list. limit: Max results for list (default 25). offset: Pagination offset for list. Returns: JSON string with part/category data or {"error": "..."}. |
| stockB | Stock item & location management in InvenTree. Operations: Read: list, get, get_by_location, get_by_part, list_locations, get_location, get_tracking, get_test_results Write: create, update, transfer, count, add, remove, create_location, upload_test_result Args: operation: One of the operations listed above. pk: Stock item or location ID. data: Dict of fields for create/update. part_id: Filter stock by part (for list, get_by_part). location_id: Filter stock by location or transfer destination. quantity: Quantity for transfer/count/add/remove operations. test_name: Name for upload_test_result. test_result: Boolean pass/fail for upload_test_result. search: Text search filter for list/list_locations. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with stock/location data or {"error": "..."}. |
| build_orderA | Manufacturing build order management in InvenTree. Operations: Read: list, get, get_outputs, get_lines Write: create, update, allocate, complete, cancel Args: operation: One of the operations listed above. pk: Build order ID. data: Dict of fields for create/update/complete. items: List of allocation dicts for allocate (e.g. [{"stock_item": 1, "quantity": 5, "build_line": 3}]). search: Text search filter for list. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with build order data or {"error": "..."}. |
| purchase_orderA | Purchase order lifecycle management in InvenTree. Operations: Read: list, get, get_line_items Write: create, update, issue, receive, complete, cancel, hold, add_line_item, add_extra_line_item Args: operation: One of the operations listed above. pk: Purchase order ID. data: Dict of fields for create/update/add_line_item. location_id: Receiving location for receive operation. items: Line items to receive (e.g. [{"line_item": 1, "quantity": 10}]). search: Text search filter for list. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with PO data or {"error": "..."}. |
| sales_orderC | Sales order lifecycle management in InvenTree. Operations: Read: list, get, get_line_items, get_allocations Write: create, update, complete, cancel, hold, add_line_item, add_extra_line_item, create_shipment, complete_shipment Args: operation: One of the operations listed above. pk: Sales order ID. data: Dict of fields for create/update/add_line_item. shipment_id: Shipment ID for complete_shipment. reference: Reference string for create_shipment. search: Text search filter for list. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with SO data or {"error": "..."}. |
| return_orderA | Return order lifecycle management in InvenTree. Operations: Read: list, get, get_line_items Write: create, update, complete, cancel, add_line_item Args: operation: One of the operations listed above. pk: Return order ID. data: Dict of fields for create/update/add_line_item. search: Text search filter for list. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with RO data or {"error": "..."}. |
| companyA | Supplier, manufacturer, and customer management in InvenTree. Operations: Read: list, get, list_supplier_parts, get_supplier_part, list_manufacturer_parts, get_manufacturer_part, list_contacts, list_addresses, get_price_breaks Write: create, update Delete: delete Args: operation: One of the operations listed above. pk: Company, supplier part, or manufacturer part ID. data: Dict of fields for create/update. company_id: Company ID for list_supplier_parts/list_manufacturer_parts/list_contacts/list_addresses. supplier_part_id: Supplier part ID for get_price_breaks. search: Text search filter for list/list_supplier_parts/list_manufacturer_parts. is_supplier/is_manufacturer/is_customer: Boolean filters for list. limit: Max results (default 25). offset: Pagination offset. Returns: JSON string with company data or {"error": "..."}. |
| barcodeA | Barcode scanning and assignment in InvenTree. Operations: Read: scan, lookup Write: assign, unassign Args: operation: One of the operations listed above. barcode_data: Barcode string for scan/assign/lookup. model_type: Model type for assign/unassign (part, stockitem, stocklocation, build, purchaseorder, salesorder, returnorder). pk: Object ID for assign/unassign. Returns: JSON string with barcode result or {"error": "..."}. |
| labelA | Label printing and template management in InvenTree. Operations: list_templates, print_part, print_stock, print_location, download_template Args: operation: One of the operations listed above. label_type: Filter for list_templates (part, stock, location). template_id: Label template ID for print/download operations. item_ids: List of item IDs to print labels for. destination: File path to save downloaded template to. Returns: JSON string with label templates or print result. |
| reportA | Report generation and template management in InvenTree. Operations: list_templates, print_report, download_template Args: operation: One of the operations listed above. template_id: Report template ID for print_report/download_template. item_ids: List of item IDs to include in report. model_type: Model type for print_report. destination: File path to save downloaded template to. Returns: JSON string with report templates or print result. |
| attachmentA | File attachment management for any InvenTree object. Operations: Read: list, download Write: upload, upload_link Delete: delete Args: operation: One of the operations listed above. model_type: Object type (part, stockitem, build, purchaseorder, salesorder, company). model_id: Object ID for list/upload/upload_link. attachment_id: Attachment ID for download/delete. file_path: Local file path for upload. link: URL for upload_link. comment: Optional comment for uploads. destination: File path to save downloaded attachment to. Returns: JSON string with attachment data or {"error": "..."}. |
| systemA | InvenTree system administration and health checks. Operations: health, version, settings, list_users, get_user, list_groups, list_owners, get_project_codes, list_currencies All operations are read-only. Args: operation: One of the operations listed above. pk: User ID for get_user. Returns: JSON string with system data. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hvkshetry/inventree-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server