Перейти к основному содержанию
Tenderly MCP Server предоставляет 59 инструментов, разделённых на семь групп. Чтобы сначала подключить его к своему клиенту, следуйте быстрому старту MCP Server. Всем инструментам, работающим с ресурсами проекта, требуется активный проект — сначала вызовите set_active_project. Инструментам Virtual Environment требуется активный Virtual Environment — вызовите set_active_vnet или создайте/форкните Virtual Environment (что автоматически активирует его).
Вам не нужно вызывать инструменты по имени. Просто опишите, что вы хотите, естественным языком, и Claude сам подберёт нужные инструменты.

Проект и аккаунт

Эти инструменты управляют контекстом сессии. Большинству других инструментов требуется установленный активный проект.
ИнструментОписание
get_user_infoВозвращает информацию об аккаунте (ID, имя пользователя, email), текущий активный проект и активный Virtual Environment (ID, RPC URL, network ID), если установлен.
list_projectsПеречисляет все проекты Tenderly, доступные вам. Поддерживает необязательную фильтрацию по имени или слагу.
set_active_projectУстанавливает активный проект для последующих вызовов инструментов. Принимает account_slug и project_slug. Должен быть вызван до использования инструментов уровня проекта.

Сети

ИнструментОписание
get_networksПеречисляет все публичные EVM-сети, поддерживаемые Tenderly (100+). Поддерживает необязательную фильтрацию по имени. Возвращает network ID, имя, слаг и chain ID.

Контракты

ИнструментОписание
get_contract_infoВозвращает метаданные для адреса контракта в заданной сети: имя контракта, ABI (если верифицирован), версию компилятора, EVM-версию, язык, стандарты токенов (ERC-20, ERC-721 и т. д.), блок создания, транзакцию создания и адрес деплойера.

Симуляции транзакций

Симулируйте и трассируйте транзакции в любой поддерживаемой Tenderly EVM-сети, не тратя газ и не изменяя ончейн-состояние.

Основные инструменты симуляции

ИнструментОписание
simulate_transactionСимулирует транзакцию и возвращает результат: статус success/revert, использованный газ, декодированное имя метода, сообщение об ошибке и причину revert. Поддерживает переопределения состояния, поля EIP-1559 и кастомные номера блоков. Результаты сохраняются на дашборд проекта.
resimulate_transactionВоспроизводит существующую ончейн-транзакцию в среде симуляции Tenderly. Полезно для отладки транзакций, которые упали или повели себя неожиданно.
trace_transactionТрассирует ончейн-транзакцию и возвращает сводку: статус, использованный газ, декодированный метод, отправителя, получателя и детали ошибки.

Инструменты детализации симуляции

После запуска simulate_transaction, resimulate_transaction или trace_transaction используйте эти дополнительные инструменты с возвращённым simulation_id или tx_hash, чтобы инспектировать конкретные аспекты исполнения.
ИнструментОписание
get_simulation_call_traceПлоское дерево вызовов — каждый внутренний EVM-вызов с декодированными именами функций, входами, выходами и газом по каждому вызову. Поддерживает параметр max_depth. Ограничено 256 записями.
get_simulation_eventsДекодированные события (логи), эмитированные во время исполнения, включая имена событий, эмитирующие адреса и параметры, декодированные по ABI. Ограничено 100 записями.
get_simulation_state_changesДиффы слотов хранилища (адрес, ключ, значения до/после) и диффы нативных балансов для всех затронутых аккаунтов. Ограничено 100 записями.
get_simulation_asset_transfersВсе переводы токенов и нативных активов: отправитель, получатель, информация о токене (имя, тип, символ, decimals) и сумма. Ограничено 100 записями.
get_simulation_exposure_changesИзменения approvals и allowance для токенов — approvals, отзывы и permits. Ограничено 100 записями.
get_simulation_balance_changesЧистое изменение балансов по каждому адресу с долларовыми значениями. Ограничено 100 записями.
get_simulation_gas_breakdownРазбивка газа по каждому вызову, включая intrinsic gas и refunds. Значения газа включают подвызовы.
get_simulation_generated_access_listГенерирует access list EIP-2930 путём пересимуляции транзакции. Полезно для оптимизации газа.

