Token导航 LogoToken导航TokenDH.com
Pancake MCP Server logo
运维云端stdio官方级别未说明来源级核验

Pancake MCP Server

MCP Server

Pancake POS MCP Server是一个连接Claude与Pancake平台的服务,用于管理订单、库存、运输和客户消息等多通道销售功能。

工具数

32

提示词数

0

GitHub Stars

1

资源数

0
订单管理PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

lynguyenvu

提供方

lynguyenvu

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

Pancake POS MCP Server

Kết nối Claude với Pancake thông qua MCP — cho phép Claude quản lý đơn hàng, kho, vận chuyển, tin nhắn khách hàng và nhiều hơn nữa.

Pancake là nền tảng quản lý bán hàng đa kênh phổ biến tại Việt Nam (Facebook, Website, TikTok Shop, Zalo...).

Tính năng

  • 32 MCP tools — đơn hàng, kho, vận chuyển, hội thoại/inbox, đính kèm, địa chỉ Việt Nam
  • 2 chế độ kết nối — Local (stdio) cho Claude Desktop, Remote (HTTP) cho Claude.ai
  • Bảo mật — stdio mode: API key không rời máy bạn
  • Docker ready — deploy 1 lệnh

31 công cụ MCP

ModuleCông cụ
🏪 Shopget_shops, get_payment_methods
🗺️ Địa lý VNget_provinces, get_districts, get_communes
📦 Đơn hàngsearch_orders, get_order, create_order, update_order, get_order_tags, get_order_sources, get_active_promotions
🏭 Kho hànglist_warehouses, create_warehouse, update_warehouse, get_inventory_history
🚚 Vận chuyểnarrange_shipment, get_tracking_url, list_return_orders, create_return_order
💬 Hội thoạilist_pages, generate_page_access_token, list_conversations, get_conversation, get_messages, send_message, update_conversation
📎 Đính kèmlist_message_attachment, download_attachment, preview_attachment_content, extract_text_from_image, analyze_image_content

Yêu cầu

  • Python 3.11+
  • Tài khoản Pancake với quyền truy cập API
  • Claude Desktop (cho stdio mode) hoặc Claude.ai Pro/Team (cho remote mode)

Cài đặt

Phương pháp 1: Cài đặt với Docker (khuyên dùng)

Dành cho người dùng Windows muốn chạy trên Docker Desktop mà không cần file .env

Bước 1: Clone Repository

Mở Command Prompt hoặc PowerShell và chạy:

git clone https://github.com/lynguyenvu/pancake-mcp-server.git
cd pancake-mcp-server

Bước 2: Build Docker Image

docker build -t pancake-mcp-server:latest .

Bước 3: Cấu Hình Claude Desktop trên Windows

Mở file cấu hình của Claude Desktop trên Windows:

%APPDATA%\Claude\claude_desktop_config.json

Bạn có thể mở nhanh bằng cách:

  1. Nhấn Win + R
  2. %APPDATA%\Claude\claude_desktop_config.json
  3. Nhấn Enter

Thêm cấu hình sau (thay thế your_pos_api_key_hereyour_chat_access_token_here bằng API keys thực tế):

{
  "mcpServers": {
    "pancake-mcp": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "PANCAKE_API_KEY=your_pos_api_key_here",
        "-e", "PANCAKE_ACCESS_TOKEN=your_chat_access_token_here",
        "-e", "PYTHONPATH=/app/src",
        "pancake-mcp-server:latest",
        "pancake-mcp-stdio"
      ]
    }
  }
}

Khởi động lại Claude Desktop để áp dụng thay đổi.

Lưu ý: Đảm bảo Docker Desktop đang chạy trên Windows trước khi thực hiện các lệnh. API keys được lưu trực tiếp trong cấu hình Claude Desktop, không cần file .env.

Phương pháp 2: Quick start (nếu đã có Docker)

# Clone repository
git clone https://github.com/lynguyenvu/pancake-mcp-server.git
cd pancake-mcp-server

# Copy environment file
cp .env.example .env
# Chỉnh sửa .env để thêm API keys

# Chạy server
docker compose up -d

Quản lý server:

# Xem logs
docker compose logs -f

# Dừng server
docker compose down

# Khởi động lại
docker compose restart

Phương pháp 3: Cài đặt thủ công (pip)

1. Clone và cài package

git clone https://github.com/lynguyenvu/pancake-mcp-server.git
cd pancake-mcp-server
pip install -e .

Kiểm tra cài đặt thành công:

# 1. Package đã được cài?
pip show pancake-mcp
# → Hiển thị Name, Version, Location... là OK

# 2. Lệnh stdio hoạt động?
pancake-mcp-stdio --help 2>&1 | head -5
# → Hiển thị usage là OK (không cần API key thật để chạy --help)

