Back to Directory/Developer Tools

io.github.ExpertVagabond/solmail

Send physical mail with Solana cryptocurrency - AI agents can send real letters worldwide

Developer ToolsTypeScriptv1.0.2

:mailbox_with_mail: solmail-mcp

npm version License: MIT GitHub stars Solana

Send real physical mail using Solana cryptocurrency from your AI agent. A Model Context Protocol server that enables Claude and other AI agents to send physical letters and postcards to real addresses worldwide, paid with SOL. Built for the Colosseum Agent Hackathon (#47).

Install

npx solmail-mcp@latest

Add to your MCP config:

{
  "mcpServers": {
    "solmail": {
      "command": "npx",
      "args": ["-y", "solmail-mcp"],
      "env": {
        "SOLANA_NETWORK": "devnet",
        "SOLANA_PRIVATE_KEY": "your_base58_private_key"
      }
    }
  }
}

Features

  • Physical Mail -- Letters printed and mailed to 200+ countries via Lob.com
  • Solana Payments -- Pay with SOL on devnet (testing) or mainnet (production)
  • Non-Custodial -- Direct wallet control, no intermediaries
  • AI-Native -- Built specifically for MCP agent integration
  • Demo Mode -- Test with devnet SOL and Lob test API at zero cost

Tools (4)

ToolDescription
get_mail_quoteGet price quote for sending mail (country, color options)
send_mailSend a physical letter with Solana payment
get_wallet_balanceCheck agent wallet SOL balance
get_wallet_addressGet wallet address for funding

Usage Example

You: Send a thank you note to John Doe at 123 Main St, San Francisco, CA 94102

Claude: [calls get_mail_quote] Cost: $1.50 (~0.015 SOL) for domestic US mail
        [calls send_mail] Letter sent!
          Letter ID: ltr_abc123
          Tracking: 9400000000000000000000
          Payment: 0.015 SOL (tx: 5j7s...)
          Delivery: 3-5 business days

How It Works

Agent composes letter --> MCP validates address --> Solana tx signed
    --> Payment sent to merchant --> SolMail verifies on-chain
    --> Lob.com prints letter --> USPS delivers --> Tracking returned

Pricing

TypePriceSOL (at $100/SOL)
US Domestic$1.50~0.015 SOL
International$2.50~0.025 SOL
Color printing+$0.50+0.005 SOL
Solana tx fee~$0.00025~0.0000025 SOL

Configuration

VariableRequiredDescription
SOLANA_PRIVATE_KEYYesAgent wallet private key (base58)
SOLANA_NETWORKNodevnet (default) or mainnet-beta
SOLMAIL_API_URLNoAPI endpoint (default: https://solmail.online/api)
MERCHANT_WALLETNoCustom payment destination

Important: Create a dedicated wallet with limited funds for AI agents. Never use your primary wallet.

Development

npm install && npm run build
npm run dev    # Watch mode
npm start      # Production

Related Projects

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/my-feature)
  3. Commit your changes
  4. Open a Pull Request

Links

License

MIT -- Purple Squirrel Media

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y solmail-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-expertvagabond-solmail": {
      "command": "npx",
      "args": [
        "-y",
        "solmail-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

solmail-mcpnpm

Compatible MCP Clients

io.github.ExpertVagabond/solmail works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More