iExecBlockchainComputing/iexec-mcp-server
If you are the rightful owner of iexec-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The iExec MCP Server is a Model Context Protocol (MCP) compatible server designed to interact with the iExec protocol, facilitating integration with Claude, agents, and AI tooling.
protectData
Protects confidential data.
getProtectedData
Retrieves protected data.
processProtectedData
Processes protected data.
grantAccess
Grants access to protected data.
revokeOneAccess
Revokes access for a specific user or app.
revokeAllAccess
Revokes all access to protected data.
transferOwnership
Transfers ownership of protected data.
getGrantedAccess
Lists all granted access permissions.
sendEmail
Sends an email via Web3Mail.
fetchMyContacts
Fetches the user's Web3Mail contacts.
fetchUserContacts
Fetches contacts for a specific user.
getUserVoucher
Retrieves the user's voucher.
getWalletBalance
Checks the wallet balance.
getIExecApps
Lists available iExec apps.
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 |
3. Method A: NPX Configuration for Claude Desktop
Prerequisites:
- Node.js (version 18 or higher)
- npm (version 9 or higher)
- Claude Desktop
Setup Steps:
-
Open Claude Desktop configuration:
- Open Claude Desktop → Developer > Edit Config
-
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" } } } }
-
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:
-
Install Claude Code CLI:
npm install -g @anthropic-ai/claude-code
-
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
-
Run Claude:
claude
5. Method C: Local Node.js Setup
Prerequisites:
- Node.js (version 18 or higher)
- npm (version 9 or higher)
- Git
- Claude Desktop
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
-
Open Claude Desktop configuration:
- Open Claude Desktop → Developer > Edit Config
-
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" } } } }
-
Restart Claude Desktop - You should see a plug icon for
iexec-mcp-server
6. Method D: Docker Setup
Prerequisites:
- Docker installed
- Claude Desktop
- Open Claude Desktop configuration:
- Open Claude Desktop → Developer > Edit Config
-
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" ] } } }
-
Restart Claude Desktop - You should see a plug icon for
iexec-mcp-server
7. 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:
8. Example Prompts
- "Please protect my email address
alice@example.com
with the nameiexec-mcp-email-demo
." - "List all protected data tied to my wallet."
- "Grant access to protected data
0x123
for iExec appweb3mail
and user0xUSER
." - "Revoke access to protected data
0x123
for appweb3mail
and user0xUSER
." - "Revoke all access for protected data
0x123
." - "Transfer the ownership of protected data
0x123
to0x456
." - "Send email to
0xrecipient
with subjectUpdate
and messageAccess approved
." - "List all my Web3mail contacts."
- "What's my wallet balance on iExec?"
- "Do I have a user voucher?"
- "Run app
0xAPP
on protected data0xDATA
."
9. 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.
10. Help & Resources
11. Contributing
Contributions welcome! Open an issue or PR to suggest improvements.