FastPospal
FastPospal is a Python SDK and MCP server for the PosPal Web backend, enabling AI agents to manage products, members, inventory, and logistics through natural language commands.
README
FastPospal
银豹 PosPal Python SDK 与 MCP Server
FastPospal 是一个面向 银豹 PosPal Web 后台 的 Python SDK 与 MCP Server,为开发者和 AI Agent 提供商品、会员、库存、货流、单据等业务能力的统一自动化接口。
<img width="1306" height="1204" alt="ChatGPT Image 2026年7月9日 05_20_57" src="https://github.com/user-attachments/assets/1a1fa057-5130-4451-a2b3-659b64717413" />
声明
- 本项目为社区维护项目,与银豹官方不存在任何关联。
- 请仅在拥有合法授权的账号和门店中使用。
- 本项目旨在提高自动化集成效率,不提供任何绕过认证或破解系统的能力。
- 如官方开放平台能够满足业务需求,建议优先使用官方接口。
✨ 特性
- Python SDK
- FastMCP Server(STDIO / HTTP)
- 商品、分类、会员 CRUD
- 库存、货流、单据查询
- Cursor / Claude Desktop 开箱即用
- uv 管理依赖
- Docker、systemd、Nginx 部署支持
为什么选择 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:mcp
HTTP:
uv run fastmcp run server.py:mcp --transport http --port 8000
Python 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 -d -
Nginx 反代 不要用尾斜杠(
/pospal/mcp而非/pospal/mcp/),否则 FastMCP 会 307 到错误路径。萌萌书店示例见deploy/nginx-mmsd-pospal-mcp.conf。 -
客户端 MCP URL 与 Nginx location 保持一致,例如
https://mmsd.site/pospal/mcp。
GitHub Actions 自动部署
main 分支 push 或 merge 后,.github/workflows/deploy.yml 会自动:
uv sync+ 静态检查- 构建
linux/amd64镜像 - SSH 上传到生产机并
docker compose up -d
首次启用需在 GitHub 仓库 Settings → Secrets and variables → Actions 添加:
| Secret | 说明 |
|---|---|
SSH_PRIVATE_KEY |
能登录生产机的私钥(对应公钥写入服务器 authorized_keys) |
DEPLOY_HOST |
生产机 IP 或域名(不含用户名) |
DEPLOY_USER |
SSH 登录用户,例如 root |
服务器上的 .env 不会被同步覆盖(仅含运行时 POSPAL_*、MCP_AUTH_TOKEN 等,不含 SSH 部署地址)。
本地紧急发布:在 .env 配置 DEPLOY_HOST / DEPLOY_USER 后执行 bash deploy/push-image.sh,或临时 SERVER=root@your-host bash deploy/push-image.sh。
架构
AI Agent
(Cursor / Claude)
│
▼
FastPospal MCP
│
FastPospal SDK
│
PosPal Web
Roadmap
- [x] 登录与会话管理
- [x] 商品管理
- [x] 分类管理
- [x] 会员管理
- [x] 库存查询
- [x] HTTP MCP
- [ ] CLI
- [ ] PyPI 发布
- [ ] 自动化测试
- [ ] 官方 OpenAPI 适配
参与贡献
提交 Issue 时可选择 Bug 报告 或 功能建议 模板。
<img width="1672" height="941" alt="ChatGPT Image 2026年7月9日 05_22_19" src="https://github.com/user-attachments/assets/41b0929b-6b4c-488c-9ae9-38d0a21c95d4" />
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。