iExec MCP Server

iExec MCP Server

An MCP server that enables AI agents to interact with the iExec protocol for confidential data management, governance, and Web3Mail services. It allows users to protect sensitive information, manage access permissions, and perform blockchain wallet operations through natural language commands.

Category
Visit Server

README

iExec MCP Server

A Model Context Protocol (MCP) compatible server to interact with the iExec protocol — built for Claude, agents, and AI tooling.


1. Wallet Setup

Prerequisites:

  • Node.js (version 18 or higher)
  • npm (version 9 or higher)

Option 1: Create a new wallet with iExec

npm install -g iexec
iexec wallet create --unencrypted

Find your wallet at:

  • Linux: ~/.ethereum/keystore/wallet.json
  • macOS: ~/Library/Ethereum/keystore/wallet.json
  • Windows: %APPDATA%/Ethereum/keystore/wallet.json

Option 2: Use an existing private key

  • Create a wallet.json:
    mkdir -p ./my-wallet
    echo '{"privateKey":"0xYOUR_PRIVATE_KEY"}' > ./my-wallet/wallet.json
    
  • Or use your raw private key directly in Claude configuration.

Important: All sensitive configuration (PRIVATE_KEY_PATH or PRIVATE_KEY) is used only at the local MCP server level and is never transmitted to Claude or any other AI model. This information remains strictly confidential on your local machine.

2. Getting Started

Complete the Wallet Setup above, then choose your preferred installation method:

Method Description Best For
3. NPX Configuration Direct Claude Desktop setup Quick Claude Desktop integration
4. Claude Code CLI CLI integration setup Developers using Claude Code
5. Local Node.js Development from source Local development & debugging
6. Docker Containerized deployment Production & isolated environments
7. Cursor IDE Cursor IDE integration Developers using Cursor IDE

3. Method A: NPX Configuration for Claude Desktop

Prerequisites:

Setup Steps:

  1. Open Claude Desktop configuration:

    • Open Claude Desktop → Developer > Edit Config
  2. Add configuration to claude_desktop_config.json:

    With wallet file (from Section 1):

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "npx",
          "args": ["-y", "@iexec/mcp-server@latest"],
          "env": {
            "PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json"
          }
        }
      }
    }
    

    With direct private key:

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "npx",
          "args": ["-y", "@iexec/mcp-server@latest"],
          "env": {
            "PRIVATE_KEY": "0xYOUR_PRIVATE_KEY"
          }
        }
      }
    }
    
  3. Restart Claude Desktop - You should see a plug icon for iexec-mcp-server


4. Method B: Claude Code CLI Setup

Prerequisites:

  • Node.js (version 18 or higher)
  • npm (version 9 or higher)

Setup Steps:

  1. Install Claude Code CLI:

    npm install -g @anthropic-ai/claude-code
    
  2. Add iExec MCP server:

    With wallet file (from Section 1):

    claude mcp add iexec-mcp --env PRIVATE_KEY_PATH=/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json -- npx @iexec/mcp-server@latest iexec-mcp
    

    With direct private key:

    claude mcp add iexec-mcp --env PRIVATE_KEY=0xYOUR_PRIVATE_KEY -- npx @iexec/mcp-server@latest iexec-mcp
    
  3. Run Claude:

    claude
    

5. Method C: Local Node.js Setup

Prerequisites:

Setup Steps:

5.1. Clone, Install, and Build

git clone https://github.com/iexecBlockchainComputing/iexec-mcp-server.git
cd iexec-mcp-server
npm install
npm run build

5.2. Integrate with Claude Desktop

  1. Open Claude Desktop configuration:

    • Open Claude Desktop → Developer > Edit Config
  2. Add configuration to claude_desktop_config.json:

    With wallet file (from Section 1):

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "node",
          "args": ["/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"],
          "env": {
            "PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/wallet.json"
          }
        }
      }
    }
    

    With direct private key:

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "node",
          "args": ["/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"],
          "env": {
            "PRIVATE_KEY": "0xYOUR_PRIVATE_KEY"
          }
        }
      }
    }
    
  3. Restart Claude Desktop - You should see a plug icon for iexec-mcp-server


6. Method D: Docker Setup

