Cryptocurrency Daemon MCP Server
by raw391
# Cryptocurrency Daemon MCP Server (BETA)
[](https://smithery.ai/server/@raw391/coin_daemon_mcp)
A Model Context Protocol (MCP) server for interacting with cryptocurrency daemon RPC interfaces. This server enables AI assistants to help manage and interact with cryptocurrency nodes in a controlled manner.
⚠️ **IMPORTANT SECURITY WARNING** ⚠️
This software allows AI systems to interact with cryptocurrency daemons. Please read this warning carefully:
1. Running this MCP server gives AI systems the ability to:
- Send transactions
- Access wallet information
- Modify wallet settings
- View private data
- Execute daemon commands
2. Potential risks include:
- Loss of funds through unauthorized transactions
- Exposure of private information
- Unintended wallet or daemon modifications
- Potential security vulnerabilities if improperly configured
3. Required Safety Measures:
- Use a separate wallet with limited funds for AI interactions
- Never give access to wallets containing significant value
- Configure strict RPC permissions
- Monitor all AI interactions with the daemon
- Regular security audits of configurations
- Keep backups of all important data
**This software is in BETA. Use at your own risk.**
## Installation
### Installing via Smithery
To install Cryptocurrency Daemon Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@raw391/coin_daemon_mcp):
```bash
npx -y @smithery/cli install @raw391/coin_daemon_mcp --client claude
```
### 1. Install the Package
You can install the package via npm:
```bash
npm install @raw391/coin-daemon-mcp
```
### 2. Configure Claude Desktop
To use this MCP with Claude Desktop, you'll need to modify your Claude Desktop configuration. The configuration file is located at:
- Windows: %APPDATA%\\Claude\\claude_desktop_config.json
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Add the following to your configuration:
```json
{
"mcpServers": {
"cryptocurrency": {
"command": "npx",
"args": [
"-y",
"@raw391/coin-daemon-mcp"
],
"env": {
"CONFIG_PATH": "path/to/your/config.json"
}
}
}
}
```
### 3. Create Configuration File
Create a configuration file for your cryptocurrency daemons. Here are some example configurations:
#### Basic Single Daemon Configuration
```json
{
"daemons": [
{
"coinName": "zcash",
"nickname": "zec-main",
"rpcEndpoint": "127.0.0.1:8232",
"rpcUser": "your-rpc-user",
"rpcPassword": "your-rpc-password"
}
]
}
```
#### Multiple Daemons Configuration
```json
{
"daemons": [
{
"coinName": "zcash",
"nickname": "zec-main",
"rpcEndpoint": "127.0.0.1:8232",
"rpcUser": "zec-user",
"rpcPassword": "zec-password"
},
{
"coinName": "bitcoin",
"nickname": "btc-main",
"rpcEndpoint": "127.0.0.1:8332",
"rpcUser": "btc-user",
"rpcPassword": "btc-password"
}
]
}
```
#### Advanced Configuration with Data Directory
For best security practices, you might want to also use a file system MCP to manage daemon data. Here's how to configure both together:
```json
{
"mcpServers": {
"cryptocurrency": {
"command": "npx",
"args": [
"-y",
"@raw391/coin-daemon-mcp"
],
"env": {
"CONFIG_PATH": "C:/CryptoConfig/daemon-config.json"
}
},
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"C:/CryptoData"
]
}
}
}
```
### 4. Configure Your Cryptocurrency Daemon
Make sure your cryptocurrency daemon's configuration file (e.g., zcash.conf, bitcoin.conf) has the appropriate RPC settings:
```ini
server=1
rpcuser=your-rpc-user
rpcpassword=your-rpc-password
rpcallowip=127.0.0.1
```
### 5. Start Using the MCP
After configuration, restart Claude Desktop. You should see new tools, resources, and prompts available for:
- Sending transactions
- Checking balances
- Managing wallets
- Monitoring daemon status
- Learning about cryptocurrencies
- And more
## MCP Features
The server provides three types of MCP capabilities:
### Tools
1. Transaction Management
- `send-coins`: Send transparent transactions
- `zsend-coins`: Send shielded transactions (for privacy coins)
- `shield-coins`: Convert transparent to shielded funds
2. Wallet Operations
- `get-balance`: Check balances
- `execute-command`: Execute any supported RPC command
3. Daemon Management
- `check-status`: Get daemon information
### Resources
Access valuable data and documentation:
1. Documentation Resources
- `crypto://{coinType}/help`: Get detailed documentation for specific cryptocurrencies
- `daemon://{name}/help`: Get help text specific to a daemon
2. Transaction History
- `daemon://{name}/transactions`: View recent transaction history
### Prompts
Pre-built templates for common workflows:
1. Transaction Guidance
- `send-transaction-template`: Generate a guided prompt for constructing transactions
2. Analysis Templates
- `balance-analysis`: Analyze wallet balances and fund distribution
- `daemon-diagnostic`: Perform a health check of a daemon
## Security Best Practices
1. Separate Wallets
- Create dedicated wallets for AI interactions
- Keep minimal funds in accessible wallets
- Use test networks for development
2. RPC Security
- Use strong, unique RPC credentials
- Enable only necessary RPC commands
- Restrict RPC access to localhost
- Monitor RPC logs
3. Data Management
- Regular wallet backups
- Secure storage of configuration files
- Monitoring of all transactions
- Regular security audits
## Example Usage
Here's how Claude can help with common tasks:
1. Checking Status:
"What's the current status of the Zcash daemon?"
2. Managing Balances:
"What's my current balance across all addresses?"
3. Learning About Cryptocurrencies:
"Can you explain how Zcash shielded transactions work?"
4. Sending Transactions:
"Can you help me send 0.1 ZEC to address xxx?"
## Troubleshooting
1. Connection Issues
- Verify daemon is running
- Check RPC credentials
- Ensure correct port numbers
- Verify localhost access
2. Permission Problems
- Check file permissions
- Verify RPC user rights
- Ensure correct configuration paths
3. Transaction Issues
- Verify sufficient funds
- Check network connectivity
- Ensure daemon is synced
## Support
- GitHub Issues: Bug reports and feature requests
- Discussions: General questions and community support
- Security Issues: Email security@pooly.ca
## License
MIT License with additional cryptocurrency operations disclaimer. See [LICENSE](LICENSE) for details.
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.