MetaMask MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| callB | Executing a new message call immediately without submitting a transaction to the network. |
| get-chain-listB | Get a list of all chains information. |
| get-connect-uriB | Get the connect URI to connect to a MetaMask wallet. |
| show-connect-qrcodeC | Show the connect QR code for a given connect URI. |
| deploy-contractC | Deploy a contract to the network, given bytecode, and constructor arguments. |
| disconnectC | Disconnect the wallet. |
| estimate-fee-per-gasC | Estimate for the fees per gas (in wei) for a transaction to be likely included in the next block. |
| estimate-gasA | Estimate the gas necessary to complete a transaction without submitting it to the network. |
| get-accountB | Get the current account. |
| get-native-currency-balanceC | Get the native currency balance of an address. |
| get-token-balanceC | Get token balance of an address. |
| get-block-numberB | Fetch the number of the most recent block seen. |
| get-blockC | Fetch information about a block at a block number, hash or tag. |
| get-chain-idB | Get the current chain id. |
| get-chainsC | Get the configured chains. |
| get-ens-addressB | Fetch the ENS address for name. |
| get-ens-nameB | Fetch the primary ENS name for address. |
| get-tokenC | Fetch the token information. |
| get-transaction-receiptC | Fetch the Transaction Receipt given a Transaction hash. |
| get-transactionC | Fetch transaction given hash or block identifiers. |
| read-contractC | Call a read-only function on a contract, and returning the response. |
| send-transactionC | Send transactions to networks. |
| sign-messageC | Sign a message. |
| switch-chainC | Switch the target chain. |
| verify-messageA | Verify that a message was signed by the provided address. |
| wait-for-transaction-receiptC | Waits for the transaction to be included on a block, and then returns the transaction receipt. |
| wait-secondsB | Wait the given seconds. |
| write-contractC | Execute a write function on a contract. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| be-metamask-assistant | Be a MetaMask assistant |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
Most tools have distinct purposes, but some overlap exists, such as 'get-block' and 'get-block-number' which could cause minor confusion. However, descriptions clarify their differences, and the majority of tools target specific actions like contract operations, account management, and transaction handling without significant ambiguity.
Tool names follow a consistent verb-noun pattern with hyphens (e.g., 'get-account', 'send-transaction'), but there are minor deviations like 'call' and 'disconnect' that lack nouns. Overall, the naming is predictable and readable, with only a few tools breaking the pattern.
With 28 tools, the count is borderline high for a wallet integration server, potentially feeling heavy. While it covers many blockchain operations, some tools like 'wait-seconds' seem peripheral, and the set might benefit from consolidation to reduce complexity without losing core functionality.
The tool set provides comprehensive coverage for MetaMask wallet and blockchain interactions, including account management, contract operations (deploy, read, write), transaction handling, gas estimation, and network utilities. There are no obvious gaps, and it supports full CRUD-like workflows for the domain.