MCP ExplorerExplorer

thirdweb MCP Server

@thirdweb-devon 11 days ago
12Β Apache-2.0
FreeOfficial
AI Systems
#blockchain#mcp#thirdweb#web3#ipfs
Read/write to over 2k blockchains, enabling data querying, contract analysis/deployment, and transaction execution, powered by Thirdweb

Overview

What is thirdweb MCP Server

thirdweb AI is a comprehensive toolkit designed for blockchain data analysis, wallet management, and AI agent interactions with blockchains. It streamlines complex blockchain operations into five core components: Insight for analytics, Engine for wallet and contract functions, EngineCloud for cloud-based operations, Storage for decentralized file management, and Nebula for natural language blockchain interactions.

Use cases

thirdweb AI can be utilized for a variety of blockchain applications, including data analytics, smart contract interaction, decentralized storage management, wallet operations, and creating AI-powered agents that can perform tasks on blockchain networks through natural language processing.

How to use

To use thirdweb AI, install the necessary packages via pip or pipx, depending on your needs. Initialize the required services such as Insight, Engine, and Nebula, and create tools for AI agents based on the desired functionality. Additionally, integrate with frameworks like LangChain or OpenAI Agents for building sophisticated applications.

Key features

Key features of thirdweb AI include multi-chain support for blockchain data, robust wallet management capabilities, real-time transaction and price tracking, decentralized file management through IPFS, and the ability for AI agents to execute blockchain tasks using natural language commands.

Where to use

thirdweb AI can be used in environments that require blockchain interactions, such as decentralized applications (dApps), data analytics platforms, crypto wallets, and any system that benefits from integrating AI with blockchain technology for enhanced functionalities.

Content

thirdweb AI

AI Agents with Onchain Intelligence

πŸ“– Overview

thirdweb AI is thirdweb’s comprehensive toolkit for blockchain data analysis, wallet management, and AI agent interaction with blockchains. It simplifies complex blockchain operations into five core components: Insight for data analysis, Engine for wallet and contract operations, EngineCloud for cloud-based engine operations, Storage for decentralized file management, and Nebula for natural language-powered blockchain interactions.

🌐 Features

Insight

Comprehensive blockchain data intelligence:

  • Chains: Multi-chain support and network information
  • Transactions: Transaction analysis and monitoring
  • Blocks: Block data exploration and metrics
  • Events: Smart contract event tracking and filtering
  • Prices: Real-time token price feeds
  • Tokens: Detailed token information and analytics

Engine

Core blockchain interaction capabilities:

  • Wallet: Secure wallet management and transaction signing
  • Read: Read operations for smart contracts and blockchain data
  • Write: Transaction creation and contract interaction

EngineCloud

Cloud-based engine operations with advanced capabilities:

  • Server Wallets: Create and manage server wallets with KMS integration
  • Contract Interaction: Read from and write to smart contracts
  • Transaction Management: Send transactions and query transaction history
  • Balance Queries: Check native token balances on various chains

Storage

Decentralized storage capabilities:

  • Upload: Upload files, directories, and JSON data to IPFS
  • Fetch: Retrieve content from IPFS using thirdweb gateway

Nebula

AI agent blockchain interaction:

  • Natural Language Agent Action: Completing blockchain tasks through natural language instructions

πŸš€ Quickstart

MCP Server

Installation

### Run using uvx
THIRDWEB_SECRET_KEY=... \
    uvx thirdweb-mcp

### Install and run using pipx (and run thirdweb-mcp)
pipx install thirdweb-mcp

THIRDWEB_SECRET_KEY=... \
    thirdweb-mcp

More information

Python SDK

Installation

# Install core package with all framework adapters
pip install "thirdweb-ai[all]"

# Or install with specific framework adapters
pip install "thirdweb-ai[openai]"    # For OpenAI Agents
pip install "thirdweb-ai[langchain]" # For LangChain
pip install "thirdweb-ai[agentkit]" # For Coinbase Agentkit
pip install "thirdweb-ai[goat]" # For GOAT SDK
# ... many more framework supported

See the list of supported framework and installation guides

Basic Usage

from thirdweb_ai import Engine, EngineCloud, Insight, Nebula, Storage, Tool

# Initialize services
insight = Insight(secret_key=...)
nebula = Nebula(secret_key=...)
engine = Engine(...)
engine_cloud = EngineCloud(secret_key=..., vault_access_token=...)  # For cloud-based operations
storage = Storage(secret_key=...)

# Example: Create tools for AI agents
# Option 1: Use Nebula alone (recommended when you need a self-sufficient blockchain agent)
# Nebula already uses most other services internally
tools = [
    *nebula.get_tools(),
]

# Option 2: Use individual services directly without Nebula
# tools = [
#     *insight.get_tools(),
#     *engine.get_tools(),
#     *engine_cloud.get_tools(),
#     *storage.get_tools(),
# ]

# Example: Framework integration (LangChain)
from thirdweb_ai.adapters.langchain import get_langchain_tools
langchain_tools = get_langchain_tools(tools)
agent = create_tool_calling_agent(tools=langchain_tools, ...)

