FastPospal
FastPospal is a Python SDK and MCP Server for automating interactions with the 银豹 (PosPal) POS web backend, enabling AI agents (e.g., Cursor, Claude Desktop) and programs to manage products, members, inventory, stock flows, and sales records.
Session & Authentication
View current login session details and force re-login
Check if official PosPal OpenAPI appId/appKey are configured
Product Category Management
Retrieve the full category tree; create, rename, and batch delete categories
Product Management
Get product count statistics, paginated product listing, and keyword search
Fetch product details by ID or barcode
Create, update, and delete products
Member (Customer) Management
Look up members by card number or phone; paginated listing with status filtering
Retrieve supplementary member info (punch cards, benefit cards, gift cards, coupons)
Create, update, and soft-delete members
Inventory & Stock Management
Paginated store-wide inventory summary
View stock change history for a specific product over a time range
Set min/max stock thresholds for a product
Logistics / Stock Flows
Paginated stock movement records (purchases, outbound, transfers)
Suppliers
Retrieve the full supplier list
Sales & Orders
Paginated sales tickets (valid, voided, returns, member, wholesale)
Paginated self-operated online shop orders and purchase order records
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FastPospalshow me today's product count"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FastPospal
银豹 PosPal Python SDK 与 MCP Server
FastPospal 是一个面向 银豹 PosPal Web 后台 的 Python SDK 与 MCP Server,为开发者和 AI Agent 提供商品、会员、库存、货流、单据等业务能力的统一自动化接口。
声明
本项目为社区维护项目,与银豹官方不存在任何关联。
请仅在拥有合法授权的账号和门店中使用。
本项目旨在提高自动化集成效率,不提供任何绕过认证或破解系统的能力。
如官方开放平台能够满足业务需求,建议优先使用官方接口。
✨ 特性
Python SDK
FastMCP Server(STDIO / HTTP)
商品、分类、会员 CRUD
库存、货流、单据查询
Cursor / Claude Desktop 开箱即用
uv 管理依赖
Docker、systemd、Nginx 部署支持
Related MCP server: McpLLMServer
为什么选择 FastPospal?
银豹官方开放平台覆盖能力有限,而 Web 后台拥有更丰富的业务接口。
FastPospal 对这些能力进行了统一封装:
Python 程序可直接调用
AI Agent 可通过 MCP 自动调用
后续可扩展 CLI、REST API 等能力
MCP 只是接口形式,Python SDK 才是核心能力。
快速开始
安装 uv
brew install uv安装依赖
uv sync配置账号
cp .env.example .env填写:
POSPAL_ACCOUNT=your_account
POSPAL_PASSWORD=your_password启动 MCP
STDIO:
uv run fastmcp run server.py:mcpHTTP:
uv run fastmcp run server.py:mcp --transport http --port 8000Python SDK 示例
from fastpospal.client import PospalClient
from fastpospal.service import PospalService
client = PospalClient(account, password)
client.login()
svc = PospalService(client)
print(svc.product_summary())MCP 使用示例
在 Cursor 或 Claude Desktop 中:
查询今天商品总数
搜索条码 6901234567890
创建一个测试商品
Agent 将自动调用对应 MCP 工具。
远程 HTTP 部署(Nginx + Docker)
适用于 OPC Feed、Cursor 等通过 HTTPS 远程连接 MCP。
配置
.env:POSPAL_*、MCP_AUTH_TOKEN,以及公网域名白名单:FASTMCP_HTTP_ALLOWED_HOSTS=["your-domain.com"]经 Nginx 反代时 必须 设置,否则 Bearer 鉴权通过后 FastMCP 会因
Host校验返回 421 Misdirected Request。启动容器:
docker compose -f deploy/docker-compose.prod.yml up -dNginx 反代 不要用尾斜杠(
/pospal/mcp而非/pospal/mcp/),否则 FastMCP 会 307 到错误路径。萌萌书店示例见deploy/nginx-mmsd-pospal-mcp.conf。客户端 MCP URL 与 Nginx location 保持一致,例如
https://mmsd.site/pospal/mcp。
发布到生产
在 .env 配置 DEPLOY_HOST / DEPLOY_USER(仅本机,勿提交),然后:
bash deploy/push-image.sh脚本会:本机构建 linux/amd64 镜像 → SSH 上传 → 同步代码 → 重启容器 → smoke test。
临时指定服务器:SERVER=root@your-host bash deploy/push-image.sh
服务器上的 .env 不会被覆盖(含 POSPAL_*、MCP_AUTH_TOKEN 等运行时配置)。
架构
AI Agent
(Cursor / Claude)
│
▼
FastPospal MCP
│
FastPospal SDK
│
PosPal WebRoadmap
登录与会话管理
商品管理
分类管理
会员管理
库存查询
HTTP MCP
CLI
PyPI 发布
自动化测试
官方 OpenAPI 适配
参与贡献
提交 Issue 时可选择 Bug 报告 或 功能建议 模板。
License
MIT
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ironfrancis/FastPospal'
If you have feedback or need assistance with the MCP directory API, please join our Discord server