quark-mcp
quark-mcp
夸克 MCP Server — 夸克ブラウザ内蔵の AI 会話ページ(quark.cn/chat、千问)を経由して、ゼロ API コストでビジョン・Q&A・テキストから画像を生成する機能を提供します。
CDP + Playwright で独立したプロファイルの夸克ブラウザを操作し、会話ページで画像をアップロードして質問し、応答を取得して返します。API キーは不要です。
機能
ツール | 説明 |
| テキストのみのQ&A(セッションを再利用、複数ターンの文脈に対応。 |
| 画像認識・分析(会話ページに画像をアップロードして質問し、回答を返す) |
| テキストからの画像生成(自然言語でトリガー。一度に約4枚生成し、ローカルに保存してパスを返す) |
| 動画分析(ダウンロード/ローカル → フレーム抽出+タイムスタンプ焼き込み → タイル結合・分割 → 認識。任意でローカル文字起こし) |
| 夸克デーモンを起動(独立プロファイル、ポート9224、冪等) |
| daemon の稼働状態とログイン状態を確認 |
| 夸克デーモンを停止 |
Related MCP server: Percepta MCP Server
動作原理
Claude Code ──MCP stdio──> server.py ──> quark_mcp/quark_ai.py ──CDP──> 夸克浏览器(独立 profile)
quark_mcp/video_analyze.py │
quark.cn/chat(网页版千问)夸克を
--remote-debugging-port=9224で起動し、独立プロファイルにするためログイン状態は永続化される画像はファイルチューザーではなく DataTransfer 注入(
JS_DROP_IMAGE)でアップロードし、添付リストが表示されてから送信する回答完了の判定:AI の回答ターン
[data-chat-answers-wrap]のカード class にcompletedが出たこと
環境要件
Python 3.10+
夸克ブラウザ(
QUARK_PATH環境変数または一般的なインストール先を自動検出)video_analyzeにはffmpeg/ffprobe(フレーム抽出)とpillow(タイムスタンプ焼き込み・タイル結合)が必要任意:
yt-dlp(オンライン動画のダウンロード)、faster-whisper(transcribe=Trueでの音声文字起こし)
インストール
pip install fastmcp playwright websocket-client
# 可选功能依赖
pip install pillow # 视频帧时间戳烧录 + 拼图(video_analyze 必需)
pip install yt-dlp # 在线视频下载(video_analyze 传 URL 时)
pip install faster-whisper # 音频转写(transcribe=True)pip で入れた yt-dlp.exe は Scripts/ に入って PATH が通っていないことが多いが、コード側でフォールバック済み:
yt-dlp コマンドが見つからないときは自動的に python -m yt_dlp を使うので、PATH を設定しなくても使えます。
使用
1. MCP サーバーとして使う(Claude Code など)
{
"mcpServers": {
"quark-mcp": {
"command": "python",
"args": ["/path/to/quark-mcp/server.py"]
}
}
}2. HTTP モード(デバッグ)
python server.py --port 80803. CLI から直接呼ぶ(MCP を介さない)
# 启动 daemon(首次需手动登录一次,登录态持久化)
python quark_mcp/quark_ai.py --start
python quark_mcp/quark_ai.py --status
# 纯文本问答
python quark_mcp/quark_ai.py --ask "帮我解释一下 CDP 是什么"
# 图片识别
python quark_mcp/quark_ai.py --image photo.jpg --question "请描述这张图片"
# 文生图(默认存 ~/.claude/quark-images)
python quark_mcp/quark_ai.py --gen "一只橘猫坐在窗台看夕阳,插画风格"
python quark_mcp/quark_ai.py --gen "复古黄铜怀表" --outdir ./imgs --max-images 2
# 视频分析(本地文件或 URL)
python quark_mcp/video_analyze.py --video demo.mp4
python quark_mcp/video_analyze.py --video demo.mp4 --transcribe画像生成について
モデル:夸克の会話ページのデフォルト(千问)に従う。指定は不可
トリガー方式:独立した「画像生成」スキルのオン/オフはなく、自然言語で(プロンプトに描きたい内容を明記して)トリガーする
アスペクト比:Web版には比率の選択肢がないので、プロンプト内で言葉で指定する (例:「16:9 横构图」)
出力: 一度に約4枚、実測で 856×1280 前後
ダウンロード:CDN URL が
auth_key署名を持つため、必ずブラウザコンテキスト(page.request)で画像を取得する。裸の urllib では 403 になる
# 返回结构
{"ok": True,
"images": ["C:/Users/.../.claude/quark-images/quark_20260823-103519_1.png", ...],
"text": "已生成 2 张图片, 保存至 ...",
"meta": {"found": 4, "details": [{"path": ..., "bytes": ..., "width": 960, "height": 1280}],
"model": "千问(夸克对话页默认)"}}設定
夸克のパス:環境変数
QUARK_PATHで実行ファイルを指定CDP ポート:デフォルトは
9224。quark_ai.py内のCDP_PORTを参照(doubao-mcp の9223とは採番を分けてあり共存可能)ログイン状態: 独立プロファイルは
~/.claude/quark-ai-profileに置かれる。初回daemon_start後に一度だけ手動でログインすればよい画像の出力先:デフォルトは
~/.claude/quark-images。outdirで上書きできる
よくある質問
終了コード1(CDP に到達できない/夸克が見つからない): daemon が起動していない。先に
daemon_startするか、QUARK_PATHを設定する終了コード2(未ログイン): 会話ページを開いて手動で一度ログインする
終了コード3(画像の問題): パスが存在しないか、アップロードに失敗
終了コード4(操作の失敗): 入力欄・送信ボタンが見つからない。たいていはページの改訂(リマイク)が原因
終了コード5(タイムアウト): 生成が遅い。
timeoutを増やす(画像生成のデフォルトは 300秒)終了コード6(結果が空): 回答が空か、画像が出なかった。リスク制御(机制)やコンテンツのフィルタリングの可能性
ページ構造への依存
純Web操作である以上、夸克が変更されれば動かなくなる可能性がある。現時点で確認している(quark_ai.py の SEL、夸克 7.1.2.956 / Chromium 144 + Web版 4.0.0):
用途 | セレクタ |
入力ボックス |
|
送信 |
|
AI の回答ターン |
|
ユーザーの質問ターン |
|
完了マーカー |
|
添付 |
|
落とし穴が 2 つあります:
完了マーカーは質問カード上の
completedであり、qk-markdownのqk-markdown-completeではない——後者は「 Wolken 」クライアント側パネルの表記で、Web版には存在しない。それをそのまま真似ると永遠に「未完了」と誤判定する。画像生成は「署名付き画像 URL の集合が安定する」を待つ必要があり、
completedだけでは判定できない——テキストが先に completed になって、完成画像はそこからさらに約45秒後にプレースホルダのアニメーションが差し替わる。テキストがcompletedになってからIMAGE_GRACE(120秒)待っても画像がない場合、その回では画像を生成しなかったと判定する。
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Give AI agents a real cloud Chrome: open sessions, navigate, read pages, click, type and screenshot.
Control a real browser from AI agents: navigate, click, type, screenshot, read the page.
Hosted browser for AI agents: screenshots, post-JS DOM, console, WCAG. No install, no API key.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to control browser automation through natural language prompts using Playwright, supporting visual element interaction, PDF generation, screenshots, and testing assertions.ISC
- FlicenseNot gradedqualityDmaintenanceProvides browser automation, AI-powered analysis, visual processing, web scraping, automated test generation, and DevTools analysis capabilities. Supports multiple AI providers (OpenAI, Anthropic, Google, Ollama) for intelligent web interaction and data extraction.-
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to execute browser automation, perform QA tasks, and generate test code through natural language commands using Playwright.7MIT
- AlicenseAqualityDmaintenanceEnables terminal AI coding assistants to interact with web AI chat services through browser automation, supporting multiple platforms like Doubao and ChatGPT.318 npmMIT