Back to Directory/Developer Tools

io.github.CryptoAPIs-io/mcp-contracts

MCP server for smart contract ABIs and on-chain data from EVM and Solana via Crypto APIs

Developer ToolsTypeScriptv0.4.0

@cryptoapis-io/mcp-contracts

MCP server for Crypto APIs Contracts product. Get token details by contract address for EVM and Solana.

API Version: Compatible with Crypto APIs version 2024-12-12

Features

  • EVM contracts: Get token details by contract address (blockchain, network, contractAddress)
  • Solana contracts: Get token details by contract address (network, contractAddress)

Prerequisites

  1. Register at Crypto APIs
  2. Generate an API key

Installation

npm install @cryptoapis-io/mcp-contracts

Or install all Crypto APIs MCP servers: npm install @cryptoapis-io/mcp

Usage

# Run with API key
npx @cryptoapis-io/mcp-contracts --api-key YOUR_API_KEY

# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-contracts

# HTTP transport
npx @cryptoapis-io/mcp-contracts --transport http --port 3000 --api-key YOUR_API_KEY

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "cryptoapis-contracts": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-contracts"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "cryptoapis-contracts": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-contracts"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}

MCP Inspector

npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-contracts --api-key YOUR_API_KEY

n8n

  1. Start the server in HTTP mode:
    npx @cryptoapis-io/mcp-contracts --transport http --port 3000 --api-key YOUR_API_KEY
    
  2. In your n8n workflow, add an AI Agent node
  3. Under Tools, add an MCP Client Tool and set the URL to http://localhost:3000/mcp

All servers default to port 3000. Use --port to assign different ports when running multiple servers.

Available Tools

evm_contract_data

Get token details by contract address.

ActionDescription
get-token-details-by-contract-addressGet token details (name, symbol, standard, decimals, totalSupply) by contract address

Supported Blockchains: ethereum, ethereum-classic, binance-smart-chain (mainnet, mordor, testnet, sepolia)

Contract token details are currently available for Ethereum, Ethereum Classic, and BSC only.

solana_contract_data

Get Solana token details by contract address.

ActionDescription
get-token-details-by-contract-addressGet token details by contract address

Supported Networks: mainnet, devnet

CLI Arguments

ArgumentDescriptionDefault
--api-keyCrypto APIs API keyCRYPTOAPIS_API_KEY env var
--transportTransport type: stdio or httpstdio
--hostHTTP host0.0.0.0
--portHTTP port3000
--pathHTTP path/mcp
--statelessEnable stateless HTTP modefalse

HTTP API Key Modes

When using HTTP transport, the server supports two API key modes:

  • With --api-key: The key is used for all requests. x-api-key request headers are ignored.
  • Without --api-key: Each request must include an x-api-key header with a valid Crypto APIs key. This enables hosting a public server where each user provides their own key.
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-contracts --transport http --port 3000
# Clients send x-api-key header with each request

Stdio transport always requires an API key at startup.

Important: API Key Required

Warning: Making requests without a valid API key — or with an incorrect one — may result in your IP being banned from the Crypto APIs ecosystem. Always ensure a valid API key is configured before starting any server.

Remote MCP Server

Crypto APIs provides an official remote MCP server with all tools available via HTTP Streamable transport at https://ai.cryptoapis.io/mcp. Pass your API key via the x-api-key header — no installation required.

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @cryptoapis-io/mcp-contracts

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-cryptoapis-io-mcp-contracts": {
      "command": "npx",
      "args": [
        "-y",
        "@cryptoapis-io/mcp-contracts"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@cryptoapis-io/mcp-contractsnpm

Compatible MCP Clients

io.github.CryptoAPIs-io/mcp-contracts works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More