Skip to main content
Glama

Seitrace Insights MCP Server

Official
by Seitrace

Seitrace MCP

The essential MCP (Model Context Protocol) server for the Sei blockchain.

Available tools 🧰

Five tools that form the resource-based interface (use in order 1→2→3→4):

  • list_resources — list available resources (start here)

  • list_resource_actions — list actions for a resource

  • get_resource_action_schemaREQUIRED get the JSON Schema for an action before invoking

  • invoke_resource_action — invoke an action with payload matching the schema

  • get_resource_action_snippet — (optional) generate a code snippet to perform a resource action in the specified language

Supported resources

General

  • general_faucet - enable requesting faucet for developers

  • general_rpc_lcd - enable general rpc/lcd inquiries for the agents, and execute the rpc/lcd requests based on the demands

  • general_associations — query hybrid associations (EOA/assets/txs) across EVM and native Sei. Returns simplified pointer/pointee fields when applicable.

Insights

  • insights_address — Query address data: details, transactions, token transfers.

  • insights_erc20 — Query ERC-20 tokens: info, balances, transfers, holders.

  • insights_cw20 — Query CW20 tokens: info, balances, transfers, holders.

  • insights_native — Query native tokens: info, transfers, balances, holders.

  • insights_ics20 — Query ICS20 tokens: info, transfers, balances, holders.

  • insights_erc721 — Query ERC-721 tokens: info, holders, instances, balances, transfers.

  • insights_erc1155 — Query ERC-1155 tokens: info, holders, instances, balances, transfers.

  • insights_cw721 — Query CW721 tokens: info, instances, balances, holders, transfers.

  • insights_smart_contract — Query smart contract details.

  • insights_assets — Search official assets by name/symbol/identifier and get asset details by identifier. Uses Sei gateway endpoints; search is performed offline over the fetched assets list.

  • insights_earnings — Search/list earnings pools (APR/APY) for pacific-1 and fetch a pool by address. Returns simplified fields: name, address, url, image, provider, tvl, apr, apy.

  • insights_transactions — Query transaction details by hash via gateway (pacific-1, atlantic-2, arctic-1).

Smart Contract

  • smart_contract — Query smart contract state via Multicall3, search verified contracts, or download smart contract ABI from Seitrace (pacific-1, atlantic-2, arctic-1).

Related MCP server: MCP Etherscan Server

Getting started

Make sure you obtain an API Key for free here

Check installation guide

Highlights ✨

What MCP provides to end users and assistants:

  • Natural‑language access to Seitrace insights. The assistant performs API calls on your behalf.

  • Self‑describing tool flow: enumerate actions, retrieve the input schema, then invoke.

  • Input validation and clear error messages using per‑action JSON Schemas.

  • Concise discovery: minimal list output; detailed payloads only when invoking actions.

  • Integration with MCP‑enabled VS Code extensions (e.g., Continue, Cline).

  • Simple, secure API key handling via environment variables (sent as x-api-key).

  • Quick start via npx: npx -y @seitrace/mcp.

Typical Flow 🔁

Using the MCP SDK, drive the resource-based flow via the five tools. Important: Always follow this sequence, especially step 3:

// 1) Discover available resources const resources = await client.callTool({ name: 'list_resouces', arguments: {} }); // -> { resources: ['erc20', 'erc721', 'native', ...] } // 2) List actions for a resource const actions = await client.callTool({ name: 'list_resouce_actions', arguments: { resource: 'insights_erc20' }, }); // -> { resource: 'erc20', actions: [{ name, description }, ...] } // 3) **REQUIRED** Get the JSON Schema for a specific action // This step is critical - parameter names in descriptions may differ from actual schema const schema = await client.callTool({ name: 'get_resource_action_schema', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info' }, }); // -> { resource: 'insights_erc20', action: 'get_erc20_token_info', schema } // The schema reveals exact parameter names like "q" instead of "query", "chain" instead of "chain_id", etc. // 4) Invoke the action with payload matching the schema structure const res = await client.callTool({ name: 'invoke_resource_action', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info', payload: { chain: 'pacific-1', contract_address: '0x...' }, }, }); // res.content[0].text -> "API Response (Status: 200):\n{ ... }" // 5) Optionally, generate a code snippet for an action const snippet = await client.callTool({ name: 'get_resource_action_snippet', arguments: { resource: 'insights_erc20', action: 'get_erc20_token_info', language: 'node' }, }); // -> { resource, action, language, snippet }

The server validates payload against the action’s schema and returns a pretty-printed JSON body when applicable.

Requirements 🔧

  • Node.js 20+

  • A Seitrace Insights API key (optional for discovery, required for most live calls), obtain it here

Install 📦

npm install

Configure 🔐

Copy .env.example to .env and set your values as needed.

Environment variables:

  • API_BASE_URL (optional) — defaults to https://seitrace.com/insights

  • SECRET_APIKEY — Seitrace API key; used to set header x-api-key

Build and Run 🏃

# Type-check and compile to build/ npm run build # Run the MCP server over stdio (used by MCP clients) npm start

This server is designed to be launched by an MCP-compatible client (e.g., via a command/args configuration). It communicates over stdio.

End-to-End Test ✅

Run the E2E to verify the root resource flow and (optionally) a live positive-call:

# Optionally provide your API key so the positive path runs SEITRACE_API_KEY=your_key_here npm run test:e2e

Troubleshooting 🛠️

Make sure you run our e2e test to see the common errors we covered.

  • E2E: npm run test:e2e (optional E2E_DEBUG=1 for [E2E] logs).

  • Node: Use v20+.

Contributing 🤝

  • Keep tools/list output compact. Do not embed per-action details there—fetch them via getResourceActionSchema.

  • New endpoints should appear under the correct resource; root tool methods should provide discovery and invocation consistently.

  • Prefer small, focused modules in src/lib/ for shared logic.

License 📄

See LICENSE

Support 📨

Please shoot emails to dev@cavies.xyz

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Seitrace/seitrace-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server