# 3. Server HTTP khởi động được? (test nhanh rồi Ctrl+C)
PANCAKE_API_KEY=test uvicorn pancake_mcp.server:app --port 8000 &
sleep 2 && curl -s http://localhost:8000/health
# → {"status": "ok", "server": "pancake-pos-mcp"}
kill %1

2. Lấy API keys

Server dùng 2 loại key riêng biệt cho 2 API khác nhau:

POS API key — đơn hàng, kho, vận chuyển

  1. Đăng nhập tại pancake.biz
  2. Vào Cài đặt → Nâng cao → Kết nối bên thứ 3 → Webhook/API
  3. Tạo hoặc copy API key → đây là PANCAKE_API_KEY

Chat/Inbox access token — hội thoại, tin nhắn

Token này khác hoàn toàn với POS API key, phải lấy riêng:

  1. Đăng nhập tại pancake.biz
  2. Vào Cài đặt → API (hoặc Settings → API, mục Pages.fm / Chat)
  3. Tạo hoặc copy access token → đây là PANCAKE_ACCESS_TOKEN
Nếu không set PANCAKE_ACCESS_TOKEN, server tự động dùng PANCAKE_API_KEY cho cả Chat API (hoạt động được nếu tài khoản có đủ quyền).

Lấy Page ID — cần cho các tool hội thoại/tin nhắn

Các tool hội thoại (list_conversations, get_messages, send_message...) yêu cầu page_id. Đây là ID nội bộ của Pancake, không phải username hiển thị trên URL.

Lưu ý: URL trên Pancake dạng pancake.vn/pzl_xxxxxxxxxx chứa username, không phải page_id. Hai giá trị này khác nhau.

Bước 1: Lấy access token (xem phần Chat/Inbox access token ở trên)

Bước 2: Gọi API /pages để lấy danh sách page

curl "https://pages.fm/api/v1/pages?access_token=YOUR_ACCESS_TOKEN"

Bước 3: Tìm id trong kết quả trả về

Kết quả nằm trong categorized.activated, mỗi page có:

{
  "id": "pzl_123456789012345678",      ← ĐÂY là page_id (dùng cho API)
  "name": "Tên page của bạn",
  "platform": "personal_zalo",
  "username": "pzl_xxxxxxxxxx"          ← đây là username (hiển thị trên URL)
}

Dùng giá trị id làm page_id khi gọi các tool hội thoại.


Nếu chỉ cần xử lý tin nhắn (Chat/Inbox only)

Bạn không cần PANCAKE_API_KEY nếu chỉ dùng các tool hội thoại. Cấu hình tối giản:

PANCAKE_ACCESS_TOKEN=your_chat_access_token

Hoặc trong Claude Desktop config:

{
  "mcpServers": {
    "pancake": {
      "command": "pancake-mcp-stdio",
      "env": {
        "PANCAKE_ACCESS_TOKEN": "your_chat_access_token"
      }
    }
  }
}
Khi chỉ set PANCAKE_ACCESS_TOKEN (không set PANCAKE_API_KEY), các tool POS như search_orders, list_warehouses... sẽ báo lỗi thiếu key — nhưng các tool hội thoại (list_conversations, send_message, get_messages...) hoạt động bình thường.

Kết nối với Claude

Phương án A — Claude Desktop / Claude Code (stdio, bảo mật nhất) ⭐

API key không rời máy bạn, chạy hoàn toàn local.

Bước 1: Cài đặt (xem phần trên)

Bước 2: Xác nhận lệnh hoạt động

PANCAKE_API_KEY=test pancake-mcp-stdio --help 2>&1 || echo "OK - lệnh tồn tại"

Bước 3: Cấu hình Claude Desktop

Mở file config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Cách 1: Dùng trực tiếp lệnh pancake-mcp-stdio (đơn giản hơn):

{
  "mcpServers": {
    "pancake": {
      "command": "pancake-mcp-stdio",
      "env": {
        "PANCAKE_API_KEY": "your_pos_api_key",
        "PANCAKE_ACCESS_TOKEN": "your_chat_access_token"
      }
    }
  }
}

Cách 2: Dùng Docker container (được thử nghiệm thực tế):

{
  "mcpServers": {
    "pancake-mcp": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "PANCAKE_API_KEY=your_pos_api_key",
        "-e", "PANCAKE_ACCESS_TOKEN=your_chat_access_token",
        "-e", "PYTHONPATH=/app/src",
        "pancake-mcp-server:latest",
        "pancake-mcp-stdio"
      ]
    }
  }
}

Bước 4: Khởi động lại Claude Desktop

Công cụ Pancake xuất hiện tự động trong Claude ✅

Hướng dẫn chi tiết cài đặt với Claude Desktop

Xem file docs/user-guide.md để có hướng dẫn cài đặt chi tiết theo phương pháp đã được thử nghiệm thực tế.


Phương án B — Claude.ai (remote HTTP, dùng custom connector)

