Инструменты: что делает каждый
Ниже — пользовательские описания: что вы получаете на выходе. Технические имена полей совпадают с теми, что видит агент/MCP; пресеты для каждого тула перечислены отдельно в presets-reference.md.
Handyman (ответы агента в чате) вызывает подмножество инструментов — см. HANDYMAN_TOOL_IDS в коде: туда входят все расчёты из таблиц ниже плюс поиск по библиотеке, без рендера SVG, CRUD клиентов и «карты по имени из БД». Полный MCP stdio регистрирует ещё geo/geocode и все ведические тулы из реестра — конец страницы.
Почти все расчёты ниже требуют сохранённую карту (дата, широта, долгота, аянамша). Исключения помечены.
Сила, ресурс, характер планет
| Инструмент |
Зачем он вам |
| calculate_shabdala |
Шадбала — шесть видов силы (место, направление, время, движение, природа, аспекты) + учёт граха-юддха («войны» планет). Можно запросить компактный режим ишта/кашта — производные от уччи и чешты по Парашаре. |
| calculate_digbala |
Дигбала отдельным отчётом — насколько планета «смотрит» в свою сильную сторону гороскопа. |
| calculate_graha_beneficence_table |
Таблица наисаргической (природной) и функциональной благотворности с учётом пакши Луны; настраивается правило для Меркурия и набор дустхан/трикон. Опционально таткалика по знаку для девяти точек (семь планет + узлы). |
| calculate_ashtakavarga_points |
Аштакаварга — баллы в знаках для каждой планеты и суммарная сила знаков; помогает видеть «насыщенность» домов/знаков транзитами и потенциалом. |
Карта в деталях: варги, дома, точки
| Инструмент |
Зачем он вам |
| calculate_varga_set |
Набор дробных карт (D2, D3, D7, D9, D10, D12, D30 и т.д.) — как проявляется тема на разном масштабе. |
| calculate_bhava_chalit_config |
Где реально стоит планета в доме при разных системах куспидов (whole sign vs Placidus vs Sripati), и насколько она близка к центру дома. |
| calculate_arudha_padas |
Арудха-пады (образ «как вас видят» для темы дома): Лагна-арудха, Упапада и др. в упрощённой whole-sign модели с классическим исключением для 1/7. |
| calculate_chara_karakas |
Чара-караки по Джаймини: АК, АмК, БК… по долям долготы в знаке; можно схема из семи или восьми грах (с Раху). |
Комбинации и состояния
| Инструмент |
Зачем он вам |
| find_planetary_yogas |
Поиск йог по правилам из классических наборов: махапуруша, раджа/дхана, гаджа-кешари, випарита, ничабханга, лунные фланги и др. Результат обычно с пояснением условий и отмен. |
| analyze_planetary_avasthas |
Авастхи планеты: ретро, сожжение, война, возрастные состояния (балади), бодрствование/сон по знаку (джаградади), цепочка глубины (диптади); настраивается база для части шкал и майтри. |
| analyze_sayanadi_avasthas |
Шаянади — двенадцать состояний активности по BPHS; можно включать узлы и «чештху» по числам имени (Деванагари) или тестовому числу. |
Прогнозика по времени
| Инструмент |
Зачем он вам |
| calculate_vimshottari_dasha |
Вимшоттари: маха/антар/пратъянтар до трёх уровней относительно выбранной даты; длина года может считаться по-разному (григорианский, сидерический и др.). |
| check_sade_sati |
Период саде-сати Сатурна относительно Луны; фазы и связка с «маленькими» периодами Сатурна (дхайя, асштама). |
| calculate_navatera |
Наватара / тара-бала на день: отношение транзитной накшатры к натальной (девять тар). |
| calculate_muhurta_points |
Мухурта: удачные окна (Абхиджит, Брахма-мухурта) и неудачные доли дня (Раху, Гулика, Ямаганда и опционально др.). Нужна дата события. |
| get_panchanga_detailed |
Панчанга: титхи, накшатра, йога, карана, вара; можно считать «на момент» или «на восход солнца дня». Нужна дата/место события. |
Совместимость и специальные проверки
| Инструмент |
Зачем он вам |
| calculate_ashta_kuta |
Ашта-кута (до 36 баллов по восьми факторам). Два входа: два клиента из базы или второй человек координатами, первый — карта чата. |
| check_nadi_dosha |
Проверка нади в логике куты (с типичными отменами). Тот же контракт пары, что у ашта-куты. |
| check_kuja_dosha |
Мангалик / куджа-доша: Марс в «тяжёлых» домах с учётом северной/южной традиции и набора отмен. |
| check_eclipse_birth |
Рождение рядом с затмением (солнце/луна); можно требовать видимость диска в месте рождения. |
Таджика и годовая карта
| Инструмент |
Зачем он вам |
| calculate_varsha_pravesha |
Момент солнечного возврата (варша-прадеша) для заданного года — база таджики. |
| calculate_tajika_year_chart |
Годичная карта таджики на JD возврата: отдельно место рождения (Мунтха, Луна) и место построения домов возврата; система домов порфирий или целознаковая; в ответе может быть связка данных для трипатаки и др. |
Чакры и библиотека
| Инструмент |
Зачем он вам |
| get_chakra_mapping |
Справочное соответствие чакра — накшатра/пада Луны по выбранной традиции (MIHAJLOVIĆ / BOSE). |
| search_astrology_library |
Смысловой поиск по библиотеке фрагментов книг (нужен текст запроса; карта не обязательна). |
| search_astrology_library_text |
Поиск по подстроке в текстах чанков (простой текстовый фильтр). |
Прочее
| Инструмент |
Зачем он вам |
| analyze_pushkara |
Зоны пушкара-навамши и пушкара-бхаги в знаке; знак D9 задаётся так же, как в варгах. |
MCP stdio: что есть сверх handyman
Эти инструменты подключены к MCP-серверу (stdio-server: calculate_geo_positions, get_city_coordinates, затем все записи из vedicTools в jyotish/vedic/index.ts). В handyman-списке их нет — ими пользуются Cursor/MCP или другие клиенты, а не автоматический слой Telegram-handyman.
| Инструмент |
Зачем он вам |
| calculate_geo_positions |
«Сырой» расчёт: долготы планет, асцендент, дома, накшатры по дате/месту/аянамше/системе домов — база для карты и для других тулов. |
| get_city_coordinates |
Геокодинг: город/строка → широта и долгота (чтобы потом передать в расчёт). |
| render_vedic_chart |
Картинка/SVG натала: стили (юг/север/лотос), опционально аспекты и цвет линий. |
| manage_clients |
Клиенты в локальной базе: создать/обновить/удалить, список, сброс — для связки с calculate_chart_by_name и парной кутой. |
| calculate_chart_by_name |
Подтянуть карту по имени клиента из БД (натал или выбранный тип карты в зависимости от параметров). |
В ресурсе astro://info/server сервер также перечисляет зарегистрированные имена; для отладки есть служебный test-greeting — к астрологии не относится.
Сверка с кодом
- Список handyman:
astro_bot/src/agentic_rag/tool-catalog.ts → HANDYMAN_TOOL_IDS.
- Полный список ведических MCP-тулов:
astro_bot/src/jyotish/vedic/index.ts → vedicTools (имена совпадают с полем name у каждого определения).
- Регистрация в MCP:
astro_bot/src/stdio-server.ts (geo + geocode + цикл по vedicTools).
Расчётные строки из таблиц выше покрывают все пункты HANDYMAN_TOOL_IDS; дублирования и пропусков нет.
Агент в Telegram (LangGraph), не MCP stdio
Внутри графа ответа поднимаются другие имена инструментов — их нет в MCP stdio-server, зато они нужны узлам librarian / chartMaker:
| Имя (ориентир) |
Роль |
| vector_search |
Векторный поиск по библиотеке внутри пайплайна RAG (рядом с пульсами «пишет в чат»). |
| library_text_search |
Текстовый поиск по книгам в том же пайплайне. |
| library_list_books / library_book_meta / library_book_full_text |
Обход каталога книг и полный текст при необходимости. |
| get_chunk_window / get_adjacent_chunks |
Достать соседние чанки вокруг попадания, если мысль обрезана. |
| search_user_history |
Поиск по сообщениям текущей сессии чата (векторно), если пользователь ссылается на прошлое в этой беседе. |
| create_client_chart |
Сборка карточки-картинки (геокод → позиции → рендер лотоса на шаблоне) для Telegram. |
Источник списка библиотекаря: astro_bot/src/agentic_rag/tools.ts → createLibrarianResearchTools. Для конечного пользователя важно лишь: MCP = «всё посчитать и отдать JSON»; агент = «найти в книгах, вспомнить диалог, сделать картинку».