Arbitrum MCP Server
Provides comprehensive monitoring and interaction capabilities for Arbitrum chains, including chain health monitoring, batch posting status, assertion tracking, gas price monitoring, node operations, and account management across Arbitrum One, Nova, and Orbit chains.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Arbitrum MCP Server what's the current status of Arbitrum One?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Arbitrum MCP Server
A Model Context Protocol (MCP) server for interfacing with Arbitrum Nitro nodes and chains in natural language. Monitor chain health, batch posting, assertions, and gas prices across all Arbitrum networks including core chains (Arbitrum One, Nova) and Orbit chains.
Demo

Monitor Arbitrum chains with natural language queries through any MCP-compatible client
Related MCP server: EVM MCP Server
Features
Core Monitoring Tools
Comprehensive Chain Status - Complete health overview for any Arbitrum chain
Batch Posting Monitoring - Track sequencer batch delivery and backlog
Assertion Monitoring - Monitor NodeCreated vs NodeConfirmed events
Gas Price Monitoring - Track current gas prices and detect spikes
ArbOS Version Detection - Get current ArbOS version for any chain
Chain Support
Core Arbitrum Chains - Arbitrum One, Arbitrum Nova
Orbit Chains - All public Orbit chains (Xai, Superposition, etc.)
Auto-Resolution - Contract addresses resolved automatically from chain names
Arbitrum Node APIs
Health checks and sync status
Transaction tracing (arbtrace_*)
Debug and validation APIs
Maintenance operations
Timeboost express lanes
Usage Examples
"What is the current status of Xai?"
comprehensive_chain_status --chainName "Xai""Are batches being posted for Arbitrum One?"
batch_posting_status --chainName "Arbitrum One""Check gas prices on Nova"
gas_status --chainName "Nova"Available Tools
Monitoring Tools
comprehensive_chain_status- Complete chain health overviewbatch_posting_status- Batch posting monitoringassertion_status- Assertion creation/confirmation trackinggas_status- Current gas price information
Chain Information
list_chains- Show all available Arbitrum chainssearch_chains- Find chains by name or IDchain_info- Get detailed chain informationarbos_version- Get ArbOS version for any chain
Node Operations
node_health- Check node health statussync_status- Get synchronization statuslatest_block- Get latest block information
Account Operations
get_balance/get_balance_ether- Check account balancesget_transaction/get_transaction_receipt- Transaction detailsis_contract- Check if address is a contract
Key Benefits
Comprehensive Monitoring - Complete chain health overview in one query
Multi-Chain Support - Consistent interface across all Arbitrum chains
Natural Language Interface - Query blockchain data using plain English
Real-Time Data - Live blockchain data with automatic chain discovery
Troubleshooting Ready - Quick health checks for issue diagnosis
Gas & Performance Tracking - Monitor network congestion and costs
Setup & Installation
Docker (Recommended)
The easiest way to run the MCP server with maximum client compatibility:
# Run directly from Docker Hub (no build required!)
docker run -i --rm dewanshparashar/arbitrum-mcpDirect Node.js
# Install dependencies
npm install
# Build
npm run build
# Run
npm startMCP Client Configuration
Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"arbitrum-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "dewanshparashar/arbitrum-mcp"]
}
}
}Cline/Claude Code
{
"mcpServers": {
"arbitrum-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "dewanshparashar/arbitrum-mcp"]
}
}
}Development
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Development mode with watch
npm run devDocker
See DOCKER.md for detailed Docker setup instructions.
⚠️ Important: When using Docker containers to connect to local testnodes, use http://host.docker.internal:8547 instead of http://127.0.0.1:8547 for the RPC URL.
Technology Stack
TypeScript - Type-safe development
Viem - Ethereum client for blockchain interactions
@arbitrum/sdk - Official Arbitrum SDK for core chain data
MCP SDK - Model Context Protocol implementation
Docker - Containerized deployment
Contributing
Fork the repository
Create a feature branch
Add tests for new functionality
Submit a pull request
License
MIT License - see LICENSE file for details.
Available Tools
38 toolsarb_check_publisher_healthA
Check the health status of the transaction publisher/sequencer (requires admin API)
Inputs: rpcUrl, chainName.
arbdebug_validateMessageNumberC
Validate a specific message number (requires debug API)
Inputs: msgNum (required), rpcUrl, chainName, full, +1 more.
arbdebug_validationInputsAtC
Get validation inputs at a specific message (requires debug API)
Inputs: msgNum (required), rpcUrl, chainName, target.
arb_get_raw_block_metadataC
Retrieve raw block metadata for specified block ranges (requires admin API)
Inputs: fromBlock (required), rpcUrl, chainName, toBlock.
arb_latest_validatedC
Get the latest validated global state information (requires admin API)
Inputs: rpcUrl, chainName.
arbos_versionA
Get the ArbOS version number for any Arbitrum chain. Use this for questions like 'what ArbOS version is Xai running?', 'ArbOS version of Arbitrum One', 'what version of ArbOS', or 'check ArbOS version'. Supports chain names like 'Xai', 'Arbitrum One', 'Nova', etc.
Inputs: rpcUrl, chainName.
arbtrace_blockB
Get trace information for all transactions in a block (requires trace API)
Inputs: blockNumOrHash (required), rpcUrl, chainName.
arbtrace_callB
Trace individual calls with specified trace types (requires trace API)
Inputs: callArgs (required), rpcUrl, chainName, traceTypes, +1 more.
arbtrace_callManyB
Trace multiple calls in batch for efficiency (requires trace API)
Inputs: calls (required), rpcUrl, chainName, blockNumOrHash.
arbtrace_filterC
Filter traces based on specified criteria (requires trace API)
Inputs: filter (required), rpcUrl, chainName.
arbtrace_getC
Get specific trace data at a given path within a transaction (requires trace API)
Inputs: txHash (required), rpcUrl, chainName, path.
arbtrace_replayBlockTransactionsB
Replay and trace all transactions in a specific block (requires trace API)
Inputs: blockNumOrHash (required), rpcUrl, chainName, traceTypes.
arbtrace_replayTransactionC
Replay and trace a specific transaction (requires trace API)
Inputs: txHash (required), rpcUrl, chainName, traceTypes.
arbtrace_transactionB
Get trace information for a specific transaction (requires trace API)
Inputs: txHash (required), rpcUrl, chainName.
assertion_statusB
Monitor assertion creation and confirmation activity. Tracks NodeCreated vs NodeConfirmed events to understand rollup validation status. Critical for PM and support teams to monitor chain security and finality.
Inputs: parentRpcUrl (required), rollupAddress (required), rpcUrl, chainName.
auctioneer_submitAuctionResolutionTransactionC
Submit auction resolution transactions for express lane functionality (requires auctioneer API)
Inputs: transaction (required), rpcUrl, chainName.
batch_posting_statusB
Monitor batch posting activity. Tracks when batches were last posted to the sequencer inbox and current backlog size. Essential for PM and support teams to understand chain data availability status.
Inputs: parentRpcUrl (required), sequencerInboxAddress (required), bridgeAddress (required), rpcUrl, +1 more.
chain_infoA
Get comprehensive chain information including rollup contract address, bridge addresses, chain ID, RPC URL, explorer URL, native token details, and all bridge contract addresses. Use this for questions about rollup addresses, bridge contracts, chain IDs, or any chain-specific data for Arbitrum chains like Xai, Arbitrum One, etc.
Inputs: chainName (required).
clear_rpc_urlB
Clear the default RPC URL
Inputs: no named parameters.
comprehensive_chain_statusA
Get comprehensive chain status including ArbOS version, batch posting, assertion monitoring, and gas prices. Perfect for PM and support teams asking 'what is the current status of XAI?' or similar comprehensive status checks. Auto-resolves contract addresses from chain name when possible.
Inputs: rpcUrl, chainName, parentRpcUrl, sequencerInboxAddress, +2 more.
gas_statusB
Monitor current gas prices on the chain. Essential for identifying gas price spikes and understanding transaction costs. Useful for PM and support teams to monitor network congestion.
Inputs: rpcUrl, chainName.
get_balanceC
Get balance of an address in wei
Inputs: address (required), rpcUrl.
get_balance_etherC
Get balance of an address in ETH
Inputs: address (required), rpcUrl.
get_rollup_addressA
Get the rollup contract address for a specific Arbitrum chain. Use this for direct rollup address queries like 'what's the rollup address of Xai?', 'Xai rollup contract', or 'rollup address for Arbitrum One'.
Inputs: chainName (required).
get_rpc_urlB
Get the current default RPC URL
Inputs: no named parameters.
get_transactionC
Get transaction details by hash
Inputs: txHash (required), rpcUrl.
get_transaction_receiptC
Get transaction receipt by hash
Inputs: txHash (required), rpcUrl.
is_contractC
Check if an address is a contract
Inputs: address (required), rpcUrl.
latest_blockC
Get the latest block information
Inputs: rpcUrl.
list_chainsA
List all available Arbitrum Orbit chains and their names. Use this to see what chains are available for querying.
Inputs: no named parameters.
maintenance_statusB
Check maintenance status - seconds since last maintenance (requires admin API)
Inputs: rpcUrl, chainName.
maintenance_triggerC
Manually trigger maintenance operations (requires admin API)
Inputs: rpcUrl, chainName.
node_healthA
Check Arbitrum node health status (requires admin API access - may not work with public RPCs)
Inputs: rpcUrl, chainName.
node_peersA
Get connected peers information (requires admin API access - will not work with public RPCs)
Inputs: rpcUrl.
search_chainsA
Search for Arbitrum chains by name, chain ID, or partial name match. Perfect for finding chains when you have incomplete information.
Inputs: query (required).
set_rpc_urlC
Set the default RPC URL for subsequent requests
Inputs: rpcUrl (required).
sync_statusA
Get node synchronization status (may fall back to current block number if sync API unavailable)
Inputs: rpcUrl.
timeboost_sendExpressLaneTransactionB
Submit priority transactions through express lanes for faster processing (requires timeboost API)
Inputs: submission (required), rpcUrl, chainName.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 38 tools
The tools are organized into clear functional groups (e.g., arbdebug_, arbtrace_, chain management, RPC utilities), which helps with differentiation, but there is significant overlap within groups, such as multiple arbtrace_ tools for tracing transactions and blocks with subtle distinctions that could confuse agents. Some tools like 'assertion_status' and 'batch_posting_status' have similar monitoring purposes, adding to potential ambiguity.
Most tools follow a consistent snake_case naming convention with descriptive prefixes (e.g., arb_, arbtrace_, get_, set_), but there are minor deviations like 'arbos_version' lacking an underscore and mixed verb styles (e.g., 'clear_rpc_url' vs. 'set_rpc_url' vs. 'get_rpc_url' are consistent, but others like 'timeboost_sendExpressLaneTransaction' use camelCase inconsistently). Overall, the naming is predictable but not perfectly uniform.
With 38 tools, the count is excessive for a single server, likely overwhelming for agents and leading to confusion. While the domain (Arbitrum chain management and debugging) is broad, the tools could be consolidated (e.g., multiple tracing tools) to reduce redundancy. This high number feels heavy and unoptimized for typical agent workflows.
The tool set provides comprehensive coverage for the Arbitrum domain, including chain information, debugging, tracing, monitoring, RPC management, and transaction handling. It supports CRUD-like operations (e.g., get/set RPC URLs, retrieve balances/transactions) and lifecycle actions (e.g., trigger maintenance, submit transactions), with no obvious gaps for the stated purpose of managing and querying Arbitrum chains.
Maintenance
Related MCP Connectors
ArbitrumOracle - 12 Arbitrum tools: ERC-20, Camelot, GMX, sequencer, gas, bridge txs.
Manage your blockchain infrastructure across 80+ chains with your agents.
AI Agent Utility Layer for agent safety, web monitoring, crypto research and tool discovery.
ChainRay provides multi-chain blockchain data and intelligence for AI agents through 79 MCP tools across 57 supported networks, covering gas, chain data, wallets, DeFi, market, security, monitoring, and verifiable proofs. MCP access is available at https://mcp.chainray.online/mcp; paid HTTP capabilities settle via x402 on Base.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to monitor and analyze blockchain activity through Tenderly's infrastructure and direct EVM RPC calls. Provides comprehensive alert management, transaction simulation, and multi-chain querying capabilities for blockchain debugging and monitoring.MIT
- AlicenseAqualityCmaintenanceProvides comprehensive access to Ethereum Virtual Machine (EVM) JSON-RPC methods for querying blockchain data, executing smart contract calls, and interacting with any EVM-compatible network including Ethereum, Polygon, Arbitrum, and more. Enables users to check balances, analyze transactions, estimate gas, retrieve logs, and perform blockchain operations through natural language.198 npm3MIT
- FlicenseNot gradedqualityDmaintenanceProvides tools for querying onchain data across 12+ blockchain networks, including token balances, transaction analysis, and smart contract security auditing. It enables users to interact with multiple EVM-compatible chains and perform deep contract evaluations through natural language interfaces.1-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to query on-chain data across EVM chains like Base, Optimism, Avalanche, Celo, and Arbitrum, including balances, transactions, gas, and smart contract interactions.48 npmMIT