Skip to main content
Glama

OZON MCP Server

Python 3.10+ License: MIT PyPI version

中文 | English


中文文档

OZON MCP Server は Model Context Protocol (MCP) に基づくツールであり、Playwright を通じて OZON EC バックエンドの自動操作を実現し、QQ メール認証コードの自動読み取りをサポートします。

機能

  • 自動ログイン (login-with-email-code) - QQ メールの認証コードを使用して OZON セラーバックエンドに自動ログインします

  • 価格監視 (get-marketing-actions) - マーケティングキャンペーンの製品価格データを取得し、最低価格を下回る製品を特定します

  • CLI 直接呼び出し - MCP プロトコルなしで、コマンドラインから直接単一の操作を実行できます

インストール

方法一:PyPI からインストール(推奨)

# 安装 uv (如果没有)
curl -LsSf https://astral.sh/uv/install.sh | sh

# 全局安装 ozon-mcp
uv tool install ozon-mcp

# 安装浏览器
uv tool run ozon-mcp playwright install chromium

方法二:ソースコードをクローンして開発

# 克隆项目
git clone https://github.com/oychao1988/ozon-mcp.git
cd ozon-mcp

# 安装 uv (如果没有)
curl -LsSf https://astral.sh/uv/install.sh | sh

# 安装依赖
uv sync
uv run playwright install chromium

環境変数の設定

.env.example.env にコピーして記入します:

cp .env.example .env

.env ファイルを編集します:

# OZON 账号配置(只需要用户名)
ozon_username="your_qq@qq.com"

# QQ 邮箱授权码(16位)- 获取方式见下方
qq_imap_auth_code="your_16_digit_auth_code"

# Chrome Profile 配置(可选)
chrome_profile_source="copy_to_local"

QQ メール認証コードの取得

  1. mail.qq.com にログイン

  2. 設定 → アカウント → POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV サービス

  3. IMAP/SMTP サービスを有効にし、16 桁の認証コードを取得します

Claude Code での設定

方法一:インストール済みの ozon-mcp コマンドを使用(推奨)

claude mcp add ozon --transport stdio -- ozon-mcp

方法二:uvx でリモート実行

claude mcp add ozon --transport stdio -- uvx ozon-mcp

uvx を使用して GitHub から直接実行(インストール不要)

claude mcp add ozon --transport stdio -- uvx github:oychao1988/ozon-mcp

Claude Code の使用例

設定完了後、Claude Code 内で直接 MCP ツールを呼び出せます:

# 登录 OZON 账号
使用 ozon 工具执行 login-with-email-code 命令

# 获取营销活动价格数据
使用 ozon 工具执行 get-marketing-actions 命令,参数为 page=1, page_size=20

Claude Code の対話では次のように操作できます:

# 登录示例
User: 请帮我登录 OZON 卖家后台
Claude: [调用 login-with-email-code]

# 获取数据示例
User: 获取第1页的营销活动商品数据
Claude: [调用 get-marketing-actions,参数 {page: 1, page_size: 20}]

# 获取所有页面数据
User: 获取所有营销活动商品的价格数据
Claude: [调用 get-marketing-actions,参数 {all_pages: true}]

Cursor での設定

.mcp.json または Cursor MCP 設定に追加します:

{
  "mcpServers": {
    "ozon": {
      "command": "ozon-mcp"
    }
  }
}

または uvx を使用します:

{
  "mcpServers": {
    "ozon": {
      "command": "uvx",
      "args": ["ozon-mcp"]
    }
  }
}

使用方法

ツールリスト

1. login-with-email-code

OZON セラーバックエンドに自動ログインします(QQ メールで認証コードを受信)。

{
  "command": "login-with-email-code"
}
2. get-marketing-actions

マーケティングキャンペーンの製品価格データを取得します。

{
  "command": "get-marketing-actions",
  "arguments": {
    "page": 1,
    "page_size": 20,
    "all_pages": false
  }
}

パラメータ説明:

パラメータ

デフォルト値

説明

page

number

1

ページ番号(1から開始)

page_size

number

20

1ページあたりの製品数

all_pages

boolean

false

すべてのページデータを取得するかどうか

CLI コマンドライン直接呼び出し

MCP プロトコルを介して Claude Code / Cursor で使用する以外に、コマンドラインから直接単一の操作を実行することも可能です:

# 检查环境配置
python cli.py check

# 登录 OZON 卖家后台
python cli.py login

# 获取营销活动数据(第1页,50条,表格输出)
python cli.py marketing

# 获取第2页,每页100条
python cli.py marketing --page 2 --page-size 100

# 获取所有页面数据并保存到文件
python cli.py marketing --all --output products.json

# 保存为 CSV 格式
python cli.py marketing --page-size 100 --output data/products.csv

# 无头模式运行(不显示浏览器界面)
python cli.py --headless marketing

# JSON 格式输出(适合管道处理)
python cli.py marketing --json
python cli.py login --json

CLI パラメータ説明:

コマンド

パラメータ

説明

check

-

環境設定が完全か確認

login

--headless

ヘッドレスモードで実行

marketing

--page N

ページ番号(1から開始)

--page-size N

1ページあたりの製品数(デフォルト50)

--all

すべてのページを取得

--max-scrolls N

最大スクロール回数

--scroll-delay N

スクロール遅延(秒、デフォルト3秒)

--output PATH

出力ファイルパス(csv または json 形式)

共通

--headless

ヘッドレスモード

--json

JSON 形式で出力

説明: CLI スクリプトは server.py 内のハンドラー関数を直接呼び出し、すべてのブラウザ自動化ロジックを再利用しますが、MCP プロトコル層をスキップします。

テストの実行

