Provides an MCP server to interact with the iexec protocol using private keys or keystore wallets for secure data governance and protected data operations.
Configuration
View docs{
"mcpServers": {
"iexecblockchaincomputing-iexec-mcp-server": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"
],
"env": {
"PRIVATE_KEY": "0xYOUR_PRIVATE_KEY",
"PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/wallet.json"
}
}
}
}You run the iExec MCP Server to interact with the iExec protocol through a self-hosted MCP endpoint. It lets you manage wallets, protect data, grant access, and run iExec-enabled applications from your local environment or within containers, while keeping sensitive keys securely on your host machine.
You use an MCP client to connect to the iExec MCP Server either locally (stdio) or via a remote HTTP endpoint. Start the MCP server with a locally configured wallet (private key or wallet file) and then configure your MCP client to point to that server. The server exposes tools for wallet management, data protection, access control, and app interaction, all through the MCP interface.
Prerequisites: Node.js 18+ and npm 9+. These are required for all installation methods.
Choose one installation method and follow the concrete steps below.
Prerequisites: Node.js 18+ and npm 9+. Claude Desktop.
1. Open Claude Desktop configuration and add a MCP server entry that uses npx to launch the MCP server.
2. Use wallet file configuration (wallet.json) by setting PRIVATE_KEY_PATH to the absolute path of your wallet file.
3. Or use a direct private key by setting PRIVATE_KEY to your private key value.
4. Restart Claude Desktop to recognize the new MCP server entry.
Prerequisites: Node.js 18+ and npm 9+.
1. Install the Claude Code CLI globally.
npm install -g @anthropic-ai/claude-code2. Add the iExec MCP server using either a wallet file or a private key.
claude mcp add iexec-mcp --env PRIVATE_KEY_PATH=/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json -- npx @iexec/mcp-server@latest iexec-mcpclaude mcp add iexec-mcp --env PRIVATE_KEY=0xYOUR_PRIVATE_KEY -- npx @iexec/mcp-server@latest iexec-mcp3. Run Claude to start using the MCP server.
Prerequisites: Node.js 18+, npm 9+, Git, and Claude Desktop.
5.1. Clone, install dependencies, and build the MCP server.
git clone https://github.com/iexecBlockchainComputing/iexec-mcp-server.git
cd iexec-mcp-server
npm install
npm run build5.2. Integrate with Claude Desktop by configuring the MCP server entry to run the built index.js.
{
"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"
}
}
}
}Prerequisites: Docker installed and Claude Desktop.
1. Open Claude Desktop and add a MCP server entry that runs the MCP server inside Docker.
2. Use a wallet file by mounting your keystore and setting PRIVATE_KEY_PATH to the mounted path.
3. Or set PRIVATE_KEY with your private key string.
3. Restart Claude Desktop to recognize the new MCP server entry.
Example run configuration when using wallet file (mounting the keystore):
```
{
"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"
]
}
}
}Prerequisites: Node.js 18+ and npm 9+; Cursor IDE installed.
7.1 Install the MCP server globally.
npm install -g @iexec/mcp-server7.2 Configure Cursor by adding an MCP server with either a wallet path or a private key.
{
"mcpServers": {
"iexec-mcp-server": {
"command": "npx",
"args": ["-y", "@iexec/mcp-server@latest"],
"env": {
"PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json"
}
}
}
}7.3 Alternative: manual Cursor configuration in settings.
7.3.1 Open Cursor Settings and search for MCP. Add a server entry with command npx and arguments -y @iexec/mcp-server@latest, and an environment variable for PRIVATE_KEY_PATH or PRIVATE_KEY.
7.3.2 Restart Cursor to enable the MCP server.
If you prefer running from source, clone, install, and build, then point your MCP client to the local build.
git clone https://github.com/iexecBlockchainComputing/iexec-mcp-server.git
cd iexec-mcp-server
npm install
npm run buildConfigure Cursor to use the local build by setting the MCP server to run the built index.
{
"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"
}
}
}
}The MCP server provides a set of tools to handle confidential data and access control, including data protection, access grants, and wallet-related queries. Specifically, you can call tools for protecting data, retrieving protected data, transferring ownership, and sending communications via Web3Mail, among others.
Ask the MCP server to protect an email address, manage access, or send a notification using the provided tools.
Use PRIVATE_KEY_PATH for production to keep your wallet file secure. Do not commit your wallet file or private keys to any version control. The server runs locally, so your private key stays on your machine and is not shared with Claude or other AI models.
Access iExec developer resources, join their Discord community, and learn more about MCP to maximize your usage.
Contributions are welcome. Open issues or pull requests to suggest improvements.
Protects data so it can be securely shared with authorized entities within the MCP framework.
Retrieves data that has been protected by the MCP system, enforcing access controls.
Processes protected data under defined governance and policy rules.
Grants access to protected data for specified apps or users.
Revokes access to protected data for a specific app or user.
Revokes all access to a protected data item.
Transfers ownership of protected data to another user or entity.
Queries which entities have been granted access to protected data.
Sends emails via Web3Mail related capabilities.
Fetches the contacts associated with your Web3Mail account.
Fetches contacts for a specific user within Web3Mail.
Retrieves user vouchers tied to wallet or account.
Checks the balance of the user wallet on iExec.
Lists iExec applications available to the user.