Virtual Environments

Создавайте и управляйте приватными персистентными форками публичных EVM-сетей. У Virtual Environments свои RPC-эндпоинты, и они поддерживают имперсонированные транзакции без приватных ключей. Инструменты Virtual Environment используют stateful-модель сессии: установите Virtual Environment активным (или создайте/форкните его — это автоматически активирует), и все последующие инструменты Virtual Environment работают с ним. Не нужно передавать ID Virtual Environment в каждый вызов.
ИнструментОписание
set_active_vnetУстанавливает активный Virtual Environment для последующих вызовов инструментов. Принимает vnet_id. После установки все инструменты Virtual Environment автоматически работают с этим Virtual Environment.
create_vnetСоздаёт новый Virtual Environment, форкая публичную сеть на определённом блоке. Принимает network_id, необязательные display_name, description, block_number (hex), кастомный chain_id и sync_state_enabled. Возвращает детали Virtual Environment, включая RPC URLs. Автоматически устанавливает новый Virtual Environment активным.
list_vnetsПеречисляет Virtual Environments в активном проекте. Поддерживает пагинацию (page, per_page), фильтрацию по статусу (running, stopped, cloning) и поиск по имени.
get_vnetВозвращает полные детали активного Virtual Environment: ID, слаг, отображаемое имя, статус, описание, конфигурацию форка, конфигурацию сети и URL RPC-эндпоинтов.
fork_vnetФоркает активный Virtual Environment в новый, сохраняя всё состояние, включая задеплоенные контракты и балансы. Автоматически устанавливает новый форк активным.
delete_vnetУдаляет Virtual Environment. Это деструктивное действие. Очищает активный Virtual Environment из состояния сессии.
send_vnet_transactionОтправляет и исполняет транзакцию в активном Virtual Environment. Адрес отправителя имперсонируется, приватный ключ не нужен. Принимает from, to, input (calldata), value (hex wei) и gas.
get_vnet_transactionsПеречисляет транзакции в активном Virtual Environment с пагинацией. Возвращает хеш транзакции, статус, использованный газ, номер блока и метод.
fund_accountЗадаёт баланс нативного токена для любого адреса в активном Virtual Environment, вызывая tenderly_setBalance по RPC. Принимает address и amount в hex wei.
set_erc20_balanceЗадаёт баланс ERC-20 токена для любого адреса в активном Virtual Environment через tenderly_setErc20Balance. Принимает token_address, address и value. Предпочтительнее set_storage_at для изменения балансов токенов.
set_storage_atЗаписывает сырое значение в конкретный слот хранилища контракта через tenderly_setStorageAt. Принимает contract_address, slot и value. Используйте для переопределения цен оракулов, параметров протокола или любого состояния, не покрытого высокоуровневыми инструментами.
vnet_callВыполняет read-only eth_call в активном Virtual Environment. Принимает to, input (calldata) и необязательный from. Результаты усекаются на 10 КБ.
vnet_multicallВыполняет пакет до 10 read-only eth_call-запросов за один RPC round-trip. Каждый вызов принимает to, input и необязательный from. Каждый результат усекается на 10 КБ.
mine_blockМайнит один блок в активном Virtual Environment через evm_mine. Используйте после increase_time, чтобы применить изменение времени.
increase_timeПродвигает часы Virtual Environment на заданное число секунд через evm_increaseTime. Всегда следуйте mine_block, чтобы зафиксировать изменение времени в новом блоке.
snapshot_vnetСохраняет текущее состояние Virtual Environment и возвращает ID снапшота через evm_snapshot. Используйте для ветвления тестовых сценариев — сделайте снапшот перед тестом, затем откатитесь и попробуйте другой путь.
revert_vnetВосстанавливает Virtual Environment к ранее сохранённому снапшоту через evm_revert. Снапшот расходуется при использовании — сделайте новый снапшот, если нужно откатиться ещё раз.

Симуляции и трассы Virtual Environment

Симулируйте и трассируйте транзакции в активном Virtual Environment. Эти инструменты работают с operation ID, а не с хешами транзакций сетевого уровня.

Основные инструменты симуляции Virtual Environment

