Перейти к содержимому

Hipo MCP Server

Hipo MCP Server — небольшой сервис с открытым исходным кодом, который позволяет AI-ассистентам получать доступ к данным, связанным с Hipo, включая информацию о стейкинге GRAM и другие темы. Он говорит на языке Model Context Protocol (MCP) — открытого стандарта для подключения AI-клиентов к внешним данным, поэтому любой MCP-совместимый клиент — Claude, Claude Code, Cursor и другие — может обращаться к документации Hipo и запрашивать актуальные ончейн-показатели вместо того, чтобы угадывать по данным обучения.

После подключения ваш ассистент может отвечать на вопросы вроде:

  • Какой сейчас курс обмена hGRAM/GRAM и какой APY из этого следует?
  • Сколько GRAM сейчас застейкано в Hipo?
  • Когда заканчивается текущий раунд валидации и когда мой отложенный депозит превратится в hGRAM?
  • Какой баланс hGRAM у этого адреса и сколько это стоит в GRAM?
  • Какую комиссию за газ приложить к депозиту?

Ответы поступают из геттеров смарт-контрактов Hipo в TON, а не из данных обучения модели, поэтому они актуальны на момент запроса.

Сервер строго только для чтения. Он не хранит ключи, ничего не подписывает и не отправляет сообщения в блокчейн. Он может смотреть, но никогда не может подвинуть ваши средства — подключение к нему не даёт никому возможности стейкать, выводить из стейкинга или переводить средства от вашего имени.

Hipo запускает публичный инстанс. Направьте свой MCP-клиент на:

https://mcp.hipo.finance/mcp

В Claude Code достаточно одной команды:

Окно терминала
claude mcp add --transport http hipo https://mcp.hipo.finance/mcp

Это регистрирует сервер для текущего проекта. Чтобы он был доступен из любого проекта, добавьте -s useruser здесь буквальное ключевое слово области видимости, а не заполнитель для вашего имени пользователя:

Окно терминала
claude mcp add -s user --transport http hipo https://mcp.hipo.finance/mcp

В любом случае используйте команду, а не ручное редактирование файла конфигурации: Claude Code хранит свои MCP-серверы в собственной конфигурации, и блок mcpServers, добавленный в settings.json, игнорируется. Выполните claude mcp list, чтобы убедиться, что сервер подключён, и перезапустите Claude Code после этого — серверы подключаются при запуске, поэтому только что добавленный сервер недоступен в уже запущенной сессии.

Другие клиенты настраиваются через JSON-файл (Claude Desktop, Cursor и большинство остальных) и принимают запись такого вида:

{
"mcpServers": {
"hipo": {
"type": "http",
"url": "https://mcp.hipo.finance/mcp"
}
}
}

Если вы предпочитаете запускать сервер самостоятельно, он опубликован в npm как @hipo-finance/mcp и работает через stdio. Для этого требуется Node.js 20 или новее:

Окно терминала
claude mcp add hipo -- npx -y @hipo-finance/mcp

Здесь действует тот же совет — добавляйте через команду, а не редактированием файла вручную. Для других клиентов JSON-конфигурация выглядит так:

{
"mcpServers": {
"hipo": {
"command": "npx",
"args": ["-y", "@hipo-finance/mcp"]
}
}
}

Вот вопросы, на которые может отвечать сервер. Ваш AI-клиент сам выбирает нужный инструмент — вы просто спрашиваете обычным языком.

ИнструментЧто возвращает
get_exchange_rateТекущий курс hGRAM↔GRAM, общий застейканный GRAM, объём hGRAM в обращении и недавний APY, выведенный из ончейн-обновлений курса
get_treasury_stateИтоги казны: TVL в GRAM, объём hGRAM, ожидающие депозиты и анстейки, активные участия в раундах, флаг остановки и параметры управления
get_round_timingТайминг раунда валидации: границы текущего и следующего раунда, окно участия в выборах и как долго стейки остаются заморожены
get_feesТекущие комиссии за газ для депозита, анстейка и запросов на заём
get_wallet_statusБаланс hGRAM указанного адреса, его стоимость в GRAM и любые ожидающие стейки или анстейки
get_reward_historyИстория наград за стейкинг GRAM указанного адреса по раундам, включая уровень Hipo Club и награды HPO
get_participationУчастие Hipo в раунде валидации: состояние, число займов, итоги и время освобождения стейка
get_loan_infoКонтракт займа заёмщика за конкретный раунд: адрес, состояние развёртывания, баланс и стороны
get_max_punishmentМаксимальное наказание, которое протокол может применить для заданной ставки валидатора

