elysium-chain-mcp
MCP server that reads Elysium blocks, balances and contracts; signing is switched on by a flag and accepts the testnet only.
- 148 ★ on the repository
- Last commit
Broad access
Why this level
- Enabled writes sign and send transactions with the key from `ELYSIUM_PRIVATE_KEY`, and an agent can pass `dry_run: false` itself.
- The key stays in the client configuration, and explorer text and on-chain names can steer the agent.
- Limits and the address list apply to the top-level transaction: `transfer` or `approve` on an allowed token can go to any address.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/elysium-chain-mcpDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Enabled writes sign and send transactions with the key from `ELYSIUM_PRIVATE_KEY`, and an agent can pass `dry_run: false` itself.
- The key stays in the client configuration, and explorer text and on-chain names can steer the agent.
- Limits and the address list apply to the top-level transaction: `transfer` or `approve` on an allowed token can go to any address.
This is third-party code. Review the repository files before installing.
What it does
elysium-chain-mcp is an MCP server for Elysium, Kinetiq's Arbitrum Orbit L2 for Hyperliquid. Eight read tools are always available: chain status, blocks, transactions with receipts, HYPE and ERC-20 balances, token data, `view` function calls, event logs and call simulation without a signature. Seven more block explorer tools appear when `EXPLORER_API_URL` is set. Two write tools, `send_native` and `write_contract`, register only when `ENABLE_WRITES=true` and accept exclusively testnet chain ID `99801`. They default to `dry_run: true`: they simulate the transaction and return it unsigned.
Who it is for. Developers and contract researchers on Elysium who let an agent read the chain and try transactions on the testnet.
Good fit when
- An agent breaks down a transaction by hash: receipt, fee, decoded call and logs.
- You check the HYPE balance and up to 20 ERC-20 tokens for an address.
- Before sending, you simulate a contract call with `simulate_call` and look at the gas estimate.
- You debug your own contract on the testnet: a function call goes out under amount and fee limits.
Not a fit when
- You plan to put a key holding real funds in `ELYSIUM_PRIVATE_KEY`: writes accept only `99801`, but the key stays in the client configuration.
- You need operations on the Elysium mainnet: writes are disabled there.
- You plan to restrict token contracts with an address list: an allowed contract can still be called with `transfer` or `approve` to any address.
- Explorer text is treated as trusted: third parties write it and it can try to steer the agent.
Example request
Show the Elysium chain status and the HYPE balance for an address, then simulate sending 0.001 HYPE without signing.MCP
- Transport
- stdio, http
- Authentication
- not required
Environment variables
ELYSIUM_RPC_URLrequired- JSON-RPC endpoint of an Elysium node.
ELYSIUM_CHAIN_IDrequired- Chain ID the node must serve; 99801 for the testnet.
EXPLORER_API_URL- Explorer API base; enables the seven explorer tools.
ENABLE_WRITES- Registers `send_native` and `write_contract`; false by default.
ELYSIUM_PRIVATE_KEYsecret- 32-byte key of a testnet account, required when writes are enabled.
MAX_SEND_HYPE- Most HYPE per transaction, 0.01 by default.
MAX_FEE_HYPE- Most HYPE spent on fees per transaction, 0.001 by default.
WRITE_ALLOWLIST- Comma-separated destination addresses; any address by default.
MCP_HTTP_TOKENsecret- Bearer token of at least 16 characters for HTTP mode off loopback and with writes.
Limitations
Version 0.1.1, an unofficial community project with no affiliation to Kinetiq or Hyperliquid. Requires Node.js 20 or newer. The explorer API is undocumented and indexed balances can lag; RPC is the source of truth. A `pending` or `SEND_STATUS_UNKNOWN` status means the transaction may already be in the node: look it up by hash with `get_transaction` before resending. Writes over HTTP need `MCP_HTTP_TOKEN`.
How to disable. Remove the `elysium` entry from `mcpServers` and stop any self-hosted HTTP process. If you set `ELYSIUM_PRIVATE_KEY`, delete the key from the client configuration: it stays there after launch.
FAQ
Can the server send transactions on mainnet?
No. Write tools register only when `ENABLE_WRITES=true` and accept only chain ID `99801`, the testnet.
What checks does a write pass before signing?
The destination against `WRITE_ALLOWLIST` when set and the `MAX_SEND_HYPE` limit (0.01 by default), the node chain ID, a successful `eth_call`, the `MAX_FEE_HYPE` fee cap (0.001 by default) and a sufficient balance.
Can an agent bypass dry_run?
Yes: `dry_run` defaults to true, but the agent can pass false itself. Keep tool-call approval on in the client for `send_native` and `write_contract`.
How do I connect the server to Cursor?
Add an `mcpServers` object to `mcp.json` with the command `npx -y elysium-chain-mcp` and the `ELYSIUM_RPC_URL` and `ELYSIUM_CHAIN_ID` variables from the README.
Which read tools are there?
`get_chain_status`, `get_block`, `get_transaction`, `get_balance`, `get_token_info`, `read_contract`, `get_logs` and `simulate_call`. Inputs and outputs are in `docs/TOOLS.md`.
Discussion
No questions or reviews yet.
Related
MCP serversAn MCP server for EVM networks: an agent reads blocks, balances and contracts, fetches ABIs from Etherscan and signs transactions with a key
The official CCXT MCP server and skills: market data, balances and opt-in trading across crypto exchanges and prediction markets
The official Bybit exchange MCP server: market data, accounts, orders, bots and WebSocket streams from Claude, Cursor and VS Code
Vybe's remote MCP server for Solana data: browse the API schema and make live calls to on-chain and market analytics
Invoices, acts and UPD in Elba from an agent chat, public document links for clients and a summary of unpaid bills
An MCP server that lets an agent operate a testnet Bitcoin wallet on the Bitcoin-IPC testnet: deposits, payments, balance checks
README in short
The repository holds TypeScript sources, documentation for setup, tools, the explorer and writes, and unit and integration tests. Write limits have their own section with the list of checks.