intelligent-staffing-systems/mcp-inflow-ingredients
If you are the rightful owner of mcp-inflow-ingredients and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
An MCP server that integrates with the Inflow Inventory API to manage ingredients and inventory programmatically.
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:
cd ~/mcp-inflow-ingredients
- Install dependencies:
npm install
- Configure environment variables:
cp .env.example .env
# Edit .env with your Inflow API credentials
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:
npm run test:connection
This will test basic API connectivity and list products.
MCP Server Usage
Running the Server
Start the MCP server:
npm start
For development with auto-reload:
npm run dev
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
mcp-inflow-ingredients/
├── index.js # Main MCP server entry point
├── types.ts # TypeScript definitions for JSDoc
├── package.json # Node.js dependencies and scripts
├── .env # Environment variables (not in git)
├── .env.example # Environment template
├── .mcp.json # MCP server configuration
├── src/
│ ├── inflow-client.js # Inflow API client
│ └── handlers/
│ ├── product-handlers.js # Product operations
│ └── inventory-handlers.js # Inventory operations
├── tests/
│ └── test-connection.js # API connection test
└── docs/
└── swagger.json # Inflow API documentation
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:
npm run test:connection
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