Pancake POS MCP
Pancake POS MCP
Model Context Protocol (MCP)-Server, der die Pancake POS REST-API umschließt und es KI-Assistenten wie Claude ermöglicht, vietnamesische E-Commerce-POS-Vorgänge mit 23 spezialisierten Tools und 7 Referenzressourcen zu verwalten.
Übersicht
Pancake POS MCP stellt die Pancake POS API (https://pos.pages.fm/api/v1) als Model Context Protocol-Tools bereit, wodurch Claude und andere KI-Assistenten die POS-Verwaltung in folgenden Bereichen automatisieren können:
Kern-POS: Bestellungen, Produkte, Kunden, Inventar
Lieferkette: Lager, Lieferanten, Einkäufe, Umlagerungen, Inventur
Verkauf: Retouren, Umtausch, Kombi-Angebote, Werbeaktionen, Gutscheine
CRM: Kontakte, Deals, Aktivitäten
Multi-Channel: E-Commerce (Shopee/Lazada/TikTok), Livestream-Handel
Betrieb: Mitarbeiter, Webhooks, Analysen, Shop-Informationen, Adresssuche
Voraussetzungen
Bun (Laufzeitumgebung) — Installation über https://bun.sh (
curl -fsSL https://bun.sh/install | bash)Pancake POS API-Schlüssel + Shop-ID — siehe Pancake POS-Anmeldedaten abrufen unten. Hinweis: Dies ist die Pancake POS (E-Commerce / Inventar) API, nicht die Pancake Benutzer/Social-Inbox-API — es handelt sich um unterschiedliche Produkte mit unterschiedlichen Schlüsseln.
Node.js 18+ (optional, für Entwicklungstools)
Schnellstart
In ca. 5 Minuten zum funktionierenden MCP-Server:
# 1. Clone the repo
git clone https://github.com/nguyennguyenit/pancake-pos-mcp.git
cd pancake-pos-mcp
# 2. Install dependencies
bun install
# 3. Configure credentials
cp .env.example .env
# Open .env and fill in PANCAKE_POS_API_KEY + PANCAKE_POS_SHOP_ID
# (See "Getting Pancake POS credentials" section below)
# 4. Verify it runs
bun run src/index.ts
# Expected output:
# [pancake-pos-mcp] Server started on stdio transport
# Press Ctrl+C to stop.
# 5. Connect Claude Desktop — see "Stdio Transport" section belowFalls Schritt 4 einen Fehler ausgibt, überprüfen Sie Ihre .env-Werte und ob Sie bun install ausgeführt haben. Häufige Probleme sind unter Fehlerbehebung aufgeführt.
Pancake POS-Anmeldedaten abrufen
⚠️ Pancake POS ≠ Pancake (Social Inbox). Dieses MCP funktioniert nur mit dem Pancake POS-Produkt unter https://pos.pages.fm — dem E-Commerce / Inventar / Bestellverwaltungssystem. Die Pancake Benutzer/Inbox-API unter
pages.fmist ein anderes Produkt mit einem anderen API-Schlüssel und wird hier nicht unterstützt.
Sie benötigen zwei Werte aus Ihrem Pancake POS-Konto:
PANCAKE_POS_SHOP_ID— die numerische ID Ihres ShopsMelden Sie sich bei https://pos.pages.fm an und überprüfen Sie die URL oder die Shopeinstellungen, um die numerische Shop-ID zu finden.
PANCAKE_POS_API_KEY— Ihr Pancake POS API-TokenPancake POS Dashboard → Cài đặt (Einstellungen) → API → Generate API key
Kopieren Sie den Schlüssel sofort — er wird nur einmal angezeigt.
Behandeln Sie beide Werte vertraulich. Committen Sie sie niemals in Git. Die
.gitignoreschließt.envund.dev.varsbereits aus.
Konfiguration
Erforderlich (im Schnellstart festgelegt):
Variable | Zweck |
| Pancake POS API-Token |
| Numerische Shop-ID |
Optional:
Variable | Standard | Zweck |
|
| API-Endpunkt überschreiben |
|
| HTTP-Transport-Port |
| (keiner) | Bearer-Token für HTTP/Workers-Authentifizierung |
Verwendung
Stdio-Transport (Claude Desktop)
Standardmodus. Fügen Sie dies zur Claude Desktop-Konfiguration claude_desktop_config.json hinzu:
{
"mcpServers": {
"pancake-pos": {
"command": "bun",
"args": ["run", "/path/to/pancake-pos-mcp/src/index.ts"]
}
}
}HTTP-Transport (Fernzugriff)
Aktivieren Sie den Streamable HTTP-Transport:
bun run src/index.ts --httpDer Server startet unter http://localhost:3000/mcp. Gesundheitsprüfung: http://localhost:3000/health
Mit Authentifizierung (empfohlen für die Produktion):
# .env
PORT=3000
MCP_AUTH_TOKEN=your_secret_token
# Client usage
curl -H "Authorization: Bearer your_secret_token" http://localhost:3000/mcpCloudflare Workers (Serverless Edge)
Weltweite Bereitstellung auf Cloudflare Workers für latenzarmen Zugriff von überall:
# Local development (uses .dev.vars for secrets)
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your credentials
bun run dev:workers
# Runs at http://localhost:8787
# Deploy to Cloudflare
wrangler login
bun run deploy
# Set production secrets
wrangler secret put PANCAKE_POS_API_KEY
wrangler secret put PANCAKE_POS_SHOP_ID
wrangler secret put MCP_AUTH_TOKENWorkers-URL: https://pancake-pos-mcp.<ihr-subdomain>.workers.dev/mcp
Verbinden Sie Claude Desktop über mcp-remote:
{
"mcpServers": {
"pancake-pos": {
"command": "npx",
"args": [
"mcp-remote",
"https://pancake-pos-mcp.<your-subdomain>.workers.dev/mcp",
"--header", "Authorization: Bearer <your-token>"
]
}
}
}Workers-Eigenschaften: 8s Timeout pro Upstream-Aufruf, 2 Wiederholungsversuche, Ratenbegrenzung deaktiviert (zustandsloses Modell pro Anfrage). Kostenloser Tarif: 100.000 Anfragen/Tag. Siehe Bereitstellungsanleitung für vollständige Details.
Verfügbare Tools
Tool | Phase | Beschreibung |
| 1 | Bestellungen erstellen, lesen, aktualisieren, löschen, drucken, versenden und Status verwalten |
| 1 | Produktkatalog mit Varianten und Preisen verwalten |
| 1 | Kunden-CRUD, Bonuspunkte, Transaktionshistorie |
| 1 | Inventarberichte gefiltert nach Lager, Kategorie, Lieferant |
| 2 | Lager-CRUD und Konfiguration |
| 2 | Lieferantenkontakt- und Profilverwaltung |
| 2 | Bestellungen und eingehendes Inventar |
| 2 | Verwaltung von Umlagerungen zwischen Lagern |
| 2 | Aufzeichnungen zur physischen Inventur |
| 3 | Bearbeitung von Retouren und Umtausch |
| 3 | Produktbündel-Angebote und zeitlich begrenzte Aktionen |
| 3 | Rabattkampagnen (prozentual/betragsbasiert) |
| 3 | Gutscheincodegenerierung und Nutzungsverfolgung |
| 4 | CRM-Kontakt-CRUD und Beziehungsmanagement |
| 4 | Verkaufschancen und Phasen der Pipeline |
| 4 | Anrufe, Meetings, Aufgaben, Notizen verknüpft mit Kontakten/Deals |
| 4 | Multi-Channel-Synchronisierung (Shopee, Lazada, TikTok) |
| 4 | Verwaltung und Planung von Live-Verkaufssitzungen |
| 5 | Personalverwaltung und Lagerzuweisungen |
| 5 | Ereignisabonnement und Webhook-Konfiguration |
| 5 | Analysen für Inventar, Verkäufe, Bestellungen mit Gruppierung |
| 5 | Shop-Profilinformationen und Einstellungen |
| 5 | Vietnamesische Adresshierarchie (Provinzen → Bezirke → Gemeinden) |
Verfügbare Ressourcen
Statische Referenzressourcen (keine Authentifizierung erforderlich):
Ressource | Inhalt |
| 16 Bestellstatus-Codes mit vietnamesischen/englischen Namen |
| Verkaufskanal-Codes (Facebook, Shopee, Lazada, etc.) |
| 22 Sortieroptionen für die Bestellliste |
| Webhook-Ereignistypen (order.created, order.updated, etc.) |
| Referenz der HTTP-Fehlercodes |
| API-Ratenbegrenzungen (1000/Min, 10000/Stunde) |
| Live-Daten der Versandpartner (aus API zwischengespeichert) |
Architektur
API-Client: Token-Bucket-Ratenbegrenzung (1000/Min, 10000/Stunde), exponentielle Backoff-Wiederholungen (3 Versuche)
Tools: 23 MCP-Tools, organisiert nach Geschäftsbereichen
Schema-Validierung: Zod mit diskriminierten Unions für strikte Laufzeitvalidierung
Transport: Stdio (Standard) + Streamable HTTP + Cloudflare Workers mit optionaler Bearer-Token-Authentifizierung
Fehlerbehandlung: Strukturierte Fehlerantworten mit Code und Nachricht
Entwicklung
Typenprüfung
bun run typecheckTests ausführen
bun run test # vitest (includes Workers tests)Projektstruktur
src/
├── api-client/ # HTTP layer with rate limiting
│ ├── pancake-http-client.ts
│ ├── request-builder.ts
│ └── response-parser.ts
├── tools/ # 23 MCP tools (23 files)
├── resources/ # MCP reference resources
├── shared/ # Schemas, errors, pagination
├── config.ts # Environment configuration
├── server.ts # MCP server factory
├── worker.ts # Cloudflare Workers entry point
└── index.ts # Entry point (stdio + HTTP)Siehe docs/code-standards.md für vollständige Entwicklungsrichtlinien.
Dokumentation
codebase-summary.md — Architektur- und Implementierungsübersicht
system-architecture.md — Detailliertes Systemdesign und Datenflüsse
code-standards.md — TypeScript- und Tool-Implementierungsstandards
project-overview-pdr.md — Projektanforderungen und Funktionen
deployment-guide.md — Einrichtungs- und Bereitstellungsanweisungen
project-roadmap.md — Implementierungsfortschritt und Meilensteine
poscake-api-docs.md — Vollständige Pancake POS API-Referenz
Fehlerbehebung
Ein paar nicht offensichtliche Fallstricke:
429 Too Many Requests— Pancake-Ratenbegrenzung erreicht (1000/Min, 10000/Stunde). Der integrierte Token-Bucket drosselt automatisch; reduzieren Sie die Parallelität auf der Aufruferseite.Tests schlagen fehl mit
Cannot find package 'cloudflare:test'— verwenden Siebun run test(vitest), nicht das nativebun test. Workers-Tests benötigen das vitest pool worker-Plugin.Claude Desktop sieht die Tools nicht — der Pfad für
command/argsinclaude_desktop_config.jsonmuss absolut sein. Starten Sie Claude Desktop nach dem Bearbeiten der Konfiguration neu.
Bei anderen Fehlern überprüfen Sie die Fehlermeldung und verifizieren Sie die .env-Anmeldedaten.
Lizenz
MIT-Lizenz — Siehe LICENSE-Datei für den vollständigen Text.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/svn4pro/pancake-pos-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server