@taskingagency/mcp-consigncloud
v1.0.0
Published
Model Context Protocol server for ConsignCloud API - manage inventory, sales, and accounts
Maintainers
Readme
ConsignCloud MCP Server
A Model Context Protocol (MCP) server for the ConsignCloud API, enabling AI assistants to manage inventory, sales, accounts, and more in your consignment/retail business.
🚀 Quick Start: New to this project? See QUICK_START.md to get running in 5 minutes!
📚 Documentation
- QUICK_START.md - Get up and running in 5 minutes
- TESTING.md - Test with MCP Inspector
- CLAUDE_DESKTOP_SETUP.md - Integrate with Claude Desktop
- CONSIGNCLOUD_API_SUMMARY.md - Complete API reference
- PROJECT_SUMMARY.md - Technical overview
Features
This MCP server provides tools for:
Inventory Management
- List, create, update, and delete items
- Filter items by price, category, account, status, location
- Get inventory statistics
- Bulk edit items
- Update item statuses
Sales Management
- List and view sales
- Void and refund sales
- Filter sales by date, customer, location, status
- Get sales trends and analytics
Account Management
- Manage vendor/consignor accounts
- View account balances and statistics
- Track purchases and items per account
Additional Features
- Manage item categories
- Manage store locations
- Create and manage batches of items
- Search and suggestions across entities
Installation
- Clone this repository:
git clone <repository-url>
cd mcp-consigncloud- Install dependencies:
npm install- Create a
.envfile with your ConsignCloud API credentials:
cp .env.example .env- Edit
.envand add your API key:
CONSIGNCLOUD_API_KEY=your_api_key_here
CONSIGNCLOUD_API_BASE_URL=https://api.consigncloud.com/api/v1Getting Your API Key
- Log in to your ConsignCloud account
- Navigate to Settings → Apps
- Enable the API & Webhooks app
- Click Add API Key
- Copy the generated API key to your
.envfile
Usage
The server supports two modes:
1. STDIO Mode (for Claude Desktop)
This is the default mode for integration with Claude Desktop and other MCP clients.
Development:
npm run devProduction:
npm run build
npm start2. HTTP/SSE Mode (for testing with MCP Inspector)
This mode runs an HTTP server with Server-Sent Events for easy testing.
Development:
npm run dev:httpProduction:
npm run build
npm run start:httpWith custom configuration (CLI flags override environment variables):
node dist/http-server.js --api-key YOUR_KEY --port 3001 --host localhostWith absolute path:
/opt/homebrew/bin/node /absolute/path/to/dist/http-server.js --api-key YOUR_KEYThe server will run on http://localhost:3000 (configurable via .env or CLI flags).
Testing with MCP Inspector
See TESTING.md for detailed instructions on testing with MCP Inspector.
Quick start:
# Option 1: HTTP/SSE mode
# Terminal 1: Start the HTTP server
npm run start:http
# Terminal 2: Launch MCP Inspector
npx @modelcontextprotocol/inspector http://localhost:3000/sse
# Option 2: stdio mode (uses .env file)
npx @modelcontextprotocol/inspector node /absolute/path/to/dist/index.js
# Option 3: stdio mode with environment variable
CONSIGNCLOUD_API_KEY=your_key npx @modelcontextprotocol/inspector node dist/index.jsUsing with Claude Desktop
Add this to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Recommended: Using .env file
{
"mcpServers": {
"consigncloud": {
"command": "node",
"args": ["/Users/administrators/Documents/Workspace/github/mcp-consigncloud/dist/index.js"]
}
}
}Alternative: Inline environment variables
{
"mcpServers": {
"consigncloud": {
"command": "node",
"args": ["/Users/administrators/Documents/Workspace/github/mcp-consigncloud/dist/index.js"],
"env": {
"CONSIGNCLOUD_API_KEY": "your_api_key_here"
}
}
}
}See CLAUDE_DESKTOP_SETUP.md for detailed setup instructions.
Available Tools
Inventory Tools
list_items- List inventory items with filtersget_item- Get specific item detailscreate_item- Create new inventory itemupdate_item- Update existing itemdelete_item- Delete (soft delete) an itemget_item_stats- Get inventory statistics
Sales Tools
list_sales- List sales with filtersget_sale- Get specific sale detailsvoid_sale- Void a saleget_sales_trends- Get sales analytics
Account Tools
list_accounts- List vendor/consignor accountsget_account- Get specific account detailscreate_account- Create new accountupdate_account- Update existing accountget_account_stats- Get account statistics
Category & Location Tools
list_categories- List item categoriescreate_category- Create new categorylist_locations- List store locations
Batch Tools
list_batches- List item batchescreate_batch- Create new batchupdate_batch_status- Change batch status
Utility Tools
search_suggest- Search across entities
Example Prompts
Once configured with Claude Desktop, you can use prompts like:
- "List all inventory items under $50"
- "Show me sales from last week"
- "Create a new vendor account for John Doe"
- "What are the top selling items?"
- "Show me the current balance for account ABC123"
- "Create a new batch for vendor XYZ"
API Documentation
For detailed API documentation, see CONSIGNCLOUD_API_SUMMARY.md
Currency Format
All monetary amounts are in the smallest denomination (cents for USD):
- $10.00 = 1000 cents
- $0.50 = 50 cents
Rate Limiting
The ConsignCloud API uses a leaky bucket algorithm:
- Bucket capacity: 100 requests
- Leak rate: 10 requests/second
- Exceeding limit returns 429 status
Development
Project Structure
mcp-consigncloud/
├── src/
│ ├── index.ts # MCP server implementation
│ ├── client.ts # ConsignCloud API client
│ └── types.ts # TypeScript type definitions
├── dist/ # Compiled JavaScript (generated)
├── .env.example # Environment variable template
├── package.json
├── tsconfig.json
└── README.mdBuilding
npm run buildWatch Mode
npm run watchTroubleshooting
API Key Issues
If you get authentication errors:
- Verify your API key is correct in
.env - Check that the API key hasn't been revoked in ConsignCloud
- Ensure the API & Webhooks app is enabled in your ConsignCloud settings
Connection Issues
If the server won't start:
- Check your
.envfile exists and contains valid values - Verify network connectivity to
api.consigncloud.com - The HTTP server validates API connection on startup and shows clear error messages
HTTP/SSE Server Features
The HTTP server includes:
- ✅ Startup validation - Tests API connection before accepting requests
- ✅ CLI arguments - Override env vars with
--api-key,--port,--host - ✅ Detailed errors - Comprehensive error messages with HTTP status codes
- ✅ Session management - Proper SSE session handling
- ✅ Health endpoint -
/healthfor monitoring - ✅ Masked logging - API keys are partially hidden in logs
License
ISC
Support
For ConsignCloud API issues, contact: [email protected] For MCP server issues, please open a GitHub issue.
