A TypeScript SDK for interacting with the Cardano blockchain, powered by Mesh SDK, AI tools, and modular actions.
✅ Create & Restore Cardano Wallets
✅ Get Wallet Balance (ADA + Native Assets)
✅ Send ADA (Lovelace) Transactions
✅ Sign & Submit Transactions
✅ Stake & Delegate ADA to Stake Pools
✅ Mint & Burn Tokens / NFTs
✅ Fetch Transaction History
✅ AI-powered Blockchain Tools (Vercel AI & Langchain integration)
✅ Dynamic Toolset Creation for AI Models
✅ Exported Actions (e.g., create wallet, send ADA, burn assets)
✅ Support for Blockfrost, Koios, Maestro, and U5C Providers
Install via npm:
npm install cardano-agent-kit
or via yarn:
yarn add cardano-agent-kit
import { CardanoToolKit } from "cardano-agent-kit";
const API_KEY = "your_blockfrost_api_key";
const TEST_MNEMONIC = [
"churn", "analyst", "debate", "million", "tattoo", "enlist",
"crystal", "slide", "gallery", "airport", "squeeze", "live",
"dinosaur", "rough", "first", "south", "cave", "clerk",
"divorce", "attend", "topic", "idea", "finger", "verify"
];
const toolkit = new CardanoToolKit("blockfrost", API_KEY, "testnet", TEST_MNEMONIC);
const address = await toolkit.getAddress();
console.log("Wallet Address:", address);
const balance = await toolkit.getBalance();
console.log("Wallet Balance:", balance);
const recipient = "addr_test1qz...";
const txHash = await toolkit.sendLovelace(recipient, "1000000"); // 1 ADA
console.log("✅ Transaction Sent! TX Hash:", txHash);
const stakePoolId = "pool1a7h89sr6ymj9g2a9tm6e6dddghl64tp39pj78f6cah5ewgd4px0";
const stakingTxHash = await toolkit.registerAndStakeADA(stakePoolId);
console.log("✅ Staking TX Hash:", stakingTxHash);
Cardano Agent Kit supports AI-powered blockchain tools using Vercel AI SDK and Langchain.
import { CardanoToolKit, createVercelCardanoTools } from "cardano-agent-kit";
const toolkit = new CardanoToolKit("blockfrost", API_KEY, "testnet", TEST_MNEMONIC);
const aiTools = createVercelCardanoTools(toolkit);
import { CardanoToolKit, createLangchainCardanoTools } from "cardano-agent-kit";
const toolkit = new CardanoToolKit("blockfrost", API_KEY, "testnet", TEST_MNEMONIC);
const aiTools = createLangchainCardanoTools(toolkit);
Cardano Agent Kit allows dynamic creation of AI tools for blockchain interactions.
import { CardanoToolKit, createVercelAITools } from "cardano-agent-kit";
import {
getAddress,
sendLovelace,
getBalance,
createWallet,
mintAsset,
burnAsset,
sendAsset
} from "cardano-agent-kit";
const toolkit = new CardanoToolKit("blockfrost", API_KEY, "testnet", TEST_MNEMONIC);
const aiTools = createVercelAITools(toolkit, [sendAsset, mintAsset, burnAsset, getAddress, sendLovelace, getBalance, createWallet]);
import { CardanoToolKit, createLangchainTools } from "cardano-agent-kit";
import {
getAddress,
sendLovelace,
getBalance,
createWallet,
mintAsset,
burnAsset,
sendAsset
} from "cardano-agent-kit";
const toolkit = new CardanoToolKit("blockfrost", API_KEY, "testnet", TEST_MNEMONIC);
const aiTools = createLangchainTools(toolkit, [sendAsset, mintAsset, burnAsset, getAddress, sendLovelace, getBalance, createWallet]);
Function | Description |
---|---|
createWallet() |
Creates a new wallet and returns its mnemonic. |
getMnemonic() |
Returns the wallet mnemonic (if available). |
getPrivateKey() |
Returns the Bech32 private key (if available). |
getAddress() |
Fetches the primary wallet address. |
getBalance() |
Fetches all assets in the wallet (ADA + tokens). |
sendLovelace(address, amount) |
Sends ADA to a recipient. |
signAndSendTx(txHex) |
Signs and submits a transaction. |
Function | Description |
---|---|
registerAndStakeADA(poolId) |
Registers a stake address and delegates to a stake pool. |
Function | Description |
---|---|
mintAsset(name, quantity, recipient, metadata, label) |
Mints a new Cardano token/NFT. |
burnAsset(assetUnit, quantity) |
Burns a specific amount of an asset. |
sendAsset(recipient, assetUnit, quantity) |
Transfers a Cardano asset (NFT or token). |
Function | Description |
---|---|
getTransactionHistory() |
Retrieves the transaction history with details on senders, recipients, and amounts. |
Function | Description |
---|---|
createVercelCardanoTools(toolkit) |
Creates AI-powered Cardano tools using Vercel AI SDK. |
createLangchainCardanoTools(toolkit) |
Creates AI-powered Cardano tools using Langchain. |
createVercelAITools(toolkit, toolsList) |
Dynamically generates AI-powered blockchain tools for Vercel AI. |
createLangchainTools(toolkit, toolsList) |
Dynamically generates AI-powered blockchain tools for Langchain. |
npm test
This project is licensed under the MIT License. See the LICENSE file for details.
💡 Contributions are welcome!
- Open an issue
- Submit a pull request
If you find this project useful, please ⭐ star the repository and share it with the Cardano community!
1️⃣ AI-powered Blockchain Interactions (Vercel AI & Langchain tools)
2️⃣ Dynamic Toolset Creation for AI Models
3️⃣ Enhanced Transaction History Functionality
4️⃣ Comprehensive API Documentation & Examples