tzzb-mcp
tzzb-mcp
Tonghuashun Investment Ledger MCP-Server
Über MCP (Model Context Protocol) können persönliche Positionsdetails, Vermögensentwicklung, Transaktionshistorie, Echtzeitkurse und Watchlists mehrerer Konten abgefragt werden. Nach der Anbindung an KI-Assistenten (z. B. WorkBuddy) können diese deine Investment-Ledger-Daten direkt in natürlicher Sprache abfragen.
Funktionen
13 MCP-Tools für Login-Authentifizierung, Konten, Positionen, Trends, Transaktionen, Kurse, Wechselkurse, Handelstage und Watchlist-Abfragen
Multi-Konto-Unterstützung: Broker-Konten, manuelle Konten, Margin-Konten (unterschieden nach
fund_key/manual_id/rzrq_fund_key)CDP-Browser-Proxy: Alle API-Anfragen werden über das Chrome DevTools Protocol im Browser ausgeführt und nutzen den nativen Netzwerk-Stack des Browsers, wodurch die 401-Anti-Scraping-Sperre bei direkter Python-Verbindung umgangen wird
Separates Chrome-Profil (
~/.tzzb_chrome_profile), ohne Auswirkungen auf die tägliche Browser-NutzungCookie-Persistenz (
~/.tzzb_cookies.json), nach einmaligem Login ca. 7 Tage ohne erneuten LoginAutomatische Wiederverbindung bei Verbindungsabbruch: Bei getrennter CDP-Verbindung wird automatisch einmal neu verbunden
Related MCP server: Stock SDK MCP Server
Systemanforderungen
Python ≥ 3.10
Chrome-Browser installiert
Installation
cd tzzb-mcp
pip install .Abhängigkeiten: mcp>=1.0.0, websocket-client>=1.8.0, pydantic>=2.0.0.
Nach der Installation kann der Dienst über den Befehl tzzb-mcp gestartet werden (Einstiegspunkt definiert in [project.scripts] der pyproject.toml).
MCP-Konfiguration
Im MCP-Client (z. B. in der mcp.json von WorkBuddy) über stdio anbinden:
{
"mcpServers": {
"tzzb-mcp": {
"command": "python",
"args": ["-m", "src.server"],
"cwd": "/path/to/tzzb-mcp"
}
}
}cwd muss auf das Projektverzeichnis zeigen (das Verzeichnis, das src/ enthält).
Schnellstart
Beim ersten Mal muss zuerst tzzb_login aufgerufen werden: Dieses Tool startet eine Chrome-Debug-Instanz. Du musst dich im Browser beim Investment-Ledger (tzzb.10jqka.com.cn) anmelden. Nach erfolgreichem Login wird das Cookie automatisch extrahiert und persistiert.
1. tzzb_login → 弹出 Chrome,手动登录投资账本
2. tzzb_account_list → 获取所有账户的 fund_key / manual_id
3. tzzb_positions → 查看持仓明细Tägliche Abfragen:
1. tzzb_account_list → 获取账户列表
2. tzzb_positions → 查看具体持仓
3. tzzb_asset_trend → 查看收益走势(可选)Tool-Liste
Toolname | Zweck |
| Beim Investment-Ledger anmelden, Cookie extrahieren und persistieren (beim ersten Mal Pflicht) |
| Aktuellen Login-Status prüfen |
| Alle Konten abrufen (inkl. |
| Kontoübersicht (automatischer Fallback, wenn die Schnittstelle nicht verfügbar ist) |
| Portfolio-Übersicht (wie account_summary, inkl. Fallback) |
| Positionsdetails abrufen (Aktien + Fonds) ⭐ |
| Vermögens-/Ertragstrenddaten abrufen |
| Tagesverlauf der Erträge abrufen |
| Tages-Transaktionshistorie abrufen |
| Echtzeitkurse für Aktien abrufen |
| Wechselkurs Hongkong-Dollar zu Renminbi abrufen |
| Informationen zum letzten Handelstag abrufen |
| Watchlist für Aktien und Fonds abrufen |
⭐ markiert die am häufigsten verwendeten Tools.
Nutzungsregeln und Hinweise
Keine parallelen Aufrufe: Alle Tools teilen sich dieselbe Chrome-CDP-Verbindung (darunter liegt eine globale Sperre). Es kann immer nur ein Tool gleichzeitig aufgerufen werden – bitte seriell aufrufen.
Vor Positionsabfrage zuerst die Kontoliste abrufen: Die Parameter
fund_key/manual_idvontzzb_positionsstammen austzzb_account_list; ohne Parameter werden aggregierte Daten aller Konten zurückgegeben (kann leer sein).Kursformat
Markt:Code: Shanghai verwendet33(z. B.33:600519), Shenzhen verwendet47(z. B.47:000001). Das Feldmarketin den Positionsdaten entspricht"2"für Shanghai (33) und"1"für Shenzhen (47).Fonds-Positionsschnittstelle nicht verfügbar: Das Feld
fundvontzzb_positionsist immer{"error": "基金持仓接口不可用"}(die zugrunde liegende Schnittstelle gibt HTTP 400 zurück, ein Schutz ist eingebaut). Bitte das Feldfundignorieren und nur die Daten ausstockverwenden.Feldnamen sind Pinyin-Abkürzungen: Die Kursdaten liefern
xianjia(aktueller Preis),zuoshou(gestriger Schlusskurs),zqdm(Code),scdm(Markt); bei der Anzeige müssen diese in Chinesisch gemappt werden.Numerische Felder können Strings sein: Die numerischen Werte in Positionen/Kursen (z. B.
"300","18.09") sind vom Typ String – bei der Verwendung auf die Konvertierung achten.Datumsformat
YYYYMMDD: Das Felddateder Vermögensentwicklung hat das FormatYYYYMMDD(z. B.20260827), bei der Anzeige inYYYY-MM-DDumwandeln.Automatischer Wiederholungsversuch bei Verbindungsabbruch: Wenn ein Tool-Aufruf fehlschlägt (CDP-Verbindung getrennt), einfach einmal erneut versuchen – die Verbindung wird automatisch wiederhergestellt. Bei zwei aufeinanderfolgenden Fehlschlägen muss
tzzb_loginzur erneuten Authentifizierung aufgerufen werden.
Technische Architektur
AI 助手(MCP Client)
│ stdio
▼
tzzb-mcp(MCP Server, Python)
│ Chrome DevTools Protocol :9222
▼
Chrome 浏览器(独立 Profile)
│ 浏览器原生 fetch(携带 Cookie)
▼
同花顺投资账本 API(tzzb.10jqka.com.cn)CDP-Debug-Port:
9222Separates Chrome-Profil:
~/.tzzb_chrome_profileCookie-Persistenz:
~/.tzzb_cookies.json(Gültigkeit ca. 7 Tage)Globale Sperre für serielle Aufrufe, automatische Wiederverbindung bei CDP-Abbruch
Verzeichnisstruktur
tzzb-mcp/
├── pyproject.toml # 项目配置与依赖
├── src/
│ ├── server.py # MCP 服务入口(工具注册)
│ ├── auth.py # 登录、Cookie 提取与持久化
│ ├── client.py # Chrome CDP 连接与请求代理
│ ├── models.py # 数据模型
│ └── api/ # 各业务接口封装
│ ├── account.py # 账户列表 / 总览
│ ├── position.py # 持仓明细
│ ├── market.py # 行情 / 汇率 / 交易日
│ ├── trade.py # 交易记录 / 分时收益 / 资产趋势
│ └── watchlist.py # 自选列表
└── SKILL.md # AI 助手使用技能文档(工具详细说明)Fehlerbehebung
Symptom | Ursache | Lösung |
Fehler „Nicht angemeldet" | Cookie fehlt oder abgelaufen |
|
CDP-Anfrage fehlgeschlagen | Chrome läuft nicht oder Verbindung getrennt | Automatische Wiederverbindung im Hintergrund, einmal erneut versuchen; bei weiterem Fehlschlag |
Fonds-Positionen leer / Fehler |
| Schutz eingebaut, Feld |
|
| Fallback auf |
Chrome startet nicht automatisch | — | Manuell starten: |
Lizenz
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect brokerage accounts to AI assistants: holdings, orders, asset lookup, and approved trading.
Access real-time and historical market data for China A-shares and Hong Kong stocks, along with ne…
China A-share data for AI agents: 57 read-only tools plus 6 tools for your own watchlist.
Read-only access to your MetaTrader 4 and 5 accounts for AI agents: balances, open positions, trade history with win rate, live quotes, symbol specs and candles. It cannot place, modify or close orders.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides real-time market data for A-shares, Hong Kong, and US stocks using the Tencent Finance API. It enables users to manage stock positions and watchlists through an AI assistant.129 npm1ISC
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to query real-time and historical market data across A-shares, Hong Kong, US stocks, funds, futures, and options, including K-lines, technical indicators (MA/MACD/BOLL/KDJ/RSI), sector and capital-flow data. It also provides composite analysis tools, presets, and prompts for stock screening, multi-stock comparison, portfolio monitoring, and market overviews.143 npmISC
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to fetch real-time quotes, K-line data, and technical indicators for A-share, Hong Kong, US stocks, funds, futures, and options, plus composite stock analysis, market scanning, and sector breakdowns. It also ships preset prompts and skills for technical analysis, stock screening, market overviews, and portfolio monitoring.143 npmISC
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to query real-time quotes, K-line data, technical indicators, sector and fund flows, plus composite analysis across A-share, Hong Kong, US, fund, futures, and options markets. It also bundles ready-made prompts and skills for stock analysis, screening, market overviews, and portfolio monitoring.143 npmISC