# ItemPath MCP

> ItemPath lets your agent manage complex warehouse and supply chain data directly through API calls. It handles everything from checking current stock levels for a specific SKU to tracking every movement of goods across multiple storage locations. Use it to list all materials, track inventory transactions, view order details, or check which user was responsible for a change in stock count.

## Overview
- **Category:** data-analytics
- **Price:** Free
- **Tags:** inventory-management, warehouse-operations, supply-chain, order-tracking

## Description

This MCP lets your AI agent act as an operational data layer for your warehouse system. Instead of logging into the ItemPath interface or running complex SQL queries, you simply ask your agent to perform actions—like checking if enough materials are available for an order, or finding out where a specific batch is stored.

It gives your workflow access to every crucial piece of inventory information: who moved what, when they moved it, and how many items are left. Whether you need to audit stock counts by looking at transaction history or quickly list all active products, this MCP handles the data retrieval. By connecting through Vinkius, your agent gets immediate access to ItemPath’s full catalog of tools without needing separate credentials or endpoints for every function.

## Tools

### get_material
Gets the SKU details, storage rules, and current quantity on hand for a single material.

### get_me
Verifies your connection health and retrieves basic information about the authenticated user.

### get_order
Retrieves detailed information for a specific order, including all materials, target locations, and assigned pickers.

### list_batches
Lists all material batches, which is critical when tracking perishable or regulated goods that require lot management.

### list_calls
Shows a history of recent API requests, useful for debugging integration issues and monitoring system interaction frequency.

### list_locations
Lists every storage location in the warehouse so you can understand where inventory is physically stored.

### list_materials
Provides a full list of all materials, including their names and unique IDs, for overall product auditing.

### list_orders
Lists every open order with its ID, type, and current status to track warehouse throughput.

### list_transactions
Generates a comprehensive log of all inventory transactions, including timestamps, material IDs, quantity changes, and user IDs.

### list_users
Lists every system account used in the warehouse to identify who performed specific inventory actions or updates.

## Prompt Examples

**Prompt:** 
```
List all active materials in the warehouse.
```

**Response:** 
```
I'll fetch the list of materials and current stock levels from ItemPath.
```

**Prompt:** 
```
Show me the details for order ID 'ORD-123'.
```

**Response:** 
```
I'll retrieve the full details and status for that specific order.
```

**Prompt:** 
```
Check recent inventory transactions.
```

**Response:** 
```
I'll look up the recent material movements and transaction history for you.
```

## Capabilities

### Audit inventory movements
Retrieve a detailed log of all stock changes, showing timestamps, material IDs, and quantity adjustments.

### Check current item status
Get the SKU details, storage rules, and up-to-date count for any specific inventory item.

### Track fulfillment progress
Pull all materials involved in a specific order, including target locations and which picker is assigned to it.

### Map out the warehouse layout
List every known storage location so you can understand where inventory physically resides.

### Review system activity
View recent API request history or list all system users to track who is interacting with the data.

## Use Cases

### Investigating a stock count discrepancy
A user notices the physical count for SKU 405 is wrong. They ask their agent to check recent transactions. The agent uses list_transactions and then get_material, providing a full timeline of movements and showing which system users were responsible for the last few quantity changes.

### Fulfilling a complex customer order
The user asks to prepare for 'ORD-901'. The agent calls get_order, immediately learning all required materials and their designated target locations. This prevents the team from wasting time searching multiple physical zones.

### Onboarding a new warehouse worker
The manager wants to check system access. They prompt the agent to list_users, confirming which accounts exist, and then use get_me to verify their own current permissions, ensuring compliance from day one.

### Pre-empting a supply shortage
A planner needs to know if they have enough material for the next week's big order. The agent calls list_materials to get all active SKUs and then runs get_material on key items to confirm sufficient quantity-on-hand.

## Benefits

- Audit stock accuracy immediately. Instead of manually checking multiple sheets, you can call list_transactions to get a complete log showing exactly when and by whom every quantity change occurred.
- Streamline order fulfillment checks. Use get_order to pull all necessary details for an item—materials, target location, picker name—in one step, eliminating cross-referencing tabs.
- Understand your entire product catalog. Running list_materials gives you a single source of truth for every available SKU and its description, perfect for auditing or reporting.
- Handle regulated goods easily. If you deal with perishables, the list_batches tool lets you track specific lots, ensuring compliance by linking material IDs to their unique batch numbers.
- Improve visibility into location planning. Calling list_locations gives your agent a map of all available storage points, helping optimize where new inventory should be placed.

## How It Works

The bottom line is, your AI agent handles the complex connection logic, letting you work with inventory data using natural language prompts alone.

1. Connect your AI client through Vinkius and authorize access to ItemPath using your credentials.
2. Tell your agent what you need (e.g., 'Find all materials for order XYZ').
3. The MCP translates that request into the correct API call, retrieves the data, and passes it back to your agent for processing.

## Frequently Asked Questions

**How do I check if a specific material exists using list_materials?**
You run list_materials first to get the full catalog of all existing SKUs and IDs. If you need details on one item, follow up by running get_material with that specific ID.

**What is the difference between list_orders and get_order?**
list_orders gives you a broad view of every open order ID and its general status. Use get_order when you already have an ID and need all the detailed materials, locations, and pickers associated with that single fulfillment task.

**Can I track specific batches using list_transactions?**
No, list_transactions gives a general log of quantity changes. Use list_batches first to find all available lots, then refer to the transaction logs to see which batch was involved in the movement.

**How do I verify who updated the stock? (Using list_users)**
You don't use list_users to check changes. You must call list_transactions, as that tool includes user IDs alongside timestamps and quantity changes, telling you exactly who was responsible.

**How do I confirm my agent's connection status using get_me?**
The `get_me` tool verifies your connection health and current user identity. It returns authenticated user details, confirming system access before you run any complex inventory queries.

**I need to check my usage history; what does list_calls track?**
`list_calls` retrieves recent API request history for debugging purposes. Use this log to diagnose unexpected behavior or monitor potential rate limits during automation runs.

**Before tracking materials, how do I understand the physical layout using list_locations?**
The `list_locations` tool retrieves every defined storage location in the warehouse. This is essential when you need to map out where specific inventory items or order fulfillment points are physically stored.

**How do I get deep details on a single product using get_material?**
`get_material` provides comprehensive data for a specific SKU, including its storage rules and exact quantity-on-hand. This is the best way to analyze real-time availability and handling requirements.

**How do I get ItemPath API credentials?**
Log in to your ItemPath instance, navigate to your user profile or security settings, and generate a new Application Token or Access Token.

**What is the subdomain?**
The subdomain is the first part of your ItemPath URL (e.g., if you access ItemPath at acme.itempath.com, your subdomain is 'acme').

**Can I see real-time inventory levels?**
Yes, the list_materials and list_batches tools provide real-time information on your current stock and material availability.