Available Tools

April 16, 2026 · View on GitHub

The Hedera Agent Kit provides a comprehensive set of tools organized into plugins by the type of Hedera service they interact with. These tools can be used by an AI agent, like the ones in the examples/ folder, and enable a user to interact with Hedera services using natural language.

Want additional Hedera tools? Open an issue.

Plugin Architecture

The tools are organized into plugins, each containing related functionality:

  • Core Account Plugin: Tools for Hedera Account Service operations
  • Core Account Query Plugin: Tools for querying Hedera Account Service related data
  • Core Consensus Plugin: Tools for Hedera Consensus Service (HCS) operations
  • Core Consensus Query Plugin: Tools for querying Hedera Consensus Service (HCS) related data
  • Core Token Plugin: Tools for Hedera Token Service (HTS) operations
  • Core Token Query Plugin: Tools for querying Hedera Token Service related data
  • Core EVM Plugin: Tools for interacting with EVM smart contracts on Hedera (ERC-20 and ERC-721)
  • Core EVM Query Plugin: Tools for querying smart contract-related data on Hedera
  • Core Misc Query Plugin: Tools for fetching miscellaneous information from Hedera Mirror Node
  • Core Transaction Query Plugin: Tools for handling Hedera transaction–related queries

See an example of how to create a plugin as well as how they can be used to build with using Langchain or using the Vercel AI SDK.

Plugins can be found in packages/core/src/plugins


Plugins and Available Tools

Core Account Plugin Tools (core-account-plugin)

This plugin provides tools for Hedera Account Service operations:

Tool NameDescriptionDetails
TRANSFER_HBAR_TOOLTransfer HBAR between accountsView Parameters & Examples
APPROVE_HBAR_ALLOWANCE_TOOLApprove an HBAR spending allowanceView Parameters & Examples
DELETE_HBAR_ALLOWANCE_TOOLDelete an HBAR allowanceView Parameters & Examples
TRANSFER_HBAR_WITH_ALLOWANCE_TOOLTransfer HBAR using an allowanceView Parameters & Examples
CREATE_ACCOUNT_TOOLCreate a new Hedera accountView Parameters & Examples
UPDATE_ACCOUNT_TOOLUpdate an account's metadataView Parameters & Examples
DELETE_ACCOUNT_TOOLDelete an accountView Parameters & Examples
SIGN_SCHEDULE_TRANSACTION_TOOLSign a scheduled transactionView Parameters & Examples
SCHEDULE_DELETE_TOOLDelete a scheduled transactionView Parameters & Examples

Core Account Query Plugin Tools (core-account-query-plugin)

This plugin provides tools for fetching Account Service (HAS) related information from Hedera Mirror Node.

Tool NameDescriptionDetails
GET_ACCOUNT_QUERY_TOOLReturns comprehensive account informationView Parameters & Examples
GET_HBAR_BALANCE_QUERY_TOOLReturns the HBAR balance for a given accountView Parameters & Examples
GET_ACCOUNT_TOKEN_BALANCES_QUERY_TOOLReturns token balances for a Hedera accountView Parameters & Examples

Core Consensus Plugin Tools (core-consensus-plugin)

A plugin for Consensus Service (HCS), enabling creation and posting to topics.

Tool NameDescriptionDetails
CREATE_TOPIC_TOOLCreate a new topic on the Hedera networkView Parameters & Examples
SUBMIT_TOPIC_MESSAGE_TOOLSubmit a message to a topicView Parameters & Examples
DELETE_TOPIC_TOOLDelete a topic on the Hedera networkView Parameters & Examples
UPDATE_TOPIC_TOOLUpdate a topic on the Hedera networkView Parameters & Examples

Core Consensus Query Plugin Tools (core-consensus-query-plugin)

This plugin provides tools for fetching Consensus Service (HCS) related information from Hedera Mirror Node.

Tool NameDescriptionDetails
GET_TOPIC_INFO_QUERY_TOOLReturns information for a given HCS topicView Parameters & Examples
GET_TOPIC_MESSAGES_QUERY_TOOLReturns messages for a given HCS topicView Parameters & Examples

Core Token Plugin Tools (core-token-plugin)

A plugin for the Hedera Token Service (HTS), enabling creation and management of fungible and non-fungible tokens.