# 运行所有测试
uv run pytest tests/ -v

# 运行特定测试文件
uv run pytest tests/test_server.py -v

# 运行带覆盖率报告的测试
uv run pytest tests/ -v --cov=ozon_mcp

# 运行特定测试类
uv run pytest tests/test_handlers.py::TestRetryDecorator -v

# 运行特定测试用例
uv run pytest tests/test_server.py::TestLoginOTPFlow::test_otp_filled_then_submit_button_clicked -v

プロジェクト構造

ozon-mcp/
├── src/ozon_mcp/          # 核心代码
│   ├── __init__.py        # 版本声明和导出
│   ├── server.py          # MCP Server 入口 + 业务逻辑
│   ├── browser.py         # Playwright 浏览器管理
│   ├── mail.py            # QQ 邮箱 IMAP 操作
│   ├── session.py         # 多账号会话管理
│   ├── _selectors.py      # YAML 选择器加载器
│   ├── selectors.yaml     # 选择器配置文件
│   ├── handlers/          # 工具处理器
│   │   ├── __init__.py
│   │   └── base.py        # BaseHandler 基类
│   └── ozon_selectors.py  # OZON 页面选择器常量
├── cli.py                 # CLI 命令行脚本(直接调用 handler)
├── tests/                 # 测试代码
│   ├── test_browser.py    # 浏览器管理器测试
│   ├── test_handlers.py   # 处理器测试
│   ├── test_mail.py       # 邮箱模块测试
│   ├── test_selectors.py  # 选择器配置测试
│   ├── test_server.py     # MCP Server 测试
│   └── test_session.py    # 会话管理器测试
├── .env.example           # 环境变量示例
├── pyproject.toml         # 项目配置
└── README.md             # 使用说明

PyPI への公開

# 构建包
uv build

# 发布到 PyPI(需要账号)
uv publish

# 或发布到 TestPyPI 测试
uv publish --repository testpypi

注意事項

  1. プライバシー保護 - .env ファイルや chrome-profile/ ディレクトリを Git にコミットしないでください

  2. 認証コード - QQ メールが OZON からの認証コードメールを正常に受信できることを確認してください

  3. Chrome Profile - 初回ログイン後にログイン状態が保存され、再認証を回避できます

Claude Code 管理コマンド

# 查看已配置的 MCP 服务器
claude mcp list

# 移除 MCP 服务器
claude mcp remove ozon

# 重新添加(更新版本后)
claude mcp add ozon --transport stdio -- ozon-mcp

# 检查 MCP 服务器状态
claude mcp start ozon

よくある質問

Q: ログイン失敗、認証コードエラーと表示される A: QQ メールが OZON からのメールを受信できるか確認し、迷惑メールフォルダを確認してください

Q: ページ読み込みタイムアウト A: ネットワークタイムアウト時間を増やすか、Chrome Profile が正常か確認してください

Q: 詳細ログの確認方法 A: RUST_LOG=debug claude を実行して Claude Code を起動し、MCP 通信ログを確認してください

更新履歴

v0.1.2 (2026-04-20)

バグ修正:

  • __version__pyproject.toml のバージョンが一致しない問題を修正

  • OTP 認証コード入力後に送信ボタンがクリックされない問題を修正

  • 重複していた scroll_to_load 関数定義を削除

堅牢性の向上:

  • リトライロジックのために tenacity 依存関係を追加

  • IMAP 接続に 30 秒のソケットタイムアウトを追加

  • メールポーリングに指数バックオフ戦略を追加

  • ページネーション失敗時に取得済みの部分データを返すように変更

  • scroll_to_loadmax_scrolls および scroll_delay パラメータによる設定をサポート

拡張性の向上:

  • SessionManager を追加し、マルチアカウント管理をサポート

  • BaseHandler 基底クラスを追加し、リトライとエラー復旧ロジックを統合

  • セレクター設定を YAML ファイルに移行し、ホットリロードをサポート

  • Server.py で SelectorConfig を使用したセレクター管理を全面的に採用

パッケージ修正:

  • pyproject.tomlhandlers サブパッケージと selectors.yaml データファイルが不足していたパッケージング設定を修正

v0.1.0 (2026-04-20)

初期バージョンリリース、以下を含む:

  • login-with-email-code - QQ メール認証コードによる自動ログイン

  • get-marketing-actions - マーケティングキャンペーンの価格データ取得

  • Playwright ブラウザ自動化

  • Chrome Profile セッション管理


Related MCP server: Browser Testing MCP Server

English Docs

OZON MCP Server is a Model Context Protocol (MCP) based tool for automating OZON seller platform operations using Playwright, with QQ Mail OTP support.

Features

  • Auto Login - Login to OZON using QQ Mail verification codes

  • Price Monitoring - Check marketing action prices and identify underpriced items

Installation

# Install via uv
curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install ozon-mcp

# Install browser
uv tool run ozon-mcp playwright install chromium

Configuration

Copy .env.example to .env and configure:

ozon_username="your_qq@qq.com"
qq_imap_auth_code="your_16_digit_auth_code"

Get QQ Mail auth code from: mail.qq.com → Settings → Account → IMAP/SMTP service

Claude Code Configuration

claude mcp add ozon --transport stdio -- ozon-mcp

Cursor Configuration

Add to .mcp.json or Cursor MCP settings:

{
  "mcpServers": {
    "ozon": {
      "command": "ozon-mcp"
    }
  }
}

License

MIT License - see LICENSE file

Install Server
A
license - permissive license
B
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A paid remote MCP for AI agent browser DevTools MCP, built to return verdicts, receipts, usage logs,

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

View all MCP Connectors

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/oychao1988/ozon-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server