Skip to main content
Glama
hvkshetry

inventree-mcp

by hvkshetry

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
INVENTREE_URLYesYour InvenTree instance URL (e.g. https://your-inventree-instance.example.com)
INVENTREE_TOKENYesYour InvenTree API token (generate from InvenTree > Settings > API Tokens)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

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