Tool NameDescriptionDetails
CREATE_FUNGIBLE_TOKEN_TOOLCreates a fungible token on HederaView Parameters & Examples
CREATE_NON_FUNGIBLE_TOKEN_TOOLCreates a non-fungible token (NFT) on HederaView Parameters & Examples
MINT_FUNGIBLE_TOKEN_TOOLMints additional supply of a fungible tokenView Parameters & Examples
MINT_NON_FUNGIBLE_TOKEN_TOOLMints NFTs with unique metadataView Parameters & Examples
ASSOCIATE_TOKEN_TOOLAssociates one or more tokens with an accountView Parameters & Examples
DISSOCIATE_TOKEN_TOOLDissociates one or more tokens from an accountView Parameters & Examples
UPDATE_TOKEN_TOOLUpdate token metadataView Parameters & Examples
AIRDROP_FUNGIBLE_TOKEN_TOOLAirdrops a fungible token to multiple recipientsView Parameters & Examples
APPROVE_TOKEN_ALLOWANCE_TOOLApprove fungible token spending allowancesView Parameters & Examples
DELETE_TOKEN_ALLOWANCE_TOOLDelete fungible token allowance(s)View Parameters & Examples
TRANSFER_FUNGIBLE_TOKEN_WITH_ALLOWANCE_TOOLTransfers fungible token using an allowanceView Parameters & Examples
APPROVE_NFT_ALLOWANCE_TOOLApprove NFT allowancesView Parameters & Examples
TRANSFER_NFT_WITH_ALLOWANCE_TOOLTransfers NFTs using an allowanceView Parameters & Examples
DELETE_NFT_ALLOWANCE_TOOLDelete NFT allowance(s) for specific serialsView Parameters & Examples
TRANSFER_NON_FUNGIBLE_TOKEN_TOOLTransfers NFTs from operator's accountView Parameters & Examples

Core Token Query Plugin Tools (core-token-query-plugin)

This plugin provides tools for fetching Token Service (HTS) related information from Hedera Mirror Node.

Tool NameDescriptionDetails
GET_TOKEN_INFO_QUERY_TOOLReturns details of a given token (HTS)View Parameters & Examples
GET_PENDING_AIRDROP_TOOLReturns pending airdrops for a Hedera accountView Parameters & Examples

Core EVM Plugin Tools (core-evm-plugin)

This plugin provides tools for interacting with EVM smart contracts on Hedera, including creating and managing ERC-20 and ERC-721 tokens via on-chain factory contracts and standard function calls.

Tool NameDescriptionDetails
CREATE_ERC20_TOOLDeploys a new ERC-20 token via the BaseERC20FactoryView Parameters & Examples
TRANSFER_ERC20_TOOLTransfers an ERC-20 tokenView Parameters & Examples
CREATE_ERC721_TOOLDeploys a new ERC-721 token via the BaseERC721FactoryView Parameters & Examples
MINT_ERC721_TOOLMints a new ERC-721 tokenView Parameters & Examples
TRANSFER_ERC721_TOOLTransfers an ERC-721 tokenView Parameters & Examples

Core EVM Query Plugin Tools (core-evm-query-plugin)

This plugin provides tools for fetching EVM smart contract-related information from Hedera Mirror Node.

Tool NameDescriptionDetails
GET_CONTRACT_INFO_QUERY_TOOLReturns details of a given smart contractView Parameters & Examples

Core Transaction Query Plugin Tools (core-transactions-query-plugin)

Tools for transaction-related queries on Hedera.

Tool NameDescriptionDetails
GET_TRANSACTION_RECORD_QUERY_TOOLReturns details for a given transaction idView Parameters & Examples

Core Misc Query Plugin Tools (core-misc-query-plugin)

This plugin provides tools for fetching miscellaneous information from the Hedera Mirror Node.

Tool NameDescriptionDetails
GET_EXCHANGE_RATE_TOOLReturns the Hedera network HBAR exchange rateView Parameters & Examples

Scheduled Transactions

Scheduled transactions are not separate tools — they use the same tools you already know (for example, UPDATE_ACCOUNT_TOOL, TRANSFER_HBAR_TOOL, etc.), but with additional optional parameters passed in a schedulingParams object.

From the user's perspective, scheduling simply means asking to execute a transaction later, or once all signatures are collected, instead of immediately.

If schedulingParams.isScheduled is false or omitted, all other scheduling parameters are ignored.

Supported Tools

