caisse-enregistreuse-mcp-server

paracetamol951/caisse-enregistreuse-mcp-server
1 starsGPL-3.0Community

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Allows you to automate or monitor business operations, sales recorder, POS software, CRM.

README.md

![smithery badge](https://smithery.ai/servers/paracetamol951/kash)

๐Ÿงพ Kash MCP Server

![License: GPL v3](LICENSE) ![Live Demo](https://mcp.kash.click) ![GitHub Stars](https://github.com/paracetamol951/caisse-enregistreuse-mcp-server/stargazers) ![npm](https://www.npmjs.com/package/caisse-enregistreuse-mcp-server)

![Kash MCP](https://www.youtube.com/watch?v=PpkrUfEy4ns)

Kash MCP Server is the official Model Context Protocol (MCP) server for Kash โ€” a free, cloud-based POS, invoicing, CRM and webshop platform trusted by thousands of merchants since 2011.

Connect your Kash account to Claude, ChatGPT, n8n, or any MCP-compatible AI โ€” and manage your entire business through natural conversation.

๐ŸŸข Hosted server: https://mcp.kash.click ๐Ÿ“– Full documentation: kash.click/cash-register-software

---

โœจ What you can do

Just talk. No menus, no clicks.

"Record a sale of 2 coffees and 1 croissant at table 84"
"Show me this week's revenue report"
"Add a new item called Summer Tart at โ‚ฌ4.50 in the Pastries department"
"Who are my best customers this month?"
"Create a Kash account for my restaurant"
"Record the card payment for order #1042"
"Add a Large size option to the Size variation"

---

๐Ÿš€ Features

๐Ÿ” Account & Authentication โ€” no config required

  • Create a new Kash account directly from the conversation
  • List accounts linked to an email to check if one already exists
  • Login via OTP โ€” a one-time password is sent to your email, no password needed
  • Logout to clear the session at any time

๐Ÿงพ Sales & Orders

  • Record sales with catalog items, department lines, or free lines
  • Edit orders โ€” add items, assign a client, record payments, validate as invoice
  • List orders by date range, validated or unvalidated, filtered by delivery method
  • Get order details โ€” full breakdown of items, client, payments and totals

๐Ÿ“Š Reports

  • Sales report โ€” HTML summary for any period: a specific day, month, or full year (defaults to yesterday)

๐Ÿ“ฆ Catalog Management

  • Items (PLU): add, edit, delete โ€” with price, department, VAT, barcode, stock, variations...
  • Departments: add, edit, delete โ€” with VAT, price, group, variations...
  • Department groups: add, edit, delete โ€” to organize your catalog
  • VAT rates: add, edit, delete
  • Variations: add, edit, delete (e.g. "Size", "Color")
  • Variation choices: add, edit, delete (e.g. "S", "M", "L" for "Size") with optional price delta

๐Ÿ‘ฅ Customer Management (CRM)

  • Add, edit, delete customers with full contact info, company details, VAT number, barcode, loyalty data, private notes, blacklist status...

๐Ÿ“‹ Data & Lists

Retrieve any reference data from your shop:

| Tool | Data | |---|---| | data.list.products | Items / articles | | data.list.departments | Departments / categories | | data_list_department_groups | Department groups | | data_list_vats | VAT rates | | data_list_clients | Customers | | data_list_variations | Variation types | | data_list_payments | Payment methods | | data_list_cashboxes | Cashboxes | | data_list_delivery_men | Delivery methods | | data_list_delivery_zones | Delivery zones | | data_list_relay_points | Relay / pickup points | | data_list_discounts | Discounts & supplements | | data.list.users | Staff / users | | data_list_tables | Tables (restaurant mode) | | data.list.orders | Orders by date range |

---

๐Ÿ›  Available Tools (46)

| Category | Tools | |---|---| | Account | account.list, account.create | | Auth | auth.request.otp, auth.login.with_otp, auth.logout | | Sales | order.create, order.edit, order.detail, data.list.orders, data.list.pending_orders | | Reports | report.get | | Items | plu_add, plu_edit, plu_delete, data.list.products | | Departments | dept_add, dept_edit, dept_delete, data.list.departments | | Dept groups | dept_group_add, dept_group_edit, dept_group_delete, data_list_department_groups | | VAT | vat_add, vat_edit, vat_delete, data_list_vats | | Variations | variation_add, variation_edit, variation_delete, data_list_variations | | Variation choices | variation_choice_add, variation_choice_edit, variation_choice_delete | | Customers | client_add, client_edit, client_delete, data_list_clients | | Data | data_list_payments, data_list_cashboxes, data_list_delivery_men, data_list_delivery_zones, data_list_relay_points, data_list_discounts, data.list.users, data_list_tables | | Utility | ping |

---

โš™๏ธ Prerequisites

You need a Kash / free-cash-register.net account.

Don't have one? You can create it directly from the conversation using account.create, or register at kash.click/free-pos-software.

Already have one? Retrieve your APIKEY and SHOPID in the software under Setup โ†’ Webservices or connect using oAuth.

---

๐Ÿ”Œ Option 1 โ€” Hosted server (recommended)

The easiest way: connect directly to the hosted MCP server at https://mcp.kash.click/mcp.

No installation needed. Authentication is handled via OAuth 2.0 with PKCE.

Claude.ai

In Settings โ†’ Integrations, add a new connector:

| Field | Value | |---|---| | Name | Kash | | MCP Server URL | https://mcp.kash.click/mcp | | Authentication | OAuth |

ChatGPT

In Settings โ†’ Connectors โ†’ Create Connector:

| Field | Value | |---|---| | Name | Kash POS | | MCP Server URL | https://mcp.kash.click/mcp | | Authentication | OAuth |

Smithery

Available on smithery.ai โ€” search for Kash.

---

๐Ÿ’ป Option 2 โ€” Self-hosted (STDIO)

Run the server locally for Claude Desktop or any STDIO-based MCP client.

Quick start via npx

npx caisse-enregistreuse-mcp-server --shopid=YOUR_SHOPID --apikey=YOUR_APIKEY

Claude Desktop configuration

Edit claude_desktop_config.json:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "kash": {
      "command": "npx",
      "args": [
        "caisse-enregistreuse-mcp-server",
        "--shopid=YOUR_SHOPID",
        "--apikey=YOUR_APIKEY"
      ]
    }
  }
}

Or using environment variables:

{
  "mcpServers": {
    "kash": {
      "command": "node",
      "args": ["PATH_TO_BUILD/build/stdio.js"],
      "cwd": "PATH_TO_BUILD",
      "env": {
        "SHOPID": "YOUR_SHOPID",
        "APIKEY": "YOUR_APIKEY"
      }
    }
  }
}

Install from source

# 1) Clone
git clone https://github.com/paracetamol951/caisse-enregistreuse-mcp-server.git
cd caisse-enregistreuse-mcp-server

# 2) Install dependencies
npm install

# 3) Create .env
echo "SHOPID=YOUR_SHOPID" > .env
echo "APIKEY=YOUR_APIKEY" >> .env

# 4) Build
npm run build

# 5) Run
node build/stdio.js

Docker (HTTP mode)

HTTP mode requires Redis. Use Docker Compose:

docker compose up

Or run manually:

docker run -d -p 6379:6379 redis
npm run dev

---

๐Ÿ” Authentication flow

Hosted server (OAuth)

Authentication is handled automatically by the OAuth 2.0 + PKCE flow when you connect through Claude.ai, ChatGPT, or Smithery.

In-conversation authentication (OTP)

You can also authenticate directly within the conversation โ€” no password required:

1. auth.request.otp(email)         โ†’ OTP sent to your inbox
2. auth.login.with_otp(email, otp) โ†’ session initialized โœ“
3. auth.logout()                   โ†’ clear session when done

If you don't have an account yet:

1. account.list(email)             โ†’ check existing accounts
2. account.create(email, title)    โ†’ create + session auto-initialized โœ“

STDIO / self-hosted

Pass credentials via CLI args or environment variables โ€” SHOPID and APIKEY.

---

๐Ÿ“ก API endpoints

| Endpoint | Description | |---|---| | POST https://mcp.kash.click/mcp | MCP JSON-RPC endpoint | | GET https://mcp.kash.click/health | Health check โ†’ { "status": "ok" } | | GET https://mcp.kash.click/.well-known/mcp/manifest.json | MCP manifest (tool list) | | GET https://mcp.kash.click/.well-known/openid-configuration | OAuth discovery |

---

๐ŸŒ Internationalization

Tool titles and descriptions are available in English and French, resolved automatically from the Accept-Language header or the MCP_LANG environment variable.

Locale files: locales/en/common.json, locales/fr/common.json

---

Demo credentials

If you want to try the tool without creating an account, you can use the following credentials

Login: Demo15 Password : demodemo

---

๐Ÿ’ป Compatible clients

| Client | Mode | |---|---| | Claude.ai | HTTP / OAuth | | Claude Desktop | STDIO | | ChatGPT | HTTP / OAuth | | n8n | HTTP | | Flowise / LangChain | HTTP | | Smithery | HTTP / OAuth | | Any MCP client | STDIO or HTTP |

---

๐Ÿช Supported business types

When creating an account with account.create, use configType to pre-load a dataset tailored to your business:

Bar ยท Bakery ยท Restaurant ยท Fast-food ยท Cafe ยท Coffee-shop ยท Pizzeria ยท Brewery ยท Food-truck ยท Snack ยท Florist ยท Retail ยท Pharmacy ยท Supermarket ยท Clothing-store ยท Ecommerce ยท Services ยท Beauty-institute ยท Coiffeur ยท Market ยท Library ยท Camping ยท and more...

---

๐Ÿ”— Links

---

๐Ÿ“‹ License

ยฉ 2025 Net-assembly. GNU General Public License v3.0

Related MCP servers

Browse all โ†’