Первым четырём инструментам не нужен вообще никакой ввод. get_wallet_status, get_reward_history и get_loan_info принимают адрес TON — собственный адрес владельца или заёмщика, а не адрес его жетон-кошелька, — а get_max_punishment принимает сумму ставки в GRAM. get_participation и get_loan_info также принимают время начала раунда, но оно необязательно: если его опустить, они сообщают о текущем раунде.

Каждый ответ содержит одно и то же напоминание о том, что инструменты возвращают данные протокола в реальном времени, а не финансовую рекомендацию: значения меняются каждый раунд валидации, и доходность не гарантирована.

Наряду с данными в реальном времени сервер предоставляет технические документы Hipo как ресурсы MCP, получаемые из их канонических публичных мест, поэтому они всегда актуальны:

РесурсСодержимое
hipo://docs/overviewREADME репозитория смарт-контрактов: сводка протокола и адреса развёрнутых контрактов
hipo://docs/architectureКонтракты, конечный автомат состояний раунда валидации и инварианты протокола
hipo://docs/integrationСхемы сообщений и руководство по интеграции для кошельков и других протоколов
hipo://docs/schemaПолные TL-B схемы всех контрактов Hipo
hipo://docs/knowledgeКурируемая база знаний Hipo (llms.txt)

Вызов get_exchange_rate возвращает обычный JSON. Числа меняются каждый раунд, поэтому воспринимайте это как структуру, а не как актуальные значения:

{
"oneHgramInGram": "1.143623345",
"oneGramInHgram": "0.874413769",
"totalCoinsGram": "2501952.200844389",
"totalTokensHgram": "2187741.455006677",
"recentApy": "15.59%",
"apyNote": "APY is derived from the last on-chain rate update (current_rate / previous_rate compounded to a year). Rewards accrue in the exchange rate: hGRAM becomes worth more GRAM over time; there is no separate claim.",
"disclaimer": "Live protocol data, not financial advice. Values change every validation round and no returns are guaranteed."
}

Сервер никогда не реализует математику протокола заново. Каждое число выше поступает из геттера контракта, а репозиторий контрактов является источником истины для развёрнутых адресов.

Сервер распространяется по лицензии MIT и находится на github.com/HipoFinance/mcp. Он поставляется с двумя транспортами — stdio для локальных клиентов и потоковый HTTP для развёртывания на хостинге — и Dockerfile:

Окно терминала
docker build -t hipo-mcp .
docker run -p 3000:3000 -e TONCENTER_API_KEY=... hipo-mcp

Вся конфигурация необязательна; значения по умолчанию нацелены на mainnet через публичный API toncenter.

Переменная окруженияПо умолчаниюНазначение
HIPO_NETWORKmainnetmainnet или testnet
TONCENTER_ENDPOINThttps://toncenter.com/api/v2/jsonRPCЭндпоинт TON HTTP API
TONCENTER_API_KEY(нет)API-ключ toncenter; без него действует публичный лимит запросов, и запросы с ограничением повторяются с задержкой
TONCENTER_API_KEY_FILE(нет)Путь к файлу с API-ключом, например Docker secret; имеет приоритет над TONCENTER_API_KEY
HIPO_STATE_CACHE_SECONDS5Как долго состояние казны, время и комиссии кешируются между вызовами инструментов
HIPO_DOCS_CACHE_SECONDS300Как долго кешируются ресурсы документации
HIPO_REWARDS_API_BASEhttps://api.hipogang.ioБазовый URL API наград Hipo; установите пустым, чтобы отключить get_reward_history
PORT / HOST3000 / 0.0.0.0Только для HTTP-транспорта