The following tools support scheduling:

  • TRANSFER_HBAR_TOOL
  • CREATE_ACCOUNT_TOOL
  • UPDATE_ACCOUNT_TOOL
  • CREATE_FUNGIBLE_TOKEN_TOOL
  • CREATE_NON_FUNGIBLE_TOKEN_TOOL
  • MINT_FUNGIBLE_TOKEN_TOOL
  • MINT_NON_FUNGIBLE_TOKEN_TOOL
  • TRANSFER_FUNGIBLE_TOKEN_WITH_ALLOWANCE_TOOL
  • TRANSFER_HBAR_WITH_ALLOWANCE_TOOL
  • TRANSFER_NON_FUNGIBLE_TOKEN_TOOL
  • SUBMIT_TOPIC_MESSAGE_TOOL
  • CREATE_ERC20_TOOL
  • TRANSFER_ERC20_TOOL
  • CREATE_ERC721_TOOL
  • MINT_ERC721_TOOL
  • TRANSFER_ERC721_TOOL

Scheduling Parameters

The following schedulingParams object is accepted by all supported tools.

ParameterTypeDefaultDescription
schedulingParams.isScheduledbooleanfalseIf true, the transaction will be created as a scheduled transaction.
schedulingParams.adminKeyboolean | stringfalseAdmin key that can delete or modify the scheduled transaction. Pass true to use operator key.
schedulingParams.payerAccountIdstring(operator account)Account that will pay the transaction fee when executed.
schedulingParams.expirationTimestring (ISO 8601)Time when the scheduled transaction will expire if not fully signed.
schedulingParams.waitForExpirybooleanfalseIf true, execute at expiration time even if not all signatures are collected. Requires expirationTime to be set.

Prompting Best Practices

Important

Be explicit about scheduling. The Agent will only schedule a transaction if it clearly detects the intent to strictly schedule it.

To ensure the LLM correctly extracts scheduling parameters:

  1. Explicitly state "Schedule this transaction".
  2. Provide exact expiration dates. Avoid relative terms like "tomorrow" or "in 2 days" if you want precision. The LLM will attempt to transform explicit dates into valid ISO 8601 timestamps.
  3. Specify "wait for expiration" if you want the transaction to execute specifically at the expiration time.

Correct Examples

  • "Schedule a transfer of 1 HBAR to 0.0.1234. Make it expire on 2026-02-01 at 10:00:00 UTC and wait for expiration."
  • "Schedule account creation with admin key set to my operator key."

Incorrect Examples (May be ambiguous)

  • "Create an account later." (Too vague)
  • "Transfer 1 HBAR tomorrow." (May be interpreted as a request to wait and run the tool tomorrow, rather than creating a scheduled transaction now)

Using Hedera Plugins

Take a look at the example tool-calling-agent.ts for a complete example of how to use the Hedera plugins.

First, you will need to import the core plugins from the /plugins subpath, which contain all the tools you may want to use such as coreAccountPlugin.

Shortcut: to register every built-in plugin in one go, import allCorePlugins from @hashgraph/hedera-agent-kit/plugins and pass it as plugins. The example below uses individual plugin imports so you can see the per-plugin granularity.

You also have the option to pick and choose which tools from a Hedera plugin you want to enable. If you choose to do this, only the tools specified will be usable.

import { AgentMode } from '@hashgraph/hedera-agent-kit';
import {
  coreAccountPlugin,
  coreAccountQueryPlugin,
  coreConsensusPlugin,
  coreConsensusQueryPlugin,
  coreTokenPlugin,
  coreTokenQueryPlugin,
  coreEVMPlugin,
  coreEVMQueryPlugin,
  coreMiscQueriesPlugin,
  coreTransactionQueryPlugin,
} from '@hashgraph/hedera-agent-kit/plugins';
import { HederaLangchainToolkit } from '@hashgraph/hedera-agent-kit-langchain';

You will instantiate the HederaAgentToolkit with your chosen framework, defining the tools and plugins you want to use:

const hederaAgentToolkit = new HederaLangchainToolkit({
  client,
  configuration: {
    tools: [
      CREATE_FUNGIBLE_TOKEN_TOOL,
      MINT_FUNGIBLE_TOKEN_TOOL,
      TRANSFER_HBAR_TOOL,
      GET_ACCOUNT_QUERY_TOOL,
      // etc.
    ], // use an empty array if you want to load all tools from the plugins
    context: {
      mode: AgentMode.AUTONOMOUS,
    },
    plugins: [
      coreAccountPlugin,
      coreAccountQueryPlugin,
      coreConsensusPlugin,
      coreConsensusQueryPlugin,
      coreTokenPlugin,
      coreTokenQueryPlugin,
      coreEVMPlugin,
      coreEVMQueryPlugin,
      coreMiscQueriesPlugin,
      coreTransactionQueryPlugin,
    ],
  },
});