- Home
- MCP servers
- iExec
iExec
- javascript
1
GitHub Stars
javascript
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
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.
How to use
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.
How to install
Prerequisites: Node.js 18+ and npm 9+. These are required for all installation methods.
Choose one installation method and follow the concrete steps below.
Method A: NPX Configuration for Claude Desktop
Prerequisites: Node.js 18+ and npm 9+. Claude Desktop.
-
Open Claude Desktop configuration and add a MCP server entry that uses npx to launch the MCP server.
-
Use wallet file configuration (wallet.json) by setting PRIVATE_KEY_PATH to the absolute path of your wallet file.
-
Or use a direct private key by setting PRIVATE_KEY to your private key value.
-
Restart Claude Desktop to recognize the new MCP server entry.
Method B: Claude Code CLI Setup
Prerequisites: Node.js 18+ and npm 9+.
- Install the Claude Code CLI globally.
npm install -g @anthropic-ai/claude-code
- 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-mcp
claude mcp add iexec-mcp --env PRIVATE_KEY=0xYOUR_PRIVATE_KEY -- npx @iexec/mcp-server@latest iexec-mcp
- Run Claude to start using the MCP server.
Method C: Local Node.js Setup
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 build
5.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"
}
}
}
}
Method D: Docker Setup
Prerequisites: Docker installed and Claude Desktop.
-
Open Claude Desktop and add a MCP server entry that runs the MCP server inside Docker.
-
Use a wallet file by mounting your keystore and setting PRIVATE_KEY_PATH to the mounted path.
-
Or set PRIVATE_KEY with your private key string.
-
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" ] } } }
## Method E: Cursor IDE Setup
Prerequisites: Node.js 18+ and npm 9+; Cursor IDE installed.
7.1 Install the MCP server globally.
npm install -g @iexec/mcp-server
7.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.
## 7. Alternative: Local development setup
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 build
Configure 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" } } } }
## 9. Available Tools & API
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.
## 10. Example Prompts
Ask the MCP server to protect an email address, manage access, or send a notification using the provided tools.
## 11. Security & Best Practices
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.
## 12. Help & Resources
Access iExec developer resources, join their Discord community, and learn more about MCP to maximize your usage.
## 13. Contributing
Contributions are welcome. Open issues or pull requests to suggest improvements.
## Available tools
### protectData
Protects data so it can be securely shared with authorized entities within the MCP framework.
### getProtectedData
Retrieves data that has been protected by the MCP system, enforcing access controls.
### processProtectedData
Processes protected data under defined governance and policy rules.
### grantAccess
Grants access to protected data for specified apps or users.
### revokeOneAccess
Revokes access to protected data for a specific app or user.
### revokeAllAccess
Revokes all access to a protected data item.
### transferOwnership
Transfers ownership of protected data to another user or entity.
### getGrantedAccess
Queries which entities have been granted access to protected data.
### sendEmail
Sends emails via Web3Mail related capabilities.
### fetchMyContacts
Fetches the contacts associated with your Web3Mail account.
### fetchUserContacts
Fetches contacts for a specific user within Web3Mail.
### getUserVoucher
Retrieves user vouchers tied to wallet or account.
### getWalletBalance
Checks the balance of the user wallet on iExec.
### getIExecApps
Lists iExec applications available to the user.