Hedera MCP Server
by MCP-Mirror
The Hedera MCP Server provides tools for interacting with the Hedera network, enabling the creation of wallets, checking balances, building transactions, and sending signed transactions. It simplifies the process of integrating with Hedera by offering a set of easy-to-use tools.
Last updated: N/A
Hedera MCP Server
A Model Context Protocol (MCP) server for interacting with the Hedera network. This server provides tools for creating Hedera wallets, checking account balances, building transactions, and sending signed transactions.
Prerequisites
- Node.js (v18 or higher)
- npm or yarn
- A Hedera account (for testnet or mainnet)
Installation
-
Clone this repository:
git clone https://github.com/hedera-dev/hedera-mcp-server.git cd hedera-mcp-server
-
Install dependencies:
npm install
-
Create a
.env
file in the root directory with your Hedera credentials:HEDERA_OPERATOR_ID=your-operator-account-id HEDERA_OPERATOR_KEY=your-operator-private-key HEDERA_NETWORK=testnet # or mainnet PORT=3000 # optional, defaults to 3000
Building the Application
Compile the TypeScript code:
npm run build
For development with automatic recompilation:
npm run dev
Running the Server
Start the server:
npm start
The server will be available at http://localhost:3000 (or the port specified in your .env file).
Testing with the Test Client
The repository includes a test client script that demonstrates how to connect to the MCP server and use its tools. This client provides a complete end-to-end flow demonstrating all available tools.
Run the test client:
node test-client.js
The test client will:
- Connect to the MCP server
- List available tools
- Create a new Hedera wallet (create-wallet tool)
- Check the balance of the new account (check-balance tool)
- Build a transaction transferring the account's entire balance to the operator account (build-transaction tool)
- Sign the transaction on the client side using the Hedera SDK
- Submit the signed transaction to the Hedera network (send-transaction tool)
- Display the transaction result
This demonstrates the complete lifecycle of interacting with the Hedera network through the MCP server, from account creation to transaction submission.
Available MCP Tools
The server provides the following tools:
-
create-wallet: Creates a new Hedera account with a minimal initial balance
- No input parameters required
- Returns account ID, public key, and private key
-
check-balance: Checks the balance of a Hedera account
- Input:
accountId
(string) - Returns the account balance in tinybars
- Input:
-
build-transaction: Builds a transfer transaction (without signing)
- Inputs:
senderAccountId
(string)recipientAccountId
(string)amount
(number, in tinybars)
- Returns a base64-encoded transaction
- Inputs:
-
send-transaction: Sends a signed transaction to the Hedera network
- Input:
signedTransaction
(string, base64-encoded) - Returns transaction status and ID
- Input:
Deployment
A simple deployment script is included:
./deploy.sh
Make sure to make it executable first:
chmod +x deploy.sh