Prerequisites:

  1. Open Claude Desktop configuration:
  • Open Claude Desktop → Developer > Edit Config
  1. Add configuration to claude_desktop_config.json:

    With wallet file (from Section 1):

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "docker",
          "args": [
            "run",
            "-i",
            "--rm",
            "--init",
            "-v",
            "/ABSOLUTE/PATH/TO/YOUR/KEYSTORE:/app/keystore",
            "-e",
            "PRIVATE_KEY_PATH=/app/keystore/wallet.json",
            "iexechub/mcp-server:latest"
          ]
        }
      }
    }
    

    With direct private key:

    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "docker",
          "args": [
            "run",
            "-i",
            "--rm",
            "--init",
            "-e",
            "PRIVATE_KEY=0xYOUR_PRIVATE_KEY",
            "iexechub/mcp-server:latest"
          ]
        }
      }
    }
    
  2. Restart Claude Desktop - You should see a plug icon for iexec-mcp-server


7. Method E: Cursor IDE Setup

Prerequisites:

  • Node.js (version 18 or higher)
  • npm (version 9 or higher)
  • Cursor IDE installed

Setup Steps:

7.1. Install iExec MCP Server

npm install -g @iexec/mcp-server

7.2. Configure Cursor

  1. Open Cursor Settings:

    • Press Cmd+, (macOS) or Ctrl+, (Windows/Linux)
    • Or go to Cursor > Preferences > Settings
  2. Search for "MCP" in settings:

    • Look for "Model Context Protocol" or "MCP" settings
  3. Add MCP Server Configuration:

    Option A: Using Settings UI (if available):

    • Add a new MCP server entry
    • Set the command to: @iexec/mcp-server
    • Add environment variables:
      • PRIVATE_KEY_PATH: /ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json
      • Or PRIVATE_KEY: 0xYOUR_PRIVATE_KEY

    Option B: Manual Configuration:

    • Open Cursor's configuration file (usually in user settings)
    • Add the following configuration:
    {
      "mcpServers": {
        "iexec-mcp-server": {
          "command": "npx",
          "args": ["-y", "@iexec/mcp-server@latest"],
          "env": {
            "PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json"
          }
        }
      }
    }
    

    Option C: Using Cursor's AI Features:

    • Open the AI chat panel in Cursor
    • Type: "Configure MCP server for iExec with private key path: /path/to/wallet.json"
    • Cursor should help you set up the configuration
  4. Restart Cursor - The iExec MCP server should now be available in your AI interactions

7.3. Alternative: Local Development Setup

If you prefer to run from source:

git clone https://github.com/iexecBlockchainComputing/iexec-mcp-server.git
cd iexec-mcp-server
npm install
npm run build

Then configure Cursor to use the local build:

{
  "mcpServers": {
    "iexec-mcp-server": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"],
      "env": {
        "PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/wallet.json"
      }
    }
  }
}

9. Available Tools & API

  • Confidential Data: protectData, getProtectedData, processProtectedData
  • Data Governance: grantAccess, revokeOneAccess, revokeAllAccess, transferOwnership, getGrantedAccess
  • Web3Mail: sendEmail, fetchMyContacts, fetchUserContacts
  • Wallet & Resources: getUserVoucher, getWalletBalance, getIExecApps

Full API docs: TOOLS.md


10. Example Prompts

  • "Please protect my email address alice@example.com with the name iexec-mcp-email-demo."
  • "List all protected data tied to my wallet."
  • "Grant access to protected data 0x123 for iExec app web3mail and user 0xUSER."
  • "Revoke access to protected data 0x123 for app web3mail and user 0xUSER."
  • "Revoke all access for protected data 0x123."
  • "Transfer the ownership of protected data 0x123 to 0x456."
  • "Send email to 0xrecipient with subject Update and message Access approved."
  • "List all my Web3mail contacts."
  • "What's my wallet balance on iExec?"
  • "Do I have a user voucher?"
  • "Run app 0xAPP on protected data 0xDATA."

11. Security & Best Practices

  • For production, use PRIVATE_KEY_PATH and keep your wallet file secure.
  • Never commit your private key or wallet file to source control.
  • The server runs locally; your private key is never sent externally.
  • Claude and other agents never access your key or raw data.

12. Help & Resources


13. Contributing

Contributions welcome! Open an issue or PR to suggest improvements.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured