Base
Base is a secure, low-cost, builder-friendly Ethereum L2 built to bring the next billion users onchain.
Base Documentation
Build on Base — Coinbase's Ethereum L2. Smart Wallet, OnchainKit, MiniKit, Base Chain RPCs, and AI Agents. This index points AI assistants at the canonical page for each topic; follow the links for full context.
Get Started
- Base: The #1 Ethereum Layer 2, incubated by Coinbase
- Base Mentorship Program: Connect with experienced builders and industry leaders to accelerate your journey on Base
- Base Services Hub: A collection of services for building on Base.
- Block Explorers: Documentation for block explorers for the Base network.
- Core Concepts
- Country Leads & Ambassadors: Connect with local Base community leaders and ambassadors around the world
- Data Indexers: Documentation for data indexing platforms for Base network.
- Deploy Smart Contracts: Step-by-step guide to deploying smart contracts on Base.
- Static Docs Files: Use llms.txt and llms-full.txt to give AI assistants access to Base documentation.
- MCP Server: Connect your AI coding assistant to Base documentation using Model Context Protocol for real-time access.
- Get Funded: The Base ecosystem offers multiple funding pathways designed specifically for builders at every stage—from weekend experiments to full-scale ventures.
- Launch a Token
- Learning Resources: Find educational content for learning Solidity, Ethereum, and blockchain development
- Developer's Guide to Effective AI Prompting: Learn practical AI prompting techniques to enhance your coding workflow and get better results from AI coding assistants.
- Resources for AI agents: Base-first resources for AI agents, including docs indexes, MCP access, skills, and recommended starting points
Base Chain
- Flashblocks Overview: Understand the sequencer architecture, block building algorithm, and integration options for Flashblocks on Base.
- Overview: Technical specification of the Base Chain protocol, covering block derivation, execution, transaction propagation, and state verification.
- Specification: Specification of the Base rollup node, describing its components and role in L2 block derivation and consensus.
- L2 Execution Engine: Specification of the L2 execution engine, detailing EIP-1559 parameters, fee vaults, Engine API usage, and execution layer behavior.
- Overview: High-level overview of the Base Chain protocol, covering rollup architecture, core components, and user flows for deposits, transactions, and withdrawals.
- Proofs: Overview of the offchain services and onchain contracts that make L2 checkpoint proposals verifiable from Ethereum in the Azul proof system.
- Azul: Overview of the Azul hardfork, introducing Osaka EVM support, a simplified execution client, and a multi-proof system for L2 checkpoints.
- Canyon: Overview of the Canyon hardfork, bringing Ethereum Shanghai EIPs (EIP-3651, EIP-3855, EIP-3860) to the Base execution layer.
- Delta: Overview of the Delta hardfork, introducing span batches to reduce L1 data costs by compressing multiple L2 blocks into single batcher transactions.
- Ecotone: Overview of the Ecotone hardfork, integrating Ethereum Dencun changes including EIP-4844 blob transactions and EIP-4788 beacon block roots.
- Fjord: Overview of the Fjord hardfork, introducing FastLZ-based L1 fee estimation, the RIP-7212 secp256r1 precompile, and brotli channel compression.
- Granite: Overview of the Granite hardfork, adding bn256Pairing precompile input size restrictions and CHANNEL_TIMEOUT parameter changes.
- Holocene: Overview of the Holocene hardfork, introducing dynamic EIP-1559 parameters configurable via SystemConfig and stricter block derivation rules.
- Isthmus: Overview of the Isthmus hardfork, incorporating Ethereum Pectra EIPs and introducing the operator fee mechanism for sequencer revenue.
- Jovian: Overview of the Jovian hardfork, introducing a configurable minimum base fee and a DA footprint gas scalar for improved fee market stability.
- debug_traceBlockByHash: Returns EVM execution traces for all transactions in a block by block hash.
- debug_traceBlockByNumber: Returns EVM execution traces for all transactions in a block by block number.
- debug_traceTransaction: Returns the full EVM execution trace for a transaction. Requires a node with debug APIs enabled.
- eth_blockNumber: Returns the number of the most recently mined block.
- eth_call: Executes a message call without creating a transaction. Use pending on a Flashblocks endpoint to simulate against pre-confirmed state.
- eth_chainId: Returns the chain ID of the current network.
- eth_estimateGas: Estimates the gas required for a transaction. Use pending on a Flashblocks endpoint to estimate against pre-confirmed state.
- eth_feeHistory: Returns historical base fees and priority fee percentiles for a range of blocks.
- eth_gasPrice: Returns the current gas price in wei.
- eth_getBalance: Returns the ETH balance of an account at a given block. Use the pending tag on a Flashblocks endpoint for 200ms pre-confirmed balances.
- eth_getBlockByHash: Returns block information by block hash.
- eth_getBlockByNumber: Returns block information by number. On Flashblocks endpoints, the pending tag returns the live pre-confirmed block updated every ~200ms.
- eth_getBlockReceipts: Returns all transaction receipts for a block. Use pending on a Flashblocks endpoint for pre-confirmed receipts.
- eth_getBlockTransactionCountByHash: Returns the number of transactions in a block by block hash.
- eth_getBlockTransactionCountByNumber: Returns the number of transactions in a block by block number.
- eth_getCode: Returns the contract bytecode at an address. Use pending on a Flashblocks endpoint to detect newly deployed contracts before block finalization.
- eth_getLogs: Returns logs matching a filter. Use pending on a Flashblocks endpoint to query logs from pre-confirmed transactions.
- eth_getStorageAt: Returns the value of a storage slot at an address. Use pending on a Flashblocks endpoint for pre-confirmed storage reads.
- eth_getTransactionByBlockHashAndIndex: Returns a transaction by block hash and index position.
- eth_getTransactionByBlockNumberAndIndex: Returns a transaction by block number and index position.
- eth_getTransactionByHash: Returns a transaction by its hash.
- eth_getTransactionCount: Returns the number of transactions sent from an address (the nonce). Use pending on a Flashblocks endpoint to get the pre-confirmed nonce.
- eth_getTransactionReceipt: Returns the receipt for a mined transaction. Receipts are only available after a transaction is included in a block.
- eth_maxPriorityFeePerGas: Returns the suggested EIP-1559 priority fee (tip) per gas.
- eth_sendRawTransaction: Submits a pre-signed transaction to the network. Submit to a Flashblocks preconf endpoint to get 200ms pre-confirmation.
- eth_subscribe: Creates a real-time WebSocket subscription. Flashblocks endpoints add three extra subscription types and emit newHeads every ~200ms.
- eth_syncing: Returns the sync status of the node.
- eth_unsubscribe: Cancels an active WebSocket subscription.
- net_version: Returns the current network ID as a string.
- web3_clientVersion: Returns the current client version string.
- base_transactionStatus: Checks whether a transaction is in the node mempool. Only available on Flashblocks endpoints.
- eth_simulateV1: Simulates one or more transaction bundles against the current pre-confirmed Flashblock state. Only available on Flashblocks endpoints.
- Overview: Flashblocks-specific RPC methods, WebSocket subscriptions, and the infrastructure stream schema for Base pre-confirmations.
- newFlashblocks: Subscribe to receive full Flashblock payload stream as each pre-confirmed block is built. Only available on Flashblocks WebSocket endpoints.
- newFlashblockTransactions: Subscribe to receive each transaction as it is pre-confirmed into a Flashblock. Only available on Flashblocks WebSocket endpoints.
- pendingLogs: Subscribe to logs from pre-confirmed transactions matching an optional filter. Only available on Flashblocks WebSocket endpoints.
- Base RPC Overview: Complete reference for all JSON-RPC and Flashblocks methods available on Base nodes.
- App Integration: Integrate Flashblocks into your app for 200ms transaction confirmations using RPC APIs and popular libraries like Ethers, Wagmi and Viem.
- Flashblocks Architecture: Understand the sequencer architecture and infrastructure components that power Flashblocks on Base.
- Flashblocks FAQ: Frequently asked questions about Flashblocks, including block building, WebSocket data, RPC usage, and node setup.
- Contract Addresses: A comprehensive list of L2 contract addresses for Base Mainnet and Base Testnet, including links to their respective blockchain explorers.
- Block Building: This page outlines how Base blocks are built.
- Bridges: Documentation for bridging assets to Base. This page covers how to bridge assets between Ethereum, Solana, Bitcoin, and Base.
- Configuration Changelog: A log of configuration changes to the Base networks.
- Differences between Ethereum and Base
- Network Faucets: Documentation for Testnet Faucets on the Base network.
- Network Fees: Documentation about network fees on Base. This page covers details of the two-component cost system involving L2 execution fees and L1 security fees, and offers insights on fee variations and cost-saving strategies.
- Transaction Finality: Detailed information about transaction finality on Base.
- Troubleshooting Transactions: Guide to diagnosing and resolving transaction issues on Base.
- Base Azul Upgrade: Migrate your Base node to base-reth-node and base-consensus for Azul.
- Node Providers: Documentation for Node Providers for the Base network. Including details on their services, supported networks, and pricing plans.
- Node Performance: Hardware specifications, storage requirements, client recommendations, and configuration settings for running a performant Base node.
- Run a Node: A tutorial that teaches how to set up and run a Base Node.
- Node Snapshots: Download and restore Base node snapshots to significantly reduce initial sync time for both archive and pruned nodes.
- Node Troubleshooting: Solutions to common issues when setting up and running a Base node, covering sync problems, networking, snapshots, and performance.
- Base-Solana Bridge: Bridge tokens and messages between Base and Solana Mainnet
- Connecting to Base: Documentation about Base Mainnet and Base Testnet. This page covers network information for the Base network, including network names, descriptions, RPC endpoints, chain IDs, currency symbols, and block explorers.
- Deploy on Base
- Why Base?
- How to avoid getting your app flagged as malicious: The Base bug bounty program and procedures for reporting vulnerabilities.
- Bug Bounty
- Reporting Vulnerabilities: The Base procedures for reporting vulnerabilities.
- Security Council for Base: This page outlines the purpose, goals, structure, and responsibilities of the Security Council for Base.
- Batcher: Specification of the batcher (batch submitter), the component responsible for posting L2 sequencer data to L1 for data availability.
- Standard Bridges: Specification of the standard bridges enabling cross-domain ETH and ERC20 token transfers between L1 and L2 on Base.
- Deposits: Specification of the deposit mechanism for Base, detailing how L1 transactions are converted into L2 deposit transactions.
- Cross Domain Messengers: Specification of the cross-domain messenger contracts, providing a higher-level API for sending messages between L1 and L2 on Base.
- Withdrawals: Specification of the withdrawal mechanism for Base, describing how L2 state is proven on L1 and funds are released from the bridge.
- Derivation: Specification of the L2 chain derivation pipeline, describing how L2 blocks are deterministically derived from L1 data and sequencer batches.
- P2P: Specification of the rollup node peer-to-peer network, covering node discovery, gossip protocol, and unsafe block propagation.
- RPC: Specification of the rollup node RPC interface, including the optimism_outputAtBlock method for retrieving L2 output roots.
- Precompiles: Specification of precompiled contracts on Base, including native EVM implementations available at predefined addresses.
- Predeploys: Specification of predeployed smart contracts on Base, including system contracts deployed at predetermined addresses in genesis state.
- Preinstalls: Specification of preinstalled smart contracts on Base, including utility contracts deployed in genesis state that run directly in the EVM.
- Challenger: Specification of the challenger, an offchain service that detects invalid AggregateVerifier games and submits dispute transactions on L1 to nullify them.
- Proof Contracts: Specification of the onchain contracts that verify proof material, track game state, and release withdrawals for the Azul proof system.
- Proposer: Specification of the proposer, an offchain service that turns canonical L2 checkpoint ranges into AggregateVerifier games on L1.
- Registrar: Specification of the registrar, an offchain service that maintains the onchain registry of accepted TEE signer identities via attestation ZK proofs.
- TEE Prover: Specification of the TEE prover, an offchain service that re-executes L2 block ranges inside AWS Nitro Enclaves to produce signed proof material for AggregateVerifier games.
- ZK Prover: Specification of the ZK prover, an offchain service that uses SP1 programs to produce permissionless proofs for checkpoint proposals and disputes.
- Configuration: Reference for Base Chain configuration parameters across consensus, policy, admin, and sequencer categories.
- Glossary: Glossary of terms and definitions used throughout the Base Chain protocol specification.
- Azul: Execution Engine: Execution engine changes in the Azul hardfork, including the EIP-7825 transaction gas limit cap and secp256r1 precompile cost updates.
- Azul: Proof System: Specification of the Azul multi-proof system, replacing the single output proposer with an AggregateVerifier contract for L2 checkpoint security.
- Span-batches: Specification of span batches introduced in Delta, a new batch format that compresses sequences of L2 blocks for more efficient L1 data posting.
- Derivation: Derivation changes in the Ecotone upgrade, extending the retrieval stage to support EIP-4844 blobs as an additional data availability source.
- Ecotone L1 Attributes: L1 attributes transaction changes in the Ecotone upgrade, updating calldata format to support the new blob-based fee calculation model.
- Fjord L2 Chain Derivation Changes: Derivation changes in the Fjord upgrade, updating protocol parameters for max sequencer drift, channel bank size, and adding brotli compression support.
- L2 Execution Engine: Execution engine changes in the Fjord upgrade, replacing the L1 cost fee estimator with a FastLZ-based compression model.
- Predeploys: Predeploy changes in the Fjord upgrade, adding FastLZ fee computation constants to the GasPriceOracle contract.
- Granite L2 Chain Derivation Changes: Derivation changes in the Granite upgrade, updating the CHANNEL_TIMEOUT protocol parameter.
- L2 Execution Engine: Execution engine changes in the Granite upgrade, restricting bn256Pairing precompile input size to prevent unbounded gas consumption.
- Holocene L2 Chain Derivation Changes: Derivation changes in the Holocene upgrade, introducing stricter pipeline rules that simplify derivation and improve fault proof worst-case behavior.
- L2 Execution Engine: Execution engine changes in the Holocene upgrade, enabling dynamic EIP-1559 parameters encoded in block headers and configured via SystemConfig.
- System Config: SystemConfig changes in the Holocene upgrade, adding dynamic EIP-1559 parameter configuration via ConfigUpdate events.
- Isthmus L2 Chain Derivation Changes: Derivation changes in the Isthmus upgrade, specifying network upgrade automation transactions executed at hardfork activation.
- L2 Execution Engine: Execution engine changes in the Isthmus upgrade, including L2ToL1MessagePasser storage root in block headers and operator fee collection.
- L1 Block Attributes: L1 attributes transaction changes in the Isthmus upgrade, extending calldata to include operator fee scalar and constant parameters.
- Predeploys: Predeploy changes in the Isthmus upgrade, including updates to L1Block and the new OperatorFeeVault contract.
- Isthmus: System Config: SystemConfig changes in the Isthmus upgrade, adding operatorFeeScalar and operatorFeeConstant configuration variables.
- Derivation: Derivation changes in the Jovian upgrade, specifying activation block rules and gas computation behavior at hardfork activation.
- Jovian: Execution Engine: Execution engine changes in the Jovian upgrade, introducing a configurable minimum base fee via SystemConfig to reduce priority-fee auction durations.
- L1 Block Attributes: L1 attributes transaction changes in the Jovian upgrade, extending calldata to include the DA footprint gas scalar.
- Jovian: System Config: SystemConfig changes in the Jovian upgrade, adding a minimum base fee configuration variable for the EIP-1559 fee market.
Base Account
- Capabilities Overview: Understand how to use Base Account capabilities with wallet_connect and wallet_sendCalls
- Basename Transfer Guide: Step-by-step guide for Base App users to transfer their Basenames to new wallet addresses.
- Basenames FAQ: Frequently asked questions on basenames.
- Contribute to the Base Account Docs
- Security and Bug Bounty
- Coinbase Developer Platform: Build onchain apps supporting both Base Account and CDP Embedded Wallets
- Auth (Sign In With Base): Manage user authentication with Privy and Base Account
- Setup: Configure Privy with Base Account for your React application
- Spend Permissions: Enable trusted spenders to move assets without additional signatures
- Sub Accounts: Create and manage app-specific wallet accounts with Base Account
- Wallet Actions: Sign messages, transactions, and typed data with Privy wallets
- RainbowKit: Integrate Base Account with RainbowKit
- Reown: Integrate Base Account with Reown AppKit for your React application
- Thirdweb: Configure Thirdweb with Base Account for your React application
- Base Pay: Accept USDC payments with Base Pay in your Wagmi-powered React application
- Basenames: Add support for Base names in your application using Wagmi and Viem
- Batch Transactions: Send multiple onchain calls in a single transaction with Wagmi and Base Account
- Other Use Cases: Access the Base Account provider from Wagmi for advanced functionality like Sub Accounts, Spend Permissions, and more
- Setup: Configure Wagmi with Base Account connector for your React application
- Sign in with Base: Implement Base Account authentication using the proper SIWE flow with Wagmi
- Using Sub Accounts: Implement Base Account Sub Accounts using Wagmi
- Accept Payments: Add one-tap USDC payments to your app with the pay() helper and Base Pay Button.
- Accept Recurring Payments: Enable subscription-based revenue models with automatic USDC payments
- Authenticate Users: Let a user click “Sign in with Base,” prove ownership of their onchain account, and give your server everything it needs to create a session – using open standards and no passwords
- Migrate from Coinbase Wallet SDK: A guide to migrating from the Coinbase Wallet SDK to the Base Account SDK
- Sign and Verify Typed Data: EIP-712 structured data signing and verification for Base Account
- Transaction Simulation Data
- Popup Tips
- Verify Social Accounts: Use Base Verify to let users prove ownership of verified accounts (X, Coinbase, Instagram, TikTok) without sharing credentials, enabling Sybil-resistant airdrops, gated content, and identity-based rewards.
- Batch Transactions
- Use Spend Permissions: Learn how to use Spend Permissions to allow a trusted spender to spend user assets
- Pay Gas in ERC20 tokens: Base Account enables users to pay for gas in ERC20 tokens
- Sponsor Gas: Use Paymasters to sponsor your users' transactions
- Use Sub Accounts: Learn how to create and use Sub Accounts using Base Account SDK
- Base Gasless Campaign
- Telemetry · Base Account: Understanding Base Account's anonymous telemetry system and how to configure it.
- Gas Usage
- Popup Tips
- Transaction Simulation Data
- Unsupported Calls
- Wallet Library Support
- Base Account Overview: What is a Base Account and how the Base Account SDK lets you add universal sign-in and one-tap USDC payments to any app.
- AI Tools for Base Account Developers
- Mobile (React Native)
- Web (HTML + JS): Integrate Sign in with Base and Base Pay using nothing but HTML and JavaScript.
- Web (Next.js): Quickly add Sign in with Base and Base Pay to any Next.js app
- subscription.charge: Execute subscription charges from your backend using CDP server wallets
- subscription.getOrCreateSubscriptionOwnerWallet: Create or retrieve a CDP smart wallet to act as subscription owner
- getPaymentStatus: Check the status of a payment transaction
- subscription.getStatus: Check the status and details of an existing subscription
- pay: Send USDC payments on the Base network
- subscription.prepareCharge: Prepare transaction calls to charge a subscription (advanced)
- subscription.prepareRevoke: Prepare transaction calls to revoke a subscription (advanced)
- subscription.revoke: Revoke subscriptions from your backend using CDP server wallets
- subscription.subscribe: Create USDC subscriptions with spend permissions on Base network
- Subscriptions Overview: Accept recurring USDC payments using spend permissions on Base
- atomic: Ensures batched transactions are executed atomically and contiguously
- auxiliaryFunds: Indicates wallet access to funds beyond on-chain balance verification
- dataCallback: Base Account allows you to collect personal information like email addresses, physical addresses, phone numbers, and names during transactions.
- dataSuffix: Append arbitrary data to transaction calldata for attribution tracking
- flowControl: Control transaction batch behavior after failed or reverted calls
- gasLimitOverride: Override gas limits for individual calls in a wallet_sendCalls batch
- paymasterService: Enable sponsored transactions using ERC-4337 paymaster web services
- signInWithEthereum: Enable secure authentication using the Sign-In With Ethereum (SIWE) standard
- createBaseAccountSDK: Create a Base Account SDK instance with EIP-1193 compliant provider
- generateKeyPair: Generate a new P256 key pair for use with Base Account
- getCryptoKeyAccount: Retrieve the current crypto key account associated with the user's session
- getKeypair: Retrieve an existing P256 key pair from storage
- getProvider: Get an Ethereum provider instance from the Base Account SDK
- coinbase_fetchPermission: Retrieve a single permission by its hash
- coinbase_fetchPermissions: Retrieve permissions for a specific spender and chain, optionally filtered by account
- eth_accounts: Returns a list of addresses owned by the connected wallet without prompting user authorization
- eth_blockNumber: Get the number of the most recent block
- eth_chainId: Get the currently configured chain ID
- eth_coinbase: Get the client coinbase address
- eth_estimateGas: Estimate gas needed for a transaction
- eth_feeHistory: Get historical gas fee information for a range of blocks
- eth_gasPrice: Get the current gas price
- eth_getBalance: Get the balance of an account at a given block
- eth_getBlockByHash: Get information about a block by block hash
- eth_getBlockByNumber: Get information about a block by block number
- eth_getBlockTransactionCountByHash: Get the number of transactions in a block by block hash
- eth_getBlockTransactionCountByNumber: Get the number of transactions in a block by block number
- eth_getCode: Get the bytecode at a given address
- eth_getLogs: Get an array of all logs matching a given filter object
- eth_getProof: Get the Merkle proof for account and storage values
- eth_getStorageAt: Get the value from a storage position at a given address
- eth_getTransactionByBlockHashAndIndex: Get a transaction by block hash and transaction index position
- eth_getTransactionByBlockNumberAndIndex: Get a transaction by block number and transaction index position
- eth_getTransactionByHash: Get transaction details by transaction hash
- eth_getTransactionCount: Get the number of transactions sent from an address
- eth_getTransactionReceipt: Get the receipt of a transaction by transaction hash
- eth_getUncleCountByBlockHash: Get the number of uncles in a block by block hash
- eth_getUncleCountByBlockNumber: Get the number of uncles in a block by block number
- eth_requestAccounts: Request account access and authorization from the user
- eth_sendRawTransaction: Submit a signed transaction to the network
- eth_sendTransaction: Create and send a new transaction or message call
- eth_signTypedData_v4: Sign structured data according to EIP-712
- personal_sign: Sign data using a specific account with Ethereum-specific signature format
- Overview
- SDK Overview
- Standard RPC Methods: Standard Ethereum RPC methods supported by Base Account
- wallet_addEthereumChain: Add a new Ethereum chain to the wallet
- wallet_addSubAccount: Add a sub account to the wallet
- wallet_connect: Connect wallet and request account access
- wallet_getCallsStatus: Get the status of a call batch sent via wallet_sendCalls
- wallet_getCapabilities: Get the wallet's supported capabilities for the given account
- wallet_getSubAccounts: Fetch the sub accounts of the wallet
- wallet_sendCalls: Submit a batch of calls to the wallet for execution
- wallet_switchEthereumChain: Switch the wallet to a different Ethereum chain
- wallet_watchAsset: Add a token to the wallet's asset watchlist
- web3_clientVersion: Get the current client version
- SDK Utilities: Core utility functions for key management and account access
- Basenames: Decentralized naming system that allows users to register human-readable names (like 'alice.base.eth') on Base.
- Smart Wallet: ERC-4337 compliant smart contract wallet that serves as the foundation for Base Account.
- Spend Permissions
- createProlinkUrl: Create a link with a prolink query parameter
- decodeProlink: Decode a prolink payload back to a JSON-RPC request
- encodeProlink: Encode a JSON-RPC request into a compressed, URL-safe prolink payload
- fetchPermission: Retrieve a single Spend Permission by its hash
- fetchPermissions: Retrieve available Spend Permissions for an account and chain, optionally filtered by spender
- getPermissionStatus: Gets the current status of a Spend Permission
- prepareRevokeCallData: Construct calldata so your app's spender can revoke a Spend Permission without user interaction
- prepareSpendCallData: Prepare calldata to approve (if needed) and spend using a Spend Permission
- requestRevoke: Request the user's approval to revoke a Spend Permission
- requestSpendPermission: Create and sign an EIP-712 Spend Permission for a user's Base Account
- BasePayButton: Pre-built React component for accepting payments with Base Account
- Brand Guidelines: Design and brand guidelines for Sign in With Base and Base Pay buttons
- SignInWithBaseButton: Pre-built React component for user authentication with Base Account
AI Agents
- Guides: Step-by-step guides for common things to do with Base MCP
- Base MCP: Give your AI assistant a wallet. Base MCP connects any AI to your Base Account — check balances, send funds, swap tokens, sign messages, and pay x402 APIs.
- Overview: How the Base MCP Skill works and how plugins extend it
- Overview: Plugins authored by the Base team that ship with the Base MCP skill
- Execute Contract Calls: Batch multiple contract interactions into a single user approval using send_calls and Base MCP
- Check Balance & Portfolio: View your token balances, portfolio value, and wallet details using Base MCP
- Send Tokens: Send native tokens or ERC-20 tokens to an address, ENS name, basename, or cb.id using Base MCP
- Sign Messages: Sign EIP-712 typed data and plain messages with your Base Account using Base MCP
- Swap Tokens: Swap between tokens on supported mainnet chains using Base MCP
- View Transaction History: Browse past transactions, filter by asset, and paginate through your onchain history using Base MCP
- Make x402 Payments: Pay for x402-enabled API requests with USDC using Base MCP
- Custom Plugins: Build your own plugin that produces unsigned calldata and executes through Base MCP's send_calls
- Aerodrome: Token swaps and basic-pool liquidity on Aerodrome (the leading DEX on Base) via sugar-sdk + Base MCP. CLI-only.
- Avantis: Perpetual futures on Base via the Avantis tx-builder. CLI-only.
- Bankr: Discover the latest token launches on Base via the Bankr API and buy them with Base MCP's swap tool.
- Moonwell: Compound v2 lending on Base and Optimism via the Moonwell HTTP API
- Morpho: Lending and vaults on Base via Morpho CLI, with Morpho MCP fallback for chat-only surfaces.
- Uniswap: Token swaps and V2/V3/V4 LP positions on Base via the Uniswap trade and liquidity APIs
- Virtuals: Create and operate Virtuals (ACP) AI agents — payment cards, email identities, agent management — signed in via Base MCP.
- Get Started with Base MCP: Connect Base MCP to your agent in under 2 minutes
- Aerodrome Plugin: Skill plugin reference for building unsigned Aerodrome calldata with the Sugar SDK CLI and submitting it through Base MCP send_calls.
- Avantis Plugin: Skill plugin reference for trading perpetual futures on Avantis from CLI harnesses through Base MCP.
- Bankr Plugin: Skill plugin reference for discovering the latest token launches on Base via the Bankr API and buying them with Base MCP's swap tool.
- Moonwell Plugin: Skill plugin reference for lending on Moonwell through Base MCP.
- Morpho Plugin: Skill plugin reference for lending on Morpho with Morpho CLI when available, or Morpho MCP on chat-only surfaces.
- Uniswap Plugin: Skill plugin reference for swapping and LPing on Uniswap through Base MCP.
- Virtuals Plugin: Skill plugin reference for creating and operating Virtuals (ACP) AI agents through the Virtuals MCP, signed in via Base MCP.
- Approval Mode: Skill reference for how Base MCP returns approval URLs and request IDs for every write call.
- Batched Contract Calls: Skill reference for Base MCP's EIP-5792 batched contract calls.
- Custom Plugins and the web_request Allowlist: Skill reference for how Base MCP routes plugin HTTP calls and which surfaces are allowlisted.
- Installing Base MCP: Skill reference for installing the Base MCP server in Claude, ChatGPT, Cursor, Codex, and other surfaces.
- Tone: Skill reference for the language and tone rules an agent should follow when using Base MCP.
- Base MCP Skill: Base MCP — gives your AI assistant access to a Base Account via the Base MCP server (mcp.base.org). Wallet, portfolio, sending, swapping, signing, x402 payments, batched contract calls, and transaction history across supported chains.
Apps
- Build an app on Base: A step-by-step guide to building a Next.js tally app on Base using wagmi and viem, with wallet connection, contract reads and writes, and batch transaction support.
- Builder Codes for Agent Developers: Attribute your AI agent's onchain transactions to your identity on Base and unlock analytics and leaderboard features.
- Builder Codes for App Developers: Integrate Builder Codes into your app using Wagmi or Viem to attribute onchain activity.
- Base Builder Codes: Attribute onchain activity to your app, wallet or agent with Builder Codes.
- Builder Codes for Wallet Developers: Implement the dataSuffix capability in your wallet to enable Builder Code attribution.
- Rewards: Earn financial incentives for building high-quality Apps that drive user engagement and onchain transactions
- Migrate to a Standard Web App: Migrate your Farcaster mini-app to work in the Base App. Covers replacing deprecated SDK methods, and registering on Base.dev.
- Build an app on Base: A step-by-step guide to building a Next.js tally app on Base using wagmi and viem, with wallet connection, contract reads and writes, and batch transaction support.
- Add notifications: Send in-app notifications to your app's users through the Base Dashboard REST API.
Optional
- Base MCP server: Direct AI access to Base documentation
- Base skills: Installable agent skills (
npx skills add base/base-skills) - Full context (llms-full.txt): Same index plus cross-cutting concept guides
Automate transactions like real-time eligibility checks and claims processing with developer-friendly, JSON-based APIs that support thousands of payers.
Primev is building mev-commit, a credible commitment network for mev actors.
Dynamic offers a suite of tools for effortless log in, wallet creation and user management. Designed for users. Built for developers.
Mesh enables safer, easier crypto transfers and payments from 300+ leading exchanges and wallets, all without leaving your platform
Earn revenue today without delaying your roadmap. Payment processing for SaaS by SaaS.
FlowX.AI is redefining banking modernization with the first-ever unified, open, AI platform built to free banks from restrictive point solutions.
Markets, illuminated — World's largest provider of trading indicators for every market from stocks, crypto, and forex.