mcpField
T
T-Bank Invest (read-only)

T-Bank Invest (read-only)

Local
github.com/SicnessFinance3Updated 4w ago

About T-Bank Invest (read-only)

T-Bank Invest (read-only) is an MCP server for querying T-Bank investment accounts through AI assistants. It is read-only and cannot trade, transfer funds, or change account settings; its tools cover portfolios, operations, instruments, market data, and analysis.

Key features

  1. 01View accounts, positions, and returns
  2. 02Query filtered, paginated operations history
  3. 03Find shares, bonds, ETFs, and other instruments
  4. 04Read market data, candles, and order books
  5. 05Retrieve technical and fundamental indicators
  6. 06Check bond events and dividends

Use cases

  1. 01Review account holdings and returns
  2. 02Look up transaction and dividend history
  3. 03Compare fundamental security metrics
  4. 04Analyze price movements and technical indicators

MCP support

The server exposes read-only T-Bank Invest API data to MCP clients through tools for accounts, portfolios, instruments, and market data. It runs over stdio and uses a read-only T-Invest API token.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"sicness-t-bank-invest-mcp-read-only": {
"command": "uvx",
"args": [
"t-bank-invest-mcp-read-only"
],
"env": {
"TBANK_INVEST_TOKEN": "<TBANK_INVEST_TOKEN>"
}
}
}
}
Run commanduvx t-bank-invest-mcp-read-only
Environment variables to set
TBANK_INVEST_TOKENSecretT-Invest API token; a read-only one is enough (tbank.ru/invest/settings/api)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypit-bank-invest-mcp-read-only1.0.0

Tools

39

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

T-Bank Invest MCP Server (read-only)

Tests PyPI

MCP-сервер для работы с инвестиционным портфелем Т-Банка (Тинькофф) через AI-ассистентов. Предоставляет только чтение — сервер не может совершать сделки, выводить средства или изменять настройки счёта.

Возможности

  • Портфель и счета — просмотр счетов, позиций, доходности, маржинальных показателей
  • История операций — сделки, дивиденды, купоны, налоги, комиссии с фильтрацией и пагинацией
  • Поиск инструментов — по тикеру, названию, ISIN, FIGI; детальная информация по акциям, облигациям, ETF, валютам, фьючерсам
  • Рыночные данные — свечи (OHLCV), стакан заявок, статус торгов, цены закрытия
  • Аналитика — технический анализ (SMA, EMA, RSI, MACD, Bollinger Bands), фундаментальные показатели (P/E, EPS, ROE), консенсус-прогнозы аналитиков, а также get_stock_snapshot — сводка по тикеру одним вызовом (фундаментал + изменение цены + консенсус)
  • Облигации — купонный календарь, НКД, события (амортизации, оферты)
  • Дивиденды — история и предстоящие выплаты

Требования

  • uv — запускает сервер одной командой: сам подбирает Python 3.11+ и ставит зависимости в изолированное окружение
  • Токен T-Invest API — выпустить на tbank.ru/invest/settings/api
Какой токен выпускать

Выпускайте токен только для чтения (readonly). Сервер вызывает только методы чтения, права на сделки ему не нужны, а с таким токеном торговые поручения невозможны уже на стороне Т-Банка — это вторая линия защиты помимо кода сервера. Токен можно дополнительно ограничить одним счётом.

MCP-клиенты хранят токен в своей конфигурации открытым текстом — ещё одна причина не давать ему прав на сделки.

Подключение

Сервер опубликован на PyPI: клонировать репозиторий не нужно, uvx скачает и запустит его сам. Токен передаётся через переменную окружения TBANK_INVEST_TOKEN в конфигурации MCP-клиента.

Claude Code
claude mcp add t-bank-invest -e TBANK_INVEST_TOKEN=your_token_here -- uvx t-bank-invest-mcp-read-only

По умолчанию сервер подключается только к текущему проекту; чтобы он был доступен во всех проектах, добавьте --scope user. С --scope project конфигурация вместе с токеном записывается в .mcp.json в корне проекта — не коммитьте этот файл.

Claude Desktop

Добавьте сервер в claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\) и перезапустите приложение:

{
  "mcpServers": {
    "t-bank-invest": {
      "command": "uvx",
      "args": ["t-bank-invest-mcp-read-only"],
      "env": {
        "TBANK_INVEST_TOKEN": "your_token_here"
      }
    }
  }
}

Если Claude Desktop не находит uvx, укажите в command полный путь к нему (его покажет which uvx).

Другие MCP-клиенты

Сервер работает по stdio. В любом клиенте укажите ту же команду, те же аргументы и переменную окружения, что в примере для Claude Desktop.

Сервер также есть в реестре MCP-серверов под именем io.github.Sicness/t-bank-invest-mcp-read-only.

Конкретная версия

uvx берёт последнюю версию с PyPI и обновляется сам. Чтобы закрепить версию, укажите её после имени — [email protected]; что менялось от версии к версии — в истории изменений.

Ещё не выпущенное состояние ветки main: uvx --from git+https://github.com/Sicness/t-bank-invest-mcp-read-only t-bank-invest-mcp-read-only.

Установка из исходников

Для разработки или если uv не подходит:

