- API client with Clover REST API v3 integration (OAuth2 + API key auth) - 50+ comprehensive tools across 10 categories: * Orders: list, get, create, update, delete, add/remove line items, discounts, payments, fire order * Inventory: items, categories, modifiers, stock management * Customers: CRUD, search, addresses, payment cards * Employees: CRUD, roles, shifts, clock in/out * Payments: list, get, refunds * Merchants: settings, devices, tender types * Discounts: CRUD operations * Taxes: CRUD, tax rates * Reports: sales summary, revenue by item/category, employee performance * Cash: cash drawer tracking and events - 18 React MCP apps with full UI: * Order management: dashboard, detail, grid * Inventory: dashboard, detail, category manager * Customer: detail, grid * Employee: dashboard, schedule * Payment history * Analytics: sales dashboard, revenue by item, revenue by category * Configuration: discount manager, tax manager, device manager * Cash drawer - Complete TypeScript types for Clover API - Pagination support with automatic result fetching - Comprehensive error handling - Full README with examples and setup guide
Clover MCP Server
A comprehensive Model Context Protocol (MCP) server for the Clover POS platform, providing 50+ tools and 18 React applications for complete point-of-sale management.
Features
🛠️ 50+ MCP Tools
Orders Management (10 tools)
clover_list_orders- List orders with filtering and paginationclover_get_order- Get order details with expanded dataclover_create_order- Create new ordersclover_update_order- Update existing ordersclover_delete_order- Delete ordersclover_add_line_item- Add items to ordersclover_remove_line_item- Remove items from ordersclover_add_order_discount- Apply discounts to ordersclover_list_order_payments- List payments for an orderclover_fire_order- Send order to kitchen
Inventory Management (11 tools)
clover_list_items- List inventory itemsclover_get_item- Get item detailsclover_create_item- Create new itemsclover_update_item- Update existing itemsclover_delete_item- Delete itemsclover_list_categories- List item categoriesclover_create_category- Create new categoryclover_list_modifier_groups- List modifier groupsclover_create_modifier- Create modifiersclover_list_item_stocks- List stock levelsclover_update_item_stock- Update stock quantities
Customer Management (9 tools)
clover_list_customers- List customersclover_get_customer- Get customer detailsclover_create_customer- Create new customerclover_update_customer- Update customer infoclover_delete_customer- Delete customerclover_search_customers- Search by name/phone/emailclover_list_customer_addresses- List customer addressesclover_add_customer_address- Add address to customerclover_list_customer_cards- List saved payment cards
Employee Management (10 tools)
clover_list_employees- List employeesclover_get_employee- Get employee detailsclover_create_employee- Create new employeeclover_update_employee- Update employee infoclover_delete_employee- Delete employeeclover_list_employee_roles- List available rolesclover_list_employee_shifts- List shifts for employeeclover_create_shift- Create a shiftclover_clock_in_employee- Clock in employeeclover_clock_out_employee- Clock out employee
Payment Management (4 tools)
clover_list_payments- List paymentsclover_get_payment- Get payment detailsclover_create_refund- Create refundclover_list_refunds- List refunds for payment
Merchant Settings (5 tools)
clover_get_merchant- Get merchant informationclover_update_merchant- Update merchant settingsclover_list_devices- List POS devicesclover_get_device- Get device detailsclover_list_tender_types- List payment methods
Discounts (5 tools)
clover_list_discounts- List discountsclover_get_discount- Get discount detailsclover_create_discount- Create discountclover_update_discount- Update discountclover_delete_discount- Delete discount
Tax Management (5 tools)
clover_list_tax_rates- List tax ratesclover_get_tax_rate- Get tax rate detailsclover_create_tax_rate- Create tax rateclover_update_tax_rate- Update tax rateclover_delete_tax_rate- Delete tax rate
Reports & Analytics (4 tools)
clover_sales_summary- Get sales summary for date rangeclover_revenue_by_item- Revenue breakdown by itemclover_revenue_by_category- Revenue breakdown by categoryclover_employee_performance- Employee performance report
Cash Management (2 tools)
clover_list_cash_events- List cash drawer eventsclover_get_cash_drawer- Get cash drawer status
📱 18 React MCP Apps
Order Management
- order-dashboard - Overview of order metrics and quick actions
- order-detail - Detailed order view with line items
- order-grid - Searchable grid of all orders
Inventory Management
- inventory-dashboard - Inventory metrics and quick actions
- inventory-detail - Item management with search
- category-manager - Category organization
Customer Management
- customer-detail - Detailed customer profile
- customer-grid - Customer directory with search
Employee Management
- employee-dashboard - Employee metrics and performance
- employee-schedule - Shift management and time tracking
Payments
- payment-history - Payment transactions and refunds
Reports & Analytics
- sales-dashboard - Sales metrics and trends
- revenue-by-item - Top performing items
- revenue-by-category - Category performance
Configuration
- discount-manager - Discount creation and management
- tax-manager - Tax rate configuration
- device-manager - POS device inventory
Cash Management
- cash-drawer - Cash drawer tracking and events
Installation
npm install
npm run build
Configuration
Set the following environment variables:
# Required
export CLOVER_MERCHANT_ID="your_merchant_id"
# One of these is required
export CLOVER_API_KEY="your_api_key"
# OR
export CLOVER_ACCESS_TOKEN="your_oauth_token"
# Optional (default: sandbox)
export CLOVER_ENVIRONMENT="sandbox" # or "production"
Getting Clover Credentials
- Sandbox Access: Sign up at https://sandbox.dev.clover.com/
- API Key: Go to Setup → API Tokens in your Clover dashboard
- OAuth Token: Implement OAuth2 flow for production apps
Usage
Running the Server
npm start
MCP Client Configuration
Add to your MCP client settings (e.g., Claude Desktop):
{
"mcpServers": {
"clover": {
"command": "node",
"args": ["/path/to/clover/dist/main.js"],
"env": {
"CLOVER_MERCHANT_ID": "your_merchant_id",
"CLOVER_API_KEY": "your_api_key",
"CLOVER_ENVIRONMENT": "sandbox"
}
}
}
}
API Reference
Tool Usage Examples
List Orders
// List all open orders
await mcp.callTool('clover_list_orders', {
filter: 'state=open',
expand: 'lineItems,customers'
});
Create Order with Items
// Create order
const order = await mcp.callTool('clover_create_order', {
state: 'open',
title: 'Table 5'
});
// Add items
await mcp.callTool('clover_add_line_item', {
orderId: order.id,
itemId: 'ITEM_ID',
unitQty: 2
});
Generate Sales Report
const summary = await mcp.callTool('clover_sales_summary', {
startDate: Date.now() - 7 * 24 * 60 * 60 * 1000, // 7 days ago
endDate: Date.now()
});
React App Resources
Apps are available as MCP resources:
const apps = await mcp.listResources();
// Returns: clover://app/order-dashboard, clover://app/inventory-detail, etc.
const appCode = await mcp.readResource('clover://app/order-dashboard');
// Returns the React component source
Architecture
src/
├── clients/
│ └── clover.ts # Clover API client with pagination
├── tools/
│ ├── orders-tools.ts # Order management tools
│ ├── inventory-tools.ts # Inventory tools
│ ├── customers-tools.ts # Customer tools
│ ├── employees-tools.ts # Employee tools
│ ├── payments-tools.ts # Payment tools
│ ├── merchants-tools.ts # Merchant settings tools
│ ├── discounts-tools.ts # Discount tools
│ ├── taxes-tools.ts # Tax tools
│ ├── reports-tools.ts # Analytics tools
│ └── cash-tools.ts # Cash management tools
├── ui/
│ └── react-app/ # 18 React MCP apps
├── types/
│ └── index.ts # TypeScript type definitions
├── server.ts # MCP server implementation
└── main.ts # Entry point
Development
Build
npm run build
Watch Mode
npm run dev
API Coverage
This server implements the Clover REST API v3:
- Base URL (Sandbox):
https://sandbox.dev.clover.com - Base URL (Production):
https://api.clover.com - Documentation: https://docs.clover.com/docs
License
MIT
Contributing
Contributions welcome! Please ensure:
- TypeScript types are properly defined
- Tools follow the existing naming convention
- React apps use the standard UI patterns
- All tools include proper error handling
Support
For issues related to:
- This MCP server: Open a GitHub issue
- Clover API: Check https://docs.clover.com/
- MCP Protocol: See https://modelcontextprotocol.io/
Built with ❤️ for the MCPEngine ecosystem