Phù hợp cho team nhiều người hoặc khi không dùng Claude Desktop.

Bước 1: Tạo file .env

cp .env.example .env
# Chỉnh sửa .env để thêm API keys

Bước 2: Chạy server

# Docker
docker compose up -d

# Hoặc trực tiếp (development)
pip install -e .
uvicorn pancake_mcp.server:app --host 0.0.0.0 --port 8000

Kiểm tra server:

curl http://localhost:8000/health
# → {"status": "ok", "server": "pancake-pos-mcp"}

Bước 3: Expose public HTTPS

# Dùng ngrok (dev/test)
ngrok http 8000
# → https://xxxx.ngrok-free.app

Hoặc deploy lên VPS với nginx + SSL.

Bước 4: Thêm vào Claude.ai

Vào Settings → Connectors → Add custom connector:

  • MCP Server URL: https://xxxx.ngrok-free.app/mcp
  • Authentication: Bearer token → dán Pancake API key của bạn

Ví dụ sử dụng

Sau khi kết nối, chat với Claude:

Quản lý đơn hàng:

Lấy danh sách đơn hàng mới hôm nay
Tạo đơn cho Nguyễn Văn A, SĐT 0901234567, 2 sản phẩm ID "abc123"
Cập nhật trạng thái đơn #12345 thành "confirmed"
Tạo đơn hoàn cho đơn #12345, lý do: sản phẩm lỗi

Quản lý kho:

Xem danh sách kho hàng
Lịch sử nhập xuất kho từ 01/02 đến hôm nay

Hội thoại & inbox:

Xem các tin nhắn Facebook inbox chưa xử lý của page ID "xxx"
Lịch sử chat trong hội thoại ID "conv123"
Gửi tin nhắn: "Cảm ơn bạn! Đơn hàng sẽ được giao trong 2-3 ngày"
Đóng hội thoại ID "conv123", gắn tag "đã xử lý"
⚠️ Workflow gửi tin nhắn (quan trọng): send_message yêu cầu page_access_token (không phải access_token). Workflow 2 bước: 1. Gọi generate_page_access_token(page_id) để lấy token 2. Gọi send_message(page_id, conversation_id, message, page_access_token) Ví dụ với Claude: `` Gửi tin nhắn "Xin chào!" đến hội thoại "conv123" trên page "page456" ` Claude sẽ tự động gọi generate_page_access_token rồi send_message`.

Đính kèm file:

Liệt kê các file đính kèm trong hội thoại ID "conv123"
Tải về file đính kèm từ tin nhắn thứ 5, file thứ 2
Tải về ảnh từ hội thoại của khách hàng

Địa chỉ:

Danh sách tỉnh thành Việt Nam
Quận huyện của TP.HCM

Bảo mật

Phương ánAPI key lưu ở đâuMức bảo mật
Local stdioEnv var trên máy bạn⭐⭐⭐ Cao nhất
Self-host DockerServer của bạn⭐⭐ Tốt
Remote (hosted)Server bên thứ 3⭐ Cần tin tưởng

Cấu hình .env

# Server
MCP_HOST=0.0.0.0
MCP_PORT=8000

# POS API key — đơn hàng, kho, vận chuyển
PANCAKE_API_KEY=

# Chat/Inbox token — hội thoại, tin nhắn (mặc định dùng chung PANCAKE_API_KEY)
PANCAKE_ACCESS_TOKEN=

# API base URLs (không cần thay đổi)
PANCAKE_API_BASE_URL=https://pos.pages.fm/api/v1
PANCAKE_CHAT_BASE_URL=https://pages.fm/api/v1

Phát triển

# Cài đầy đủ (bao gồm dev dependencies)
pip install -e ".[dev]"

# Chạy tests
python3 -m pytest tests/ -v
# 10 passed ✅

# Chạy server local (HTTP mode)
uvicorn pancake_mcp.server:app --reload --port 8000

Tech stack

Thành phầnMô tả
FastMCPMCP framework — stdio & HTTP transport
httpxAsync HTTP client
uvicornASGI server
StarletteHTTP routing (/health)
Pancake POS APIhttps://pos.pages.fm/api/v1
Pancake Chat APIhttps://pages.fm/api/v1

Gỡ cài đặt

1. Xóa package Python:

pip uninstall pancake-mcp

2. Xóa config Claude Desktop — mở file config và xóa block "pancake":

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

3. Xóa thư mục source (nếu đã clone):

rm -rf pancake-mcp-server/

4. Nếu dùng Docker:

docker compose down --volumes

Đóng góp & hỗ trợ

Tạo Issue nếu gặp lỗi hoặc có đề xuất tính năng mới.

Giấy phép

Dự án này được cấp phép theo giấy phép MIT - xem tệp LICENSE để biết chi tiết.

目录标签

目录标签

订单管理PythonClaude多通道销售本地部署库存管理客户消息管理运输管理

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

32

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP