MCP server for Crypto APIs Prepare Transactions product. Build unsigned EVM transactions for native coin transfers, fungible token transfers, and NFT transfers.
API Version: Compatible with Crypto APIs version 2024-12-12
- Prepare native coin transfer transactions (from address)
- Prepare fungible token (ERC-20) transfer transactions
- Prepare NFT (ERC-721) transfer transactions
- Returns unsigned transaction hex ready for signing with
@cryptoapis-io/mcp-signer
- Node.js 18+
- Crypto APIs account and API key (sign up | get API key)
npm install @cryptoapis-io/mcp-prepare-transactionsOr install all Crypto APIs MCP servers: npm install @cryptoapis-io/mcp
# Run with API key
npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY
# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-prepare-transactions
# HTTP transport
npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000 --api-key YOUR_API_KEYAdd 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-prepare-transactions": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"cryptoapis-prepare-transactions": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY- Start the server in HTTP mode:
npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000 --api-key YOUR_API_KEY
- In your n8n workflow, add an AI Agent node
- Under Tools, add an MCP Client Tool and set the URL to
http://localhost:3000/mcp
All servers default to port 3000. Use
--portto assign different ports when running multiple servers.
Prepare unsigned EVM transactions.
| Action | Description |
|---|---|
prepare-transaction-from-address |
Prepare a native coin transfer from an address |
prepare-fungible-token-transfer |
Prepare an ERC-20 token transfer |
prepare-nft-transfer |
Prepare an ERC-721 NFT transfer |
| Argument | Description | Default |
|---|---|---|
--api-key |
Crypto APIs API key | CRYPTOAPIS_API_KEY env var |
--transport |
Transport type: stdio or http |
stdio |
--host |
HTTP host | 0.0.0.0 |
--port |
HTTP port | 3000 |
--path |
HTTP path | /mcp |
--stateless |
Enable stateless HTTP mode | false |
When using HTTP transport, the server supports two API key modes:
- With
--api-key: The key is used for all requests.x-api-keyrequest headers are ignored. - Without
--api-key: Each request must include anx-api-keyheader 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-prepare-transactions --transport http --port 3000
# Clients send x-api-key header with each requestStdio transport always requires an API key at startup.
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.
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.
MIT