Install
openclaw skills install learn-moralisLearn about Moralis and Web3 development. Invoked without a question, gives a friendly platform walkthrough — what's available, what data you can fetch, and...
openclaw skills install learn-moralisIf the user invokes /learn-moralis with no question (or just says "learn moralis"), respond with a friendly platform overview. Walk them through:
MORALIS_API_KEY in .env, then use the skill that fits their needKeep it conversational and concise — think "onboarding tour", not "dump the docs". End by asking what they'd like to build so you can point them to the right skill.
If the user invokes /learn-moralis with a specific question, answer that question directly using the knowledge below, then route them to the appropriate technical skill.
Moralis is an enterprise-grade Web3 data infrastructure platform providing:
Key Stats: Powers 100M+ end users, 2B+ monthly API requests, 50+ supported chains.
After answering a general question, route users to the appropriate skill:
| User Need | Route To |
|---|---|
| Query wallet data (balances, tokens, NFTs, history) | @moralis-data-api |
| Get token prices, metadata, analytics | @moralis-data-api |
| Query NFT metadata, traits, floor prices | @moralis-data-api |
| Get DeFi positions, protocol data | @moralis-data-api |
| Query blocks, transactions | @moralis-data-api |
| Real-time wallet monitoring (EVM) | @moralis-streams-api |
| Real-time contract events (EVM) | @moralis-streams-api |
| Webhooks for EVM on-chain events | @moralis-streams-api |
| Track EVM transfers as they happen | @moralis-streams-api |
Rule of thumb:
| Question | Answer | Skill |
|---|---|---|
| Get wallet token balances? | Yes, with USD prices | @moralis-data-api |
| Get wallet NFTs? | Yes, with metadata | @moralis-data-api |
| Get wallet transaction history? | Yes, decoded | @moralis-data-api |
| Get token prices? | Yes, real-time + OHLCV | @moralis-data-api |
| Get NFT floor prices? | Yes (ETH, Base, Sei) | @moralis-data-api |
| Get DeFi positions? | Yes (major chains) | @moralis-data-api |
| Monitor wallets in real-time? | Yes (EVM only) | @moralis-streams-api |
| Track contract events live? | Yes (EVM only) | @moralis-streams-api |
| Get historical events? | Use Data API queries | @moralis-data-api |
| ENS/Unstoppable domain lookup? | Yes | @moralis-data-api |
| Token security scores? | Yes | @moralis-data-api |
| Detect snipers/bots? | Yes | @moralis-data-api |
| Get trending tokens? | Yes | @moralis-data-api |
| Get top tokens by market cap? | Yes | @moralis-data-api |
| Search tokens by name/symbol? | Yes | @moralis-data-api |
| Chain | Chain ID | Notes |
|---|---|---|
| Ethereum | 0x1 | All APIs including floor prices |
| Base | 0x2105 | All APIs including floor prices |
| Polygon | 0x89 | Missing only floor prices |
| BSC | 0x38 | No profitability, no floor prices |
| Arbitrum | 0xa4b1 | No profitability, no floor prices |
| Optimism | 0xa | No profitability, no floor prices |
| Avalanche | 0xa86a | No profitability, no floor prices |
| Sei | 0x531 | Nearly full (no profitability), includes floor prices |
| Monad | 0x8f | New chain, good support |
Linea, Fantom, Cronos, Gnosis, Chiliz, Moonbeam, Moonriver, Flow, Ronin, Lisk, Pulse
Mainnet and Devnet supported via @moralis-data-api only. Streams does not support Solana. Use __solana suffix endpoints.
Blast, zkSync, Mantle, opBNB, Polygon zkEVM, Zetachain
| Plan | Monthly CUs | Throughput | Price |
|---|---|---|---|
| Free | 40K/day | 1,000 CU/s | $0 |
| Starter | 2M | 1,000 CU/s | $49/mo |
| Pro | 100M | 2,000 CU/s | $199/mo |
| Business | 500M | 5,000 CU/s | $490/mo |
| Enterprise | Custom | Custom | Contact |
Compute Units (CUs): Each API call costs CUs based on complexity. Simple queries ~1-5 CUs, complex queries ~10-50 CUs.
Overages: Starter $11.25/M, Pro $5/M, Business $4/M
Free tier includes: All APIs (Wallet, Token, NFT, Price, DeFi, Blockchain, Streams)
.env: Add MORALIS_API_KEY=your_key to your .env file (the skill will help you create it)Need: Display user's tokens, NFTs, balances, and transaction history.
Solution: @moralis-data-api endpoints:
getWalletTokenBalancesPrice - Token balances with pricesgetWalletNFTs - NFT holdingsgetWalletHistory - Decoded transaction historygetWalletNetWorth - Total portfolio valueNeed: Export transaction history with cost basis.
Solution: @moralis-data-api endpoints:
getWalletHistory - All transactions decodedgetWalletProfitability - Realized gains/lossesNeed: Display NFT metadata, traits, prices, and ownership.
Solution: @moralis-data-api endpoints:
getNFTMetadata - Full metadata + traitsgetNFTFloorPriceByContract - Floor pricegetNFTOwners - Current holdersgetNFTTrades - Sale historyNeed: Show user's DeFi positions across protocols.
Solution: @moralis-data-api endpoints:
getDefiPositionsSummary - All positionsgetDefiPositionsByProtocol - Protocol-specific dataNeed: React to on-chain events in real-time.
Solution: @moralis-streams-api:
topic0 for target eventsNeed: Token prices, holders, trading volume, security scores.
Solution: @moralis-data-api endpoints:
getTokenPrice - Current pricegetTokenAnalytics - Volume, liquiditygetTokenHolders - Holder distributiongetTokenScore - Security analysis| Scenario | Use |
|---|---|
| Display current wallet balance | Data API |
| Alert when balance changes | Streams |
| Show transaction history | Data API |
| Log every new transaction | Streams |
| Get NFT metadata | Data API |
| Notify on NFT transfer | Streams |
| Query token price | Data API |
| Track DEX swaps live | Streams |
Most Data API endpoints respond quickly. However, response times can vary based on:
For production applications, set client-side timeouts to 30s to handle edge cases. Most requests return much faster, but large wallets or slower chains can occasionally take longer.
For detailed optimization guidance, see @moralis-data-api → references/PerformanceAndLatency.md.
For detailed information:
moralisAfter answering a question, always suggest the next action:
If user needs to query data: "Use @moralis-data-api — make sure your MORALIS_API_KEY is set in your .env file, then I can help you fetch the data."
If user needs real-time events: "Use @moralis-streams-api — make sure your MORALIS_API_KEY is set in your .env file and have your webhook URL ready, then I can help set up the stream."
If user is exploring: Suggest specific endpoints based on their use case.