Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .github/workflows/publish-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Publish Docker Image

on:
release:
types: [published]

jobs:
publish:
uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/[email protected]
with:
dockerfile: "Dockerfile"
image-name: "iexec/mcp-server"
secrets:
dockerhub-username: ${{ secrets.dockerhub_user }}
dockerhub-pat: ${{ secrets.dockerhub-pat }}
11 changes: 11 additions & 0 deletions .github/workflows/publish-npm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Publish NPM Package

on:
release:
types: [published]

jobs:
publish:
uses: iExecBlockchainComputing/github-actions-workflows/.github/workflows/[email protected]
secrets:
npm-token: ${{ secrets.npm-token }}
71 changes: 0 additions & 71 deletions .github/workflows/publish.yml

This file was deleted.

60 changes: 24 additions & 36 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@

## 1. Wallet Setup

**Prerequisites:**

- [Node.js](https://nodejs.org/) (version 18 or higher)
- npm (version 9 or higher)

**Option 1: Create a new wallet with iExec**

```bash
Expand All @@ -28,6 +33,8 @@ Find your wallet at:
```
- 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:
Expand Down Expand Up @@ -64,9 +71,9 @@ Complete the **Wallet Setup** above, then choose your preferred installation met
"mcpServers": {
"iexec-mcp-server": {
"command": "npx",
"args": ["-y", "@paypes/mcp-server@latest"],
"args": ["-y", "@iexec/mcp-server@latest"],
"env": {
"PRIVATE_KEY_PATH": "/absolute/path/to/wallet.json"
"PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json"
}
}
}
Expand All @@ -80,7 +87,7 @@ Complete the **Wallet Setup** above, then choose your preferred installation met
"mcpServers": {
"iexec-mcp-server": {
"command": "npx",
"args": ["-y", "@paypes/mcp-server@latest"],
"args": ["-y", "@iexec/mcp-server@latest"],
"env": {
"PRIVATE_KEY": "0xYOUR_PRIVATE_KEY"
}
Expand Down Expand Up @@ -113,13 +120,13 @@ Complete the **Wallet Setup** above, then choose your preferred installation met
_With wallet file (from Section 1):_

```bash
claude mcp add iexec-mcp --env PRIVATE_KEY_PATH=~/Library/Ethereum/keystore/wallet.json -- npx @paypes/mcp-server@latest run
claude mcp add iexec-mcp --env PRIVATE_KEY_PATH=/ABSOLUTE/PATH/TO/YOUR/KEYSTORE/wallet.json -- npx @iexec/mcp-server@latest run
```

_With direct private key:_

```bash
claude mcp add iexec-mcp --env PRIVATE_KEY=0xYOUR_PRIVATE_KEY -- npx @paypes/mcp-server@latest run
claude mcp add iexec-mcp --env PRIVATE_KEY=0xYOUR_PRIVATE_KEY -- npx @iexec/mcp-server@latest run
```

3. **Run Claude:**
Expand All @@ -136,26 +143,23 @@ Complete the **Wallet Setup** above, then choose your preferred installation met
- [Node.js](https://nodejs.org/) (version 18 or higher)
- npm (version 9 or higher)
- [Git](https://git-scm.com/)
- [Claude Desktop](https://claude.ai/download) (optional)
- [Claude Desktop](https://claude.ai/download)

**Setup Steps:**

### 5.1. Clone, Install, and Build

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

> All configuration (PRIVATE_KEY_PATH or PRIVATE_KEY) is set in the Claude config, not as shell variables.

### 5.2. Integrate with Claude Desktop (Optional)
### 5.2. Integrate with Claude Desktop

1. **Open Claude Desktop configuration:**

- Download and install [Claude Desktop](https://claude.ai/download) if you haven't already
- Open Claude Desktop → **Developer > Edit Config**

2. **Add configuration to `claude_desktop_config.json`:**
Expand All @@ -167,9 +171,9 @@ npm run build
"mcpServers": {
"iexec-mcp-server": {
"command": "node",
"args": ["/absolute/path/to/iexec-mcp-server/build/index.js"],
"args": ["/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"],
"env": {
"PRIVATE_KEY_PATH": "/absolute/path/to/wallet.json"
"PRIVATE_KEY_PATH": "/ABSOLUTE/PATH/TO/wallet.json"
}
}
}
Expand All @@ -183,7 +187,7 @@ npm run build
"mcpServers": {
"iexec-mcp-server": {
"command": "node",
"args": ["/absolute/path/to/iexec-mcp-server/build/index.js"],
"args": ["/ABSOLUTE/PATH/TO-IEXEC-MCP-SERVER-REPO/build/index.js"],
"env": {
"PRIVATE_KEY": "0xYOUR_PRIVATE_KEY"
}
Expand All @@ -201,29 +205,11 @@ npm run build
**Prerequisites:**

- [Docker](https://www.docker.com/get-started) installed
- [Claude Desktop](https://claude.ai/download) (optional)

**Setup Steps:**

### 6.1. Run the Server with Docker

_With wallet file (from Section 1):_

```bash
docker run -i --rm --init -e PRIVATE_KEY_PATH=/absolute/path/to/wallet.json iexec/mcp-server:latest
```

_With direct private key:_

```bash
docker run -i --rm --init -e PRIVATE_KEY=0xYOUR_PRIVATE_KEY iexec/mcp-server:latest
```

### 6.2. Integrate with Claude Desktop (Optional)
- [Claude Desktop](https://claude.ai/download)

1. **Open Claude Desktop configuration:**

- Open Claude Desktop → **Developer > Edit Config**
- Open Claude Desktop → **Developer > Edit Config**

2. **Add configuration to `claude_desktop_config.json`:**

Expand All @@ -239,9 +225,11 @@ docker run -i --rm --init -e PRIVATE_KEY=0xYOUR_PRIVATE_KEY iexec/mcp-server:lat
"-i",
"--rm",
"--init",
"-v",
"/ABSOLUTE/PATH/TO/YOUR/KEYSTORE:/app/keystore",
"-e",
"PRIVATE_KEY_PATH=/absolute/path/to/wallet.json",
"iexec/mcp-server:latest"
"PRIVATE_KEY_PATH=/app/keystore/wallet.json",
"iexechub/mcp-server:latest"
]
}
}
Expand Down
8 changes: 6 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 23 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,19 +1,31 @@
{
"name": "@paypes/mcp-server",
"name": "@iexec/mcp-server",
"version": "0.1.0-alpha.1",
"description": "MCP server for interacting with iExec Blockchain",
"description": "iExec MCP Server - Model Context Protocol server for iExec blockchain confidential computing",
"keywords": [
"mcp",
"iExec",
"blockchain",
"confidential-computing",
"web3mail",
"dataprotector"
],
"author": "iExec Team",
"homepage": "https://github.com/iExecBlockchainComputing/iexec-mcp-server",
"repository": {
"type": "git",
"url": "git+https://github.com/iExecBlockchainComputing/iexec-mcp-server.git"
},
"bugs": {
"url": "https://github.com/iExecBlockchainComputing/iexec-mcp-server/issues"
},
"type": "module",
"main": "build/index.js",
"types": "build/index.d.ts",
"bin": {
"mcp-server": "build/index.js",
"run": "build/index.js"
},
"homepage": "https://github.com/iExecBlockchainComputing/iexec-mcp-server",
"repository": {
"type": "git",
"url": "git+https://github.com/iExecBlockchainComputing/iexec-mcp-server.git"
},
"files": [
"build",
"README.md",
Expand All @@ -26,6 +38,10 @@
"run": "node build/index.js",
"inspector": "npx @modelcontextprotocol/inspector build/index.js"
},
"engines": {
"node": ">=18.0.0",
"npm": ">=9.0.0"
},
"license": "MIT",
"dependencies": {
"@iexec/dataprotector": "^2.0.0-beta.15",
Expand Down
2 changes: 1 addition & 1 deletion release-please-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"packages": {
".": {
"release-type": "node",
"package-name": "@paypes/mcp-server",
"package-name": "@iexec/mcp-server",
"component": "",
"changelog-sections": [
{ "type": "feat", "section": "Features" },
Expand Down