ИнструментОписание
simulate_vnet_transactionСимулирует транзакцию в Virtual Environment, не изменяя его состояние. Возвращает статус, использованный газ, декодированный метод и operation_id для последующих инструментов. Поддерживает переопределения состояния.
resimulate_vnet_transactionПовторно трассирует ранее выполненную транзакцию Virtual Environment по её operation_id (из get_vnet_transactions).
trace_vnet_transactionВозвращает сводку декодированной трассы исполнения: имя контракта, имя функции, декодированные входные параметры, декодированный выход, использованный газ и детали ошибки.

Инструменты детализации симуляции Virtual Environment

Используйте их с operation_id из инструментов выше. Они работают в активном Virtual Environment.
ИнструментОписание
get_vnet_simulation_call_traceПлоская трасса вызовов для транзакции Virtual Environment с типом вызова, адресами, газом и значением по каждому вызову.
get_vnet_simulation_eventsДекодированные события, эмитированные во время транзакции Virtual Environment: имя события и эмитирующий адрес.
get_vnet_simulation_gas_breakdownРазбивка газа по каждому вызову, отсортированная по потреблению газа. Показывает общий газ и топ-потребителей.
get_vnet_simulation_state_changesДиффы слотов хранилища: адрес, ключ, значения до/после для каждого изменённого слота.
get_vnet_simulation_generated_access_listAccess list EIP-2930, сгенерированный из исполнения транзакции Virtual Environment.
get_vnet_simulation_balance_changesЧистые изменения балансов по каждому адресу с долларовыми значениями.
get_vnet_simulation_asset_changesПереводы токенов и нативных активов: тип, from, to, сумма и информация о токене.

Продвинутая навигация по трассе

16 инструментов для навигации по сложным транзакциям с сотнями или тысячами внутренних вызовов. Используйте их, когда get_simulation_call_trace или get_vnet_simulation_call_trace возвращают усечённые результаты или когда нужно искать, углубляться или обобщать большую трассу без загрузки всего дерева.

Ончейн и симуляция

ИнструментОписание
get_trace_statsБыстрая проверка размера перед загрузкой трассы — возвращает общее число вызовов, максимальную глубину, число ошибок и уникальных контрактов. Помогает выбрать стратегию навигации.
get_trace_skeletonВозвращает сжатое дерево вызовов (имя функции, контракт, глубина, флаг ошибки, без декодированных аргументов) для больших усечённых трасс. Используйте возвращённые значения absolute_position, чтобы углубиться.
get_call_trace_nodeРазворачивает конкретный усечённый узел трассы. Используйте, когда узел сообщает omitted_children > 0.
search_call_traceИщет в большой трассе конкретные вызовы, не загружая всё дерево. Фильтруйте по адресу, имени функции или статусу ошибки.
get_subtree_eventsВозвращает события из одного конкретного поддерева, а не из всей транзакции. Используйте, когда get_simulation_events возвращает слишком много событий.
get_subtree_state_changesВозвращает диффы хранилища из одного конкретного поддерева.
find_failuresНаходит все локации ошибок в транзакции сразу — возвращает каждый упавший узел с именем контракта, функцией и декодированной ошибкой.
get_error_pathПоказывает цепочку виновников от корня до самой глубокой ошибки с декодированными входами/выходами на каждом уровне. Основной инструмент для отладки revert’ов в сложных транзакциях.
get_transaction_fund_flowПоказывает упорядоченное движение денег в транзакции — кто, кому и что отправил, с долларовыми значениями и чистым потоком по каждому адресу. Только для ончейн-транзакций.

Аналоги для Virtual Environment

Зеркальные аналоги инструментов выше для транзакций в активном Virtual Environment.
ИнструментОписание
get_vnet_trace_statsАналог get_trace_stats для Virtual Environment.
get_vnet_trace_skeletonАналог get_trace_skeleton для Virtual Environment.
get_vnet_call_trace_nodeАналог get_call_trace_node для Virtual Environment.
search_vnet_call_traceАналог search_call_trace для Virtual Environment.
get_vnet_subtree_eventsАналог get_subtree_events для Virtual Environment.
find_vnet_failuresАналог find_failures для Virtual Environment.
get_vnet_error_pathАналог get_error_path для Virtual Environment.