A TypeScript SDK for interacting with the Cardano blockchain, include integration with Vercel AI, Langchain, Eliza...
✅ 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 Updated from Gitlab.