MCP Inflow Ingredients
An MCP (Model Context Protocol) server that enables AI assistants to interact with Inflow Inventory API, allowing them to manage ingredients/products and inventory programmatically.
Features
Product/Ingredient Management
List Ingredients: Search and filter products with smart search
Get Ingredient Details: Retrieve full information about specific products
Get Inventory Summary: View quantities (on hand, available, reserved, etc.)
Search Ingredients: Full-text search across name, description, SKU, barcode
Create Ingredient: Add new products to inventory
Update Ingredient: Modify existing product information
Inventory Management
Create Stock Adjustment: Adjust inventory quantities for products
List Stock Adjustments: View adjustment history
Get Stock Adjustment: Retrieve details of specific adjustments
Setup
Prerequisites
Node.js 18+ installed
Inflow Inventory account with API access
Inflow API key and Company ID
Installation
Navigate to the project directory:
Install dependencies:
Configure environment variables:
Required environment variables:
INFLOW_API_KEY
: Your Inflow API keyINFLOW_COMPANY_ID
: Your Inflow company IDINFLOW_API_URL
: API base URL (default: https://cloudapi.inflowinventory.com)INFLOW_API_VERSION
: API version (default: 2025-06-24)
Test Connection
Verify your Inflow API connection:
This will test basic API connectivity and list products.
MCP Server Usage
Running the Server
Start the MCP server:
For development with auto-reload:
Available Tools
Product/Ingredient Tools
list_ingredients
List all products with optional filters
Parameters: name, description, isActive, barcode, smart, include, limit
get_ingredient
Get detailed information about a specific product
Parameters: productId (required), include
get_inventory_summary
Get inventory summary with quantities
Parameters: productId (required)
search_ingredients
Search products using full-text search
Parameters: query (required), limit, include
create_ingredient
Create a new product
Parameters: productId (UUID, required), name (required), sku, description, isActive, additionalFields
update_ingredient
Update an existing product
Parameters: productId (required), name, sku, description, isActive, additionalFields
Inventory Tools
create_stock_adjustment
Create a stock adjustment to modify inventory
Parameters: stockAdjustmentId (UUID, required), locationId (required), lines (array, required), adjustmentReasonId, notes, adjustmentDate
list_stock_adjustments
List stock adjustments
Parameters: adjustmentNumber, include, limit
get_stock_adjustment
Get details of a specific adjustment
Parameters: stockAdjustmentId (required), include
Project Structure
Development
Type Safety
This project uses JSDoc with TypeScript type definitions for type safety without a build step. Types are defined in types.ts
and imported via JSDoc comments.
Testing
Run the connection test:
Scripts
npm start
- Start the MCP servernpm run dev
- Development mode with auto-reloadnpm run test:connection
- Test Inflow API connection
Inflow API Resources
License
MIT
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Enables AI assistants to interact with Inflow Inventory API for managing ingredients/products and inventory operations. Supports product creation, updates, search, and stock adjustments through natural language commands.