tzzb-mcp
tzzb-mcp
Сервер MCP для инвестиционной книги Тунхуашунь (Tonghuashun Investment Ledger MCP Server)
Позволяет запрашивать детализацию позиций, динамику активов, историю сделок, котировки в реальном времени и списки избранного по нескольким личным счетам через MCP (Model Context Protocol). После подключения AI-ассистент (например, WorkBuddy) может запрашивать данные вашей инвестиционной книги на естественном языке.
Возможности
13 инструментов MCP, охватывающих аутентификацию, счета, позиции, динамику, сделки, котировки, валютные курсы, торговые дни и списки избранного
Поддержка нескольких счетов: брокерские счета, ручные счета, счета маржинальной торговли (различаются по
fund_key/manual_id/rzrq_fund_key)CDP-прокси через браузер: все API-запросы выполняются в браузере через Chrome DevTools Protocol, используя собственный сетевой стек браузера, что позволяет обойти блокировку 401 при прямом подключении через Python
Отдельный Chrome Profile (
~/.tzzb_chrome_profile), не влияет на повседневное использование браузераПостоянное хранение Cookie (
~/.tzzb_cookies.json), повторный вход не требуется в течение примерно 7 дней после однократной авторизацииАвтоматическое переподключение: при разрыве CDP-соединения выполняется автоматическое переподключение с одной повторной попыткой
Related MCP server: Stock MCP Server
Требования к окружению
Python ≥ 3.10
Установленный браузер Chrome
Установка
cd tzzb-mcp
pip install .Зависимости: mcp>=1.0.0, websocket-client>=1.8.0, pydantic>=2.0.0.
После установки сервис запускается командой tzzb-mcp (точка входа определена в [project.scripts] файла pyproject.toml).
Конфигурация MCP
Подключение через stdio в MCP-клиенте (например, в mcp.json у WorkBuddy):
{
"mcpServers": {
"tzzb-mcp": {
"command": "python",
"args": ["-m", "src.server"],
"cwd": "/path/to/tzzb-mcp"
}
}
}cwd должен указывать на каталог проекта (каталог, содержащий src/).
Быстрый старт
При первом использовании обязательно вызовите tzzb_login: этот инструмент запускает отладочный экземпляр Chrome, в котором вам нужно войти в инвестиционную книгу (tzzb.10jqka.com.cn). После успешного входа Cookie будут автоматически извлечены и сохранены.
1. tzzb_login → 弹出 Chrome,手动登录投资账本
2. tzzb_account_list → 获取所有账户的 fund_key / manual_id
3. tzzb_positions → 查看持仓明细Повседневные запросы:
1. tzzb_account_list → 获取账户列表
2. tzzb_positions → 查看具体持仓
3. tzzb_asset_trend → 查看收益走势(可选)Список инструментов
Инструмент | Назначение |
| Вход в инвестиционную книгу, извлечение и сохранение Cookie (обязателен при первом использовании) |
| Проверка текущего статуса входа |
| Получение списка всех счетов (включая |
| Сводка по счету (автоматический откат при недоступности API) |
| Обзор инвестиционного портфеля (аналог account_summary, с откатом) |
| Получение детализации позиций (акции + фонды) ⭐ |
| Получение данных о динамике активов / доходности |
| Получение данных о доходности за день по минутам |
| Получение записей о сделках за день |
| Получение котировок акций в реальном времени |
| Получение курса гонконгского доллара к юаню |
| Получение информации о последних торговых днях |
| Получение списка избранных акций и фондов |
⭐ Отмечены наиболее часто используемые инструменты.
Правила использования и примечания
Запрещены параллельные вызовы: все инструменты используют одно общее CDP-соединение Chrome (на нижнем уровне есть глобальная блокировка), одновременно можно вызывать только один инструмент — выполняйте вызовы последовательно.
Перед запросом позиций получите список счетов: параметры
fund_key/manual_idдляtzzb_positionsберутся изtzzb_account_list; если параметры не переданы, возвращаются агрегированные данные по всем счетам (могут быть пустыми).Формат котировок —
рынок:код: Шанхайская биржа —33(например,33:600519), Шэньчжэньская —47(например,47:000001). В данных о позициях полеmarketсо значением"2"соответствует Шанхаю (33),"1"— Шэньчжэню (47).API позиций по фондам недоступен: поле
fundв ответеtzzb_positionsвсегда равно{"error": "基金持仓接口不可用"}(базовый API возвращает HTTP 400, встроена защита). Игнорируйте полеfundи используйте только данныеstock.Имена полей — пиньинь-аббревиатуры: котировки возвращают
xianjia(текущая цена),zuoshou(цена закрытия предыдущего дня),zqdm(код),scdm(рынок); при отображении их нужно сопоставлять с китайскими названиями.Числовые поля могут быть строками: числовые значения в позициях/котировках (например,
"300","18.09") имеют строковый тип — учитывайте это при обработке.Формат даты
YYYYMMDD: полеdateв динамике активов имеет форматYYYYMMDD(например,20260827), при отображении преобразуйте вYYYY-MM-DD.Автоматическая повторная попытка при разрыве: при сбое вызова инструмента (разрыв CDP-соединения) достаточно повторить попытку один раз — нижний уровень автоматически переподключится; при двух последовательных неудачах необходимо вызвать
tzzb_loginдля повторной аутентификации.
Техническая архитектура
AI 助手(MCP Client)
│ stdio
▼
tzzb-mcp(MCP Server, Python)
│ Chrome DevTools Protocol :9222
▼
Chrome 浏览器(独立 Profile)
│ 浏览器原生 fetch(携带 Cookie)
▼
同花顺投资账本 API(tzzb.10jqka.com.cn)Порт отладки CDP:
9222Отдельный Chrome Profile:
~/.tzzb_chrome_profileПостоянное хранение Cookie:
~/.tzzb_cookies.json(срок действия около 7 дней)Глобальная блокировка обеспечивает последовательные вызовы, автоматическое переподключение при разрыве CDP
Структура каталогов
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 助手使用技能文档(工具详细说明)Руководство по устранению неполадок
Симптом | Причина | Решение |
Ошибка «не выполнен вход» | Cookie отсутствует или истёк срок действия | Вызовите |
Сбой CDP-запроса | Chrome не запущен или соединение разорвано | Нижний уровень переподключится автоматически, повторите попытку; если не помогло — вызовите |
Позиции по фондам пустые / ошибка | API | Встроена защита, просто игнорируйте поле |
| API | Встроен откат на |
Chrome не запускается автоматически | — | Запустите вручную: |
Лицензия
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Access real-time and historical market data for China A-shares and Hong Kong stocks, along with ne…
Read-only China A-share data for AI agents: market, limit-up, capital flow and disclosures.
Provide access to Chinese stock market data including historical prices, real-time data, news, and…
Ask your AI about bank accounts, spending, debts, holdings, and investment activity.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables querying financial data including stocks, indices, funds, and futures from Chinese, Hong Kong, and US markets. Provides real-time market information, financial indicators, news, and trading suggestions through Eastmoney and Sina data sources.133ISC
- 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.1220ISC
- FlicenseNot gradedqualityDmaintenanceProvides real-time quotes, fund flows, and corporate announcements for Chinese A-share stocks. It enables users to search for stocks, analyze financial indicators, and summarize quarterly reports through natural language.
- AlicenseAqualityCmaintenanceEnables AI assistants to query real-time A-share stock data, including quotes, fund flows, sector flows, and K-line history, without needing an API key.57MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Mrkelo/tzzb-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server