Metadata-Version: 2.4
Name: tiktok-erp-mcp
Version: 0.1.0
Summary: TikTok Shop 一键上架 MCP：把 Product API 封装成 MCP 工具，实现 草稿→审核→上架 闭环（凭据只在 server 端）
Keywords: ecommerce,erp,listing,mcp,tiktok-shop
Requires-Python: >=3.10
Requires-Dist: cryptography>=42.0.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: mcp<2.0.0,>=1.2.0
Description-Content-Type: text/markdown

# tiktok-erp-mcp

TikTok Shop 一键上架 MCP 服务。把 Seller Open Platform 的 Product API 封装成 MCP 工具，
供智能体完成「草稿 → 审核 → 上架」闭环。凭据（AppKey/AppSecret/店铺 token）只在 server 端使用，
调用方只传业务参数（user_id / shop_cipher / draft_id），永远不碰凭据。

## 工具清单

| 工具 | 说明 |
|------|------|
| `list_shops` | 列出当前用户已授权店铺（返回 shop_cipher 等展示字段，不含 token） |
| `get_categories` | 获取类目树，精确匹配 category_id（叶子类目） |
| `create_product_draft` | 生成上架草稿（save_mode=AS_DRAFT，无真实上架效果） |
| `get_draft` | 查询草稿详情 |
| `update_draft` | 修改草稿内容（仅 draft 状态可改） |
| `submit_for_review` | 草稿提交人工审核（draft → submitted） |
| `publish_draft` | 上架（前置：status=approved），用 save_mode=LISTING 进入平台审核 |

状态机：`draft → submitted → approved → published`

## 启动（STDIO MCP）

```bash
uvx tiktok-erp-mcp
```

## 环境变量

| 变量 | 必填 | 说明 |
|------|------|------|
| `TIKTOK_APP_KEY` | 是 | 开放平台应用 AppKey |
| `TIKTOK_APP_SECRET` | 是 | 应用 AppSecret |
| `TIKTOK_SANDBOX` | 否 | true/false，默认 true |
| `TIKTOK_BASE_URL` | 否 | API 域名，默认生产域名 |
| `TIKTOK_DB_PATH` | 否 | SQLite 路径，默认 `~/.tiktok_erp_mcp/tokens.db` |
| `TIKTOK_ENCRYPTION_KEY` | 否 | Fernet 密钥，留空则明文存 token（仅限 demo） |

## 安全说明

- `access_token` 只存 server 端 SQLite，LLM 只拿到 `shop_cipher`（密文），永远看不到 token。
- 生产环境请务必设置 `TIKTOK_ENCRYPTION_KEY`（Fernet），demo/沙箱可留空明文。