# Example: Framework integration (OpenAI Agents)
from thirdweb_ai.adapters.openai import get_openai_tools
openai_tools = get_openai_tools(tools)
agent = Agent(name="thirdweb Assistant", tools=tools)

# see python/examples for other framework integration

More information

TypeScript SDK

Coming soon.

πŸ“œ Documentation

For comprehensive documentation, please visit:

🚨 Security and Bug Reports

We take security seriously. If you discover a security vulnerability within thirdweb AI, please email [email protected] rather than using the issue tracker.

For non-security-related bugs, please use the GitHub issue tracker.

⚠️ Important Usage Notes

When using Nebula, do not combine it with other tools (Insight, Engine, EngineCloud, Storage) in the same agent implementation as Nebula already calls these tools in the background. Using them together can lead to compatibility issues and unexpected behavior.

πŸ“¦ Publishing Workflow

To publish a new version of thirdweb AI packages:

  1. Create a git tag for the new version: git tag -a v0.X.Y -m "Release v0.X.Y"
  2. Push the tag to GitHub: git push origin v0.X.Y
  3. Go to GitHub and create a release using this tag
  4. The CI/CD pipeline will automatically build and publish both packages to PyPI with matching version numbers

πŸ“§ Contact

πŸ“ License

thirdweb AI is licensed under the Apache-2.0 License. See the LICENSE file for details.

Tools

chat
Send a message to Nebula AI and get a response. This can be used for blockchain queries, contract interactions, and access to thirdweb tools.
get_session
Fetch complete information about a specific Nebula AI session, including conversation history, context settings, and metadata. Use this to examine past interactions or resume an existing conversation thread.
list_sessions
Retrieve all available Nebula AI sessions for the authenticated account. Returns an array of session metadata including IDs, titles, and creation timestamps, allowing you to find and reference existing conversations.
decode_signature
Decode a function or event signature. Use this when you need to understand what a specific function selector or event signature does and what parameters it accepts.
get_address_transactions
Look up transactions for a wallet or contract address. Use this when asked about a specific Ethereum address (e.g., '0x1234...') to get account details including balance, transaction count, and contract verification status. This tool is specifically for addresses (accounts and contracts), NOT transaction hashes or ENS names.
get_all_events
Retrieve blockchain events with flexible filtering options. Use this to search for specific events or to analyze event patterns across multiple blocks. Do not use this tool to simply look up a single transaction.
get_all_transactions
Retrieve blockchain transactions with flexible filtering options. Use this to analyze transaction patterns, track specific transactions, or monitor wallet activity.
get_block_details
Get detailed information about a specific block by its number or hash. Use this when asked about blockchain blocks (e.g., 'What's in block 12345678?' or 'Tell me about this block: 0xabc123...'). This tool is specifically for block data, NOT transactions, addresses, or contracts.
get_contract_events
Retrieve events from a specific contract address. Use this to analyze activity or monitor events for a particular smart contract.
get_contract_metadata
Get contract ABI and metadata about a smart contract, including name, symbol, decimals, and other contract-specific information. Use this when asked about a contract's functions, interface, or capabilities. This tool specifically retrieves details about deployed smart contracts (NOT regular wallet addresses or transaction hashes).
get_ens_transactions
Look up transactions associated with an ENS domain name (anything ending in .eth like 'vitalik.eth'). This tool is specifically for ENS domains, NOT addresses, transaction hashes, or contract queries.
get_erc1155_tokens
Retrieve ERC1155 tokens (semi-fungible tokens) owned by a specified address. Shows balances of multi-token contracts with metadata.
get_erc20_tokens
Retrieve ERC20 token balances for a specified address. Lists all fungible tokens owned with their balances, metadata, and optionally prices.
get_erc721_tokens
Retrieve ERC721 NFTs (non-fungible tokens) owned by a specified address. Lists all unique NFTs with their metadata and optionally prices.
get_nft_owners
Get ownership information for NFTs in a specific collection. Shows which addresses own which token IDs and in what quantities.
get_nft_transfers
Track NFT transfers for a collection, specific token, or transaction. Useful for monitoring NFT trading activity or verifying transfers.
get_nfts
Retrieve detailed information about NFTs from a specific collection, including metadata, attributes, and images. Optionally get data for a specific token ID.
get_token_prices
Get current market prices for native and ERC20 tokens. Useful for valuation, tracking portfolio value, or monitoring price changes.
get_transaction_details
Get detailed information about a specific transaction by its hash. Use this when asked to analyze, look up, check, or get details about a transaction hash (e.g., 'What can you tell me about this transaction: 0x5407ea41...'). This tool specifically deals with transaction hashes (txid/txhash), NOT addresses, contracts, or ENS names.
fetch_ipfs_content
Fetch content from IPFS by hash. Retrieves data stored on IPFS using the thirdweb gateway.
upload_to_ipfs
Upload a file, directory, or JSON data to IPFS. Stores any type on decentralized storage and returns an IPFS URI.

Comments