Thirdweb MCP Server

Thirdweb MCP servers enable AI agents to interact with EVM blockchains via thirdweb services, supporting multi-chain data querying, wallet and contract operations, autonomous execution, and both hosted and self-hosted deployment options.

GitHub starsPyPI versionPyPI downloads

Overview

The Thirdweb MCP Server connects AI agents to the thirdweb ecosystem, enabling secure, standardized interactions with EVM-compatible blockchains. Through thirdweb services like Insight, Engine/EngineCloud, and Nebula, agents can query on-chain data, manage wallets, read/write contracts, and execute transactions autonomously.

Official Server:

Developed and maintained by Thirdweb

Key Features

🌐

Multi-Chain Onchain Data

Real-time queries across many EVM networks via Insight

🔐

Wallet & Contract Tools

Create server wallets, read ABI/state, and write to contracts

🤖

Autonomous Execution

Nebula enables agents to plan and execute complex onchain tasks

☁️

Hosted & Self-Hosted

Use the hosted MCP endpoint or run locally with Python tools

Available Tools

Quick Reference

ToolPurposeCategory
list_server_walletsList server walletsWallet
create_server_walletCreate a server walletWallet
get_wallet_balanceGet native/token balancesWallet
read_contractRead contract state/ABIContract
write_contractExecute contract functionContract
get_contract_eventsFetch recent eventsData

Detailed Usage

get_wallet_balance

Retrieve the native/token balance of a wallet on a given chain.

use_mcp_tool({
  server_name: "thirdweb",
  tool_name: "get_wallet_balance",
  arguments: {
    address: "0xYourWallet",
    chainId: 1
  }
});
read_contract

Read contract state or metadata using ABI and method parameters.

use_mcp_tool({
  server_name: "thirdweb",
  tool_name: "read_contract",
  arguments: {
    chainId: 1,
    contractAddress: "0xContract",
    function: "balanceOf",
    params: ["0xYourWallet"]
  }
});
write_contract

Execute a contract function using a server wallet (Engine/EngineCloud).

use_mcp_tool({
  server_name: "thirdweb",
  tool_name: "write_contract",
  arguments: {
    chainId: 137,
    contractAddress: "0xContract",
    function: "approve",
    params: ["0xSpender", "1000000"],
    wallet: "treasury"
  }
});

Requires Engine configuration for transaction execution.

get_contract_events

Fetch recent events (logs) for a contract on a given chain.

use_mcp_tool({
  server_name: "thirdweb",
  tool_name: "get_contract_events",
  arguments: {
    chainId: 1,
    contractAddress: "0xContract",
    event: "Transfer",
    fromBlock: "latest-500"
  }
});

Installation

{
  "mcpServers": {
    "thirdweb": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "thirdweb-mcp"
      ],
      "env": {
        "THIRDWEB_SECRET_KEY": "your_secret_key",
        "THIRDWEB_ENGINE_URL": "(optional) engine url",
        "THIRDWEB_ENGINE_AUTH_JWT": "(optional) engine jwt",
        "THIRDWEB_ENGINE_BACKEND_WALLET_ADDRESS": "(optional) backend wallet"
      }
    }
  }
}

Sources