# Para Wallet MCP Server
An MCP (Model Context Protocol) server that wraps Para's REST API, giving AI agents wallet creation and signing capabilities via MPC (Multi-Party Computation).
## Tools
| Tool | Purpose |
|------|---------|
| `create_wallet` | Create an MPC wallet (EVM, Solana, Cosmos) |
| `get_wallet` | Get wallet status and address |
| `sign_raw` | Sign 0x-hex data via MPC |
| `list_wallets` | Batch-fetch multiple wallets by ID |
| `wait_for_wallet_ready` | Poll until wallet is ready after creation |
## Setup
1. Get a Para API key at [developer.getpara.com](https://developer.getpara.com)
2. Allowlist your server IP in the Para dashboard
3. Clone and install:
```bash
git clone https://github.com/adeets-22/para-wallet-mcp.git
cd para-wallet-mcp
npm install
npm run build
```
4. Copy `.env.example` to `.env` and add your API key:
```bash
cp .env.example .env
```
## MCP Client Configuration
Add to your MCP client config (e.g. Claude Desktop `claude_desktop_config.json`):
```json
{
"mcpServers": {
"para-wallet": {
"command": "node",
"args": ["/path/to/para-wallet-mcp/dist/index.js"],
"env": {
"PARA_API_KEY": "your_api_key_here"
}
}
}
}
```
Or for development with `tsx`:
```json
{
"mcpServers": {
"para-wallet": {
"command": "npx",
"args": ["tsx", "/path/to/para-wallet-mcp/src/index.ts"],
"env": {
"PARA_API_KEY": "your_api_key_here"
}
}
}
}
```
## Development
```bash
npm run dev # Watch mode with tsx
npm run build # Compile TypeScript
npm start # Run compiled server
```
## Example Workflow
```
create_wallet(type: "EVM", userIdentifier: "alice@example.com", userIdentifierType: "EMAIL")
→ wallet.id = "abc-123", status = "creating"
wait_for_wallet_ready(walletId: "abc-123")
→ status = "ready", address = "0x742d..."
sign_raw(walletId: "abc-123", data: "0x48656c6c6f")
→ signature = "a1b2c3..."
```
## License
MIT