git clone https://github.com/Sicness/t-bank-invest-mcp-read-only.git
cd t-bank-invest-mcp-read-only
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[test]"

В конфигурации MCP-клиента тогда указывается полный путь к команде: /path/to/t-bank-invest-mcp-read-only/.venv/bin/t-bank-invest-mcp-read-only, без args.

Запуск напрямую

Сервер не загружает .env файл — переменную нужно экспортировать в shell:

export TBANK_INVEST_TOKEN=your_token_here
uvx t-bank-invest-mcp-read-only

Из установленного окружения то же самое делает команда t-bank-invest-mcp-read-only или python -m tbank_invest_mcp.

Доступные инструменты

Счета и пользователь
ИнструментОписание
get_accountsСписок инвестиционных счетов
get_user_infoТариф, статус квал. инвестора, уровень риска
get_margin_attributesМаржинальные показатели счёта
Портфель и позиции
ИнструментОписание
get_portfolioПолный портфель с ценами и доходностью; у позиций опущены нулевые поля
get_positionsБалансы позиций без расчёта цен
get_withdraw_limitsДоступные средства для вывода
Операции
ИнструментОписание
get_operationsИстория операций за период
get_operations_by_cursorИстория операций с пагинацией и расширенными фильтрами
Инструменты
ИнструментОписание
find_instrumentПоиск по тикеру, названию, ISIN, FIGI. По умолчанию — только торгуемые через API бумаги, не больше 20; есть фильтр по типу инструмента
get_instrument_byДетальная информация по идентификатору
get_bond_byИнформация об облигации
get_share_byИнформация об акции
get_etf_byИнформация об ETF/фонде
get_currency_byИнформация о валютном инструменте
get_future_byИнформация о фьючерсном контракте
get_bond_couponsКупонный календарь облигации
get_bond_eventsСобытия облигации: купоны, оферты, погашение, конвертации; фильтр по типу и периоду
get_dividendsИстория и будущие дивиденды
get_accrued_interestsНКД (накопленный купонный доход)
get_asset_fundamentalsP/E, EPS, ROE, капитализация
get_consensus_forecastsКонсенсус-прогноз аналитиков по одному инструменту (сканирует страницы и фильтрует по instrument_id — UID инструмента или актива, т.к. сам API не умеет фильтровать на своей стороне)
get_forecast_byПрогнозы инвестдомов по инструменту
get_asset_reportsДаты отчётностей эмитента
get_stock_snapshotСводка по акции одним вызовом: резолвит тикер → UID → UID актива и объединяет фундаментал, изменение цены за N торговых сессий и консенсус-прогноз
get_favoritesИзбранные инструменты пользователя
get_trading_schedulesРасписание торгов бирж
Рыночные данные
ИнструментОписание
get_candlesИсторические свечи (OHLCV) строками [время, open, high, low, close, объём, покупки, продажи]
get_last_pricesПоследние цены сделок
get_close_pricesЦены закрытия предыдущей сессии
get_order_bookСтакан заявок (bids/asks)
get_trading_statusТекущий статус торгов
get_tech_analysisТехнические индикаторы (SMA, EMA, RSI, MACD, BB)
Заявки
ИнструментОписание
get_ordersАктивные заявки на счёте
get_order_stateСтатус конкретной заявки
Списки инструментов
ИнструментОписание
list_sharesПолный справочник акций — около 2 МБ
list_bondsПолный справочник облигаций — около 2,4 МБ
list_etfsПолный справочник ETF/фондов — около 300 КБ
list_currenciesВсе валютные инструменты — около 13 КБ
list_futuresПолный справочник фьючерсов — около 700 КБ

Справочники, кроме валютного, — выгрузки для скриптов: в контекст модели они не помещаются, клиент сохранит такой ответ в файл или отклонит его. Чтобы найти бумагу, используйте find_instrument.

Формат данных

Ответы рассчитаны на то, что их читает модель, поэтому сервер не пересылает ответ API как есть:

  • Цены и суммы — обычные числа, а не пары units/nano. Валюта указана один раз, в поле currency того же объекта; сумма в другой валюте записана как {"value": ..., "currency": ...}.
  • В списках позиций, операций и событий облигаций опущены нулевые и пустые поля. Отсутствие поля означает ноль, «нет» или пусто.
  • Инструмент можно назвать как угодно: тикером, FIGI, ISIN или UID — в любом параметре, который принимает инструмент. Если под одним тикером торгуются разные бумаги (T — это и Т-Технологии, и AT&T), сервер попросит уточнить в виде ТИКЕР_КЛАСС, например T_TQBR. По названию ищет find_instrument.
  • Даты — в UTC. Дата без времени в to_date включает весь этот день.

Примеры запросов к ассистенту

  • «Покажи мой портфель и общую доходность»
  • «Какие дивиденды я получил за последний год?»
  • «Найди облигации Газпрома и покажи купонный календарь»
  • «Сравни P/E Сбера и ВТБ»
  • «Дай сводку по SBER: фундаментал, динамика цены, консенсус аналитиков»
  • «Построй RSI для AAPL за последние 3 месяца»
  • «Какие у меня активные заявки?»